imgtools/imglib/boostlibrary/boost/system/cygwin_error.hpp
changeset 600 6d08f4a05d93
equal deleted inserted replaced
599:fa7a3cc6effd 600:6d08f4a05d93
       
     1 //  boost/system/cygwin_error.hpp  -------------------------------------------//
       
     2 
       
     3 //  Copyright Beman Dawes 2007
       
     4 
       
     5 //  Distributed under the Boost Software License, Version 1.0. (See accompanying
       
     6 //  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       
     7 
       
     8 //  See library home page at http://www.boost.org/libs/system
       
     9 
       
    10 #ifndef BOOST_CYGWIN_ERROR_HPP
       
    11 #define BOOST_CYGWIN_ERROR_HPP
       
    12 
       
    13 //  This header is effectively empty for compiles on operating systems where
       
    14 //  it is not applicable.
       
    15 
       
    16 # ifdef __CYGWIN__
       
    17 
       
    18 #include <boost/system/error_code.hpp>
       
    19 
       
    20 namespace boost
       
    21 {
       
    22   namespace system
       
    23   {
       
    24     //  To construct an error_code after a API error:
       
    25     //
       
    26     //      error_code( errno, system_category )
       
    27 
       
    28     //  User code should use the portable "posix" enums for POSIX errors; this
       
    29     //  allows such code to be portable to non-POSIX systems. For the non-POSIX
       
    30     //  errno values that POSIX-based systems typically provide in addition to 
       
    31     //  POSIX values, use the system specific enums below.
       
    32 
       
    33    namespace cygwin_error
       
    34     {
       
    35       enum cygwin_errno
       
    36       {
       
    37         no_net = ENONET,
       
    38         no_package = ENOPKG,
       
    39         no_share = ENOSHARE
       
    40       };
       
    41     }  // namespace cygwin_error
       
    42 
       
    43     template<> struct is_error_code_enum<cygwin_error::cygwin_errno>
       
    44       { static const bool value = true; };
       
    45 
       
    46     namespace cygwin_error
       
    47     {
       
    48       inline error_code make_error_code( cygwin_errno e )
       
    49         { return error_code( e, get_system_category() ); }
       
    50     }
       
    51   }
       
    52 }
       
    53 
       
    54 #endif  // __CYGWIN__
       
    55 
       
    56 #endif  // BOOST_CYGWIN_ERROR_HPP