summaryrefslogtreecommitdiff
path: root/src/third_party/boost-1.56.0/boost/interprocess/errors.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/third_party/boost-1.56.0/boost/interprocess/errors.hpp')
-rw-r--r--src/third_party/boost-1.56.0/boost/interprocess/errors.hpp237
1 files changed, 0 insertions, 237 deletions
diff --git a/src/third_party/boost-1.56.0/boost/interprocess/errors.hpp b/src/third_party/boost-1.56.0/boost/interprocess/errors.hpp
deleted file mode 100644
index d829c81b549..00000000000
--- a/src/third_party/boost-1.56.0/boost/interprocess/errors.hpp
+++ /dev/null
@@ -1,237 +0,0 @@
-//////////////////////////////////////////////////////////////////////////////
-//
-// (C) Copyright Ion Gaztanaga 2005-2012. 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 http://www.boost.org/libs/interprocess for documentation.
-//
-// Parts of this code are taken from boost::filesystem library
-//
-//////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (C) 2002 Beman Dawes
-// Copyright (C) 2001 Dietmar Kuehl
-// Use, modification, and distribution is subject to 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/filesystem
-//
-//////////////////////////////////////////////////////////////////////////////
-
-
-#ifndef BOOST_INTERPROCESS_ERRORS_HPP
-#define BOOST_INTERPROCESS_ERRORS_HPP
-
-#if defined(_MSC_VER)
-# pragma once
-#endif
-
-#include <boost/interprocess/detail/config_begin.hpp>
-#include <boost/interprocess/detail/workaround.hpp>
-#include <stdarg.h>
-#include <string>
-
-#if defined (BOOST_INTERPROCESS_WINDOWS)
-# include <boost/interprocess/detail/win32_api.hpp>
-#else
-# ifdef BOOST_HAS_UNISTD_H
-# include <errno.h> //Errors
-# include <cstring> //strerror
-# else //ifdef BOOST_HAS_UNISTD_H
-# error Unknown platform
-# endif //ifdef BOOST_HAS_UNISTD_H
-#endif //#if defined (BOOST_INTERPROCESS_WINDOWS)
-
-//!\file
-//!Describes the error numbering of interprocess classes
-
-namespace boost {
-namespace interprocess {
-/// @cond
-inline int system_error_code() // artifact of POSIX and WINDOWS error reporting
-{
- #if defined (BOOST_INTERPROCESS_WINDOWS)
- return winapi::get_last_error();
- #else
- return errno; // GCC 3.1 won't accept ::errno
- #endif
-}
-
-
-#if defined (BOOST_INTERPROCESS_WINDOWS)
-inline void fill_system_message(int sys_err_code, std::string &str)
-{
- void *lpMsgBuf;
- winapi::format_message(
- winapi::format_message_allocate_buffer |
- winapi::format_message_from_system |
- winapi::format_message_ignore_inserts,
- 0,
- sys_err_code,
- winapi::make_lang_id(winapi::lang_neutral, winapi::sublang_default), // Default language
- reinterpret_cast<char *>(&lpMsgBuf),
- 0,
- 0
- );
- str += static_cast<const char*>(lpMsgBuf);
- winapi::local_free( lpMsgBuf ); // free the buffer
- while ( str.size()
- && (str[str.size()-1] == '\n' || str[str.size()-1] == '\r') )
- str.erase( str.size()-1 );
-}
-# else
-inline void fill_system_message( int system_error, std::string &str)
-{ str = std::strerror(system_error); }
-# endif
-/// @endcond
-
-enum error_code_t
-{
- no_error = 0,
- system_error, // system generated error; if possible, is translated
- // to one of the more specific errors below.
- other_error, // library generated error
- security_error, // includes access rights, permissions failures
- read_only_error,
- io_error,
- path_error,
- not_found_error,
-// not_directory_error,
- busy_error, // implies trying again might succeed
- already_exists_error,
- not_empty_error,
- is_directory_error,
- out_of_space_error,
- out_of_memory_error,
- out_of_resource_error,
- lock_error,
- sem_error,
- mode_error,
- size_error,
- corrupted_error,
- not_such_file_or_directory,
- invalid_argument,
- timeout_when_locking_error,
- timeout_when_waiting_error,
- owner_dead_error
-};
-
-typedef int native_error_t;
-
-/// @cond
-struct ec_xlate
-{
- native_error_t sys_ec;
- error_code_t ec;
-};
-
-static const ec_xlate ec_table[] =
-{
- #if defined (BOOST_INTERPROCESS_WINDOWS)
- { /*ERROR_ACCESS_DENIED*/5L, security_error },
- { /*ERROR_INVALID_ACCESS*/12L, security_error },
- { /*ERROR_SHARING_VIOLATION*/32L, security_error },
- { /*ERROR_LOCK_VIOLATION*/33L, security_error },
- { /*ERROR_LOCKED*/212L, security_error },
- { /*ERROR_NOACCESS*/998L, security_error },
- { /*ERROR_WRITE_PROTECT*/19L, read_only_error },
- { /*ERROR_NOT_READY*/21L, io_error },
- { /*ERROR_SEEK*/25L, io_error },
- { /*ERROR_READ_FAULT*/30L, io_error },
- { /*ERROR_WRITE_FAULT*/29L, io_error },
- { /*ERROR_CANTOPEN*/1011L, io_error },
- { /*ERROR_CANTREAD*/1012L, io_error },
- { /*ERROR_CANTWRITE*/1013L, io_error },
- { /*ERROR_DIRECTORY*/267L, path_error },
- { /*ERROR_INVALID_NAME*/123L, path_error },
- { /*ERROR_FILE_NOT_FOUND*/2L, not_found_error },
- { /*ERROR_PATH_NOT_FOUND*/3L, not_found_error },
- { /*ERROR_DEV_NOT_EXIST*/55L, not_found_error },
- { /*ERROR_DEVICE_IN_USE*/2404L, busy_error },
- { /*ERROR_OPEN_FILES*/2401L, busy_error },
- { /*ERROR_BUSY_DRIVE*/142L, busy_error },
- { /*ERROR_BUSY*/170L, busy_error },
- { /*ERROR_FILE_EXISTS*/80L, already_exists_error },
- { /*ERROR_ALREADY_EXISTS*/183L, already_exists_error },
- { /*ERROR_DIR_NOT_EMPTY*/145L, not_empty_error },
- { /*ERROR_HANDLE_DISK_FULL*/39L, out_of_space_error },
- { /*ERROR_DISK_FULL*/112L, out_of_space_error },
- { /*ERROR_OUTOFMEMORY*/14L, out_of_memory_error },
- { /*ERROR_NOT_ENOUGH_MEMORY*/8L, out_of_memory_error },
- { /*ERROR_TOO_MANY_OPEN_FILES*/4L, out_of_resource_error },
- { /*ERROR_INVALID_ADDRESS*/487L, busy_error }
- #else //#if defined (BOOST_INTERPROCESS_WINDOWS)
- { EACCES, security_error },
- { EROFS, read_only_error },
- { EIO, io_error },
- { ENAMETOOLONG, path_error },
- { ENOENT, not_found_error },
- // { ENOTDIR, not_directory_error },
- { EAGAIN, busy_error },
- { EBUSY, busy_error },
- { ETXTBSY, busy_error },
- { EEXIST, already_exists_error },
- { ENOTEMPTY, not_empty_error },
- { EISDIR, is_directory_error },
- { ENOSPC, out_of_space_error },
- { ENOMEM, out_of_memory_error },
- { EMFILE, out_of_resource_error },
- { ENOENT, not_such_file_or_directory },
- { EINVAL, invalid_argument }
- #endif //#if defined (BOOST_INTERPROCESS_WINDOWS)
-};
-
-inline error_code_t lookup_error(native_error_t err)
-{
- const ec_xlate *cur = &ec_table[0],
- *end = cur + sizeof(ec_table)/sizeof(ec_xlate);
- for (;cur != end; ++cur ){
- if ( err == cur->sys_ec ) return cur->ec;
- }
- return system_error; // general system error code
-}
-
-struct error_info
-{
- error_info(error_code_t ec = other_error )
- : m_nat(0), m_ec(ec)
- {}
-
- error_info(native_error_t sys_err_code)
- : m_nat(sys_err_code), m_ec(lookup_error(sys_err_code))
- {}
-
- error_info & operator =(error_code_t ec)
- {
- m_nat = 0;
- m_ec = ec;
- return *this;
- }
-
- error_info & operator =(native_error_t sys_err_code)
- {
- m_nat = sys_err_code;
- m_ec = lookup_error(sys_err_code);
- return *this;
- }
-
- native_error_t get_native_error()const
- { return m_nat; }
-
- error_code_t get_error_code()const
- { return m_ec; }
-
- private:
- native_error_t m_nat;
- error_code_t m_ec;
-};
-/// @endcond
-
-} // namespace interprocess {
-} // namespace boost
-
-#include <boost/interprocess/detail/config_end.hpp>
-
-#endif // BOOST_INTERPROCESS_ERRORS_HPP