New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
errinfo_errno.hpp in vendors/XIOS/current/extern/boost/include/boost/exception – NEMO

source: vendors/XIOS/current/extern/boost/include/boost/exception/errinfo_errno.hpp @ 3428

Last change on this file since 3428 was 3428, checked in by rblod, 12 years ago

importing initial XIOS vendor drop

File size: 1.2 KB
Line 
1//Copyright (c) 2006-2009 Emil Dotchevski and Reverge Studios, Inc.
2
3//Distributed under the Boost Software License, Version 1.0. (See accompanying
4//file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6#ifndef UUID_F0EE17BE6C1211DE87FF459155D89593
7#define UUID_F0EE17BE6C1211DE87FF459155D89593
8#if defined(__GNUC__) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
9#pragma GCC system_header
10#endif
11#if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
12#pragma warning(push,1)
13#endif
14
15#include "boost/exception/info.hpp"
16#include <errno.h>
17#include <string.h>
18
19namespace
20boost
21    {
22    typedef error_info<struct errinfo_errno_,int> errinfo_errno;
23
24    //Usage hint:
25    //if( c_function(....)!=0 )
26    //    BOOST_THROW_EXCEPTION(
27    //        failure() <<
28    //        errinfo_errno(errno) <<
29    //        errinfo_api_function("c_function") );
30    inline
31    std::string
32    to_string( errinfo_errno const & e )
33        {
34        std::ostringstream tmp;
35        int v=e.value();
36        tmp << v << ", \"" << strerror(v) << "\"";
37        return tmp.str();
38        }
39    }
40
41#if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
42#pragma warning(pop)
43#endif
44#endif
Note: See TracBrowser for help on using the repository browser.