// boost/system/cygwin_error.hpp -------------------------------------------// | |
// Copyright Beman Dawes 2007 | |
// Distributed under the Boost Software License, Version 1.0. (See accompanying | |
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
// See library home page at http://www.boost.org/libs/system | |
#ifndef BOOST_CYGWIN_ERROR_HPP | |
#define BOOST_CYGWIN_ERROR_HPP | |
// This header is effectively empty for compiles on operating systems where | |
// it is not applicable. | |
# ifdef __CYGWIN__ | |
#include <boost/system/error_code.hpp> | |
namespace boost | |
{ | |
namespace system | |
{ | |
// To construct an error_code after a API error: | |
// | |
// error_code( errno, system_category() ) | |
// User code should use the portable "posix" enums for POSIX errors; this | |
// allows such code to be portable to non-POSIX systems. For the non-POSIX | |
// errno values that POSIX-based systems typically provide in addition to | |
// POSIX values, use the system specific enums below. | |
namespace cygwin_error | |
{ | |
enum cygwin_errno | |
{ | |
no_net = ENONET, | |
no_package = ENOPKG, | |
no_share = ENOSHARE | |
}; | |
} // namespace cygwin_error | |
template<> struct is_error_code_enum<cygwin_error::cygwin_errno> | |
{ static const bool value = true; }; | |
namespace cygwin_error | |
{ | |
inline error_code make_error_code( cygwin_errno e ) | |
{ return error_code( e, system_category() ); } | |
} | |
} | |
} | |
#endif // __CYGWIN__ | |
#endif // BOOST_CYGWIN_ERROR_HPP |