diff options
author | DongHun Kwak <dh0128.kwak@samsung.com> | 2017-09-13 11:05:34 +0900 |
---|---|---|
committer | DongHun Kwak <dh0128.kwak@samsung.com> | 2017-09-13 11:06:28 +0900 |
commit | 34bd32e225e2a8a94104489b31c42e5801cc1f4a (patch) | |
tree | d021b579a0c190354819974e1eaf0baa54b551f3 /boost/exception | |
parent | f763a99a501650eff2c60288aa6f10ef916d769e (diff) | |
download | boost-34bd32e225e2a8a94104489b31c42e5801cc1f4a.tar.gz boost-34bd32e225e2a8a94104489b31c42e5801cc1f4a.tar.bz2 boost-34bd32e225e2a8a94104489b31c42e5801cc1f4a.zip |
Imported Upstream version 1.63.0upstream/1.63.0
Change-Id: Iac85556a04b7e58d63ba636dedb0986e3555714a
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
Diffstat (limited to 'boost/exception')
-rw-r--r-- | boost/exception/detail/error_info_impl.hpp | 4 | ||||
-rw-r--r-- | boost/exception/detail/shared_ptr.hpp | 17 | ||||
-rw-r--r-- | boost/exception/errinfo_api_function.hpp | 2 | ||||
-rw-r--r-- | boost/exception/errinfo_errno.hpp | 2 | ||||
-rw-r--r-- | boost/exception/exception.hpp | 11 | ||||
-rw-r--r-- | boost/exception/get_error_info.hpp | 3 | ||||
-rw-r--r-- | boost/exception/info.hpp | 166 |
7 files changed, 114 insertions, 91 deletions
diff --git a/boost/exception/detail/error_info_impl.hpp b/boost/exception/detail/error_info_impl.hpp index dbe0afdb21..ecd086dd87 100644 --- a/boost/exception/detail/error_info_impl.hpp +++ b/boost/exception/detail/error_info_impl.hpp @@ -43,7 +43,7 @@ boost error_info: public exception_detail::error_info_base { - public: + public: typedef T value_type; @@ -67,7 +67,7 @@ boost return value_; } - private: + private: error_info & operator=( error_info const & ); #ifndef BOOST_NO_CXX11_RVALUE_REFERENCES error_info & operator=( error_info && x ); diff --git a/boost/exception/detail/shared_ptr.hpp b/boost/exception/detail/shared_ptr.hpp new file mode 100644 index 0000000000..51febe8c8f --- /dev/null +++ b/boost/exception/detail/shared_ptr.hpp @@ -0,0 +1,17 @@ +//Copyright (c) 2006-2008 Emil Dotchevski and Reverge Studios, Inc. + +//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) + +#ifndef UUID_837060E885AF11E68DA91D15E31AC075 +#define UUID_837060E885AF11E68DA91D15E31AC075 + +#ifdef BOOST_EXCEPTION_MINI_BOOST +#include <memory> +namespace boost { namespace exception_detail { using std::shared_ptr; } } +#else +#include <boost/shared_ptr.hpp> +namespace boost { namespace exception_detail { using boost::shared_ptr; } } +#endif + +#endif diff --git a/boost/exception/errinfo_api_function.hpp b/boost/exception/errinfo_api_function.hpp index 481c61314e..0cbbdb90ca 100644 --- a/boost/exception/errinfo_api_function.hpp +++ b/boost/exception/errinfo_api_function.hpp @@ -6,7 +6,7 @@ #ifndef UUID_DDFBB4546C1211DEA4659E9055D89593 #define UUID_DDFBB4546C1211DEA4659E9055D89593 -#include "boost/exception/error_info.hpp" +#include <boost/exception/error_info.hpp> namespace boost diff --git a/boost/exception/errinfo_errno.hpp b/boost/exception/errinfo_errno.hpp index 657b5f76d5..de44e17155 100644 --- a/boost/exception/errinfo_errno.hpp +++ b/boost/exception/errinfo_errno.hpp @@ -13,7 +13,7 @@ #pragma warning(disable:4996) #endif -#include "boost/exception/info.hpp" +#include <boost/exception/info.hpp> #include <errno.h> #include <string.h> diff --git a/boost/exception/exception.hpp b/boost/exception/exception.hpp index 213af3dbb8..c0fdaf9e55 100644 --- a/boost/exception/exception.hpp +++ b/boost/exception/exception.hpp @@ -12,6 +12,14 @@ #pragma warning(push,1) #endif +#ifdef BOOST_EXCEPTION_MINI_BOOST +#include <memory> +namespace boost { namespace exception_detail { using std::shared_ptr; } } +#else +namespace boost { template <class T> class shared_ptr; }; +namespace boost { namespace exception_detail { using boost::shared_ptr; } } +#endif + namespace boost { @@ -144,9 +152,6 @@ boost # endif #endif - template <class T> - class shared_ptr; - namespace exception_detail { diff --git a/boost/exception/get_error_info.hpp b/boost/exception/get_error_info.hpp index 96be7632cb..51a21ba899 100644 --- a/boost/exception/get_error_info.hpp +++ b/boost/exception/get_error_info.hpp @@ -15,7 +15,8 @@ #include <boost/exception/exception.hpp> #include <boost/exception/detail/error_info_impl.hpp> #include <boost/exception/detail/type_info.hpp> -#include <boost/shared_ptr.hpp> +#include <boost/exception/detail/shared_ptr.hpp> +#include <boost/assert.hpp> namespace boost diff --git a/boost/exception/info.hpp b/boost/exception/info.hpp index f955e09845..f06df42aaf 100644 --- a/boost/exception/info.hpp +++ b/boost/exception/info.hpp @@ -15,7 +15,7 @@ #include <boost/exception/exception.hpp> #include <boost/exception/to_string_stub.hpp> #include <boost/exception/detail/error_info_impl.hpp> -#include <boost/shared_ptr.hpp> +#include <boost/exception/detail/shared_ptr.hpp> #include <boost/config.hpp> #include <map> @@ -47,27 +47,27 @@ boost } #ifndef BOOST_NO_CXX11_RVALUE_REFERENCES - template <class Tag,class T> + template <class Tag,class T> inline error_info<Tag,T>:: - error_info( error_info const & x ): - value_(x.value_) - { - } + error_info( error_info const & x ): + value_(x.value_) + { + } template <class Tag,class T> inline error_info<Tag,T>:: - error_info( value_type && value ) BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT_EXPR(value_type(std::move(value)))): - value_(std::move(value)) - { - } - template <class Tag,class T> + error_info( value_type && value ) BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT_EXPR(value_type(std::move(value)))): + value_(std::move(value)) + { + } + template <class Tag,class T> inline error_info<Tag,T>:: - error_info( error_info && x ) BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT_EXPR(value_type(std::move(x.value_)))): - value_(std::move(x.value_)) - { - } + error_info( error_info && x ) BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT_EXPR(value_type(std::move(x.value_)))): + value_(std::move(x.value_)) + { + } #endif template <class Tag,class T> @@ -202,79 +202,79 @@ boost #ifndef BOOST_NO_CXX11_RVALUE_REFERENCES template <class E,class Tag,class T> E const & set_info( E const &, error_info<Tag,T> && ); - template <class T> - class set_info_rv; - template <class Tag,class T> - class - set_info_rv<error_info<Tag,T> > - { - template <class E,class Tag1,class T1> - friend E const & set_info( E const &, error_info<Tag1,T1> && ); - template <class E> - static - E const & - set( E const & x, error_info<Tag,T> && v ) - { - typedef error_info<Tag,T> error_info_tag_t; - shared_ptr<error_info_tag_t> p( new error_info_tag_t(std::move(v)) ); - exception_detail::error_info_container * c=x.data_.get(); - if( !c ) - x.data_.adopt(c=new exception_detail::error_info_container_impl); - c->set(p,BOOST_EXCEPTION_STATIC_TYPEID(error_info_tag_t)); - return x; - } - }; - template <> - class - set_info_rv<throw_function> - { - template <class E,class Tag1,class T1> - friend E const & set_info( E const &, error_info<Tag1,T1> && ); - template <class E> - static - E const & - set( E const & x, throw_function && y ) - { - x.throw_function_=y.v_; - return x; - } - }; - template <> - class - set_info_rv<throw_file> - { - template <class E,class Tag1,class T1> - friend E const & set_info( E const &, error_info<Tag1,T1> && ); - template <class E> - static - E const & - set( E const & x, throw_file && y ) - { - x.throw_file_=y.v_; - return x; - } - }; - template <> - class - set_info_rv<throw_line> - { - template <class E,class Tag1,class T1> - friend E const & set_info( E const &, error_info<Tag1,T1> && ); - template <class E> - static - E const & - set( E const & x, throw_line && y ) - { - x.throw_line_=y.v_; - return x; - } - }; + template <class T> + struct set_info_rv; + template <class Tag,class T> + struct + set_info_rv<error_info<Tag,T> > + { + template <class E,class Tag1,class T1> + friend E const & set_info( E const &, error_info<Tag1,T1> && ); + template <class E> + static + E const & + set( E const & x, error_info<Tag,T> && v ) + { + typedef error_info<Tag,T> error_info_tag_t; + shared_ptr<error_info_tag_t> p( new error_info_tag_t(std::move(v)) ); + exception_detail::error_info_container * c=x.data_.get(); + if( !c ) + x.data_.adopt(c=new exception_detail::error_info_container_impl); + c->set(p,BOOST_EXCEPTION_STATIC_TYPEID(error_info_tag_t)); + return x; + } + }; + template <> + struct + set_info_rv<throw_function> + { + template <class E,class Tag1,class T1> + friend E const & set_info( E const &, error_info<Tag1,T1> && ); + template <class E> + static + E const & + set( E const & x, throw_function && y ) + { + x.throw_function_=y.v_; + return x; + } + }; + template <> + struct + set_info_rv<throw_file> + { + template <class E,class Tag1,class T1> + friend E const & set_info( E const &, error_info<Tag1,T1> && ); + template <class E> + static + E const & + set( E const & x, throw_file && y ) + { + x.throw_file_=y.v_; + return x; + } + }; + template <> + struct + set_info_rv<throw_line> + { + template <class E,class Tag1,class T1> + friend E const & set_info( E const &, error_info<Tag1,T1> && ); + template <class E> + static + E const & + set( E const & x, throw_line && y ) + { + x.throw_line_=y.v_; + return x; + } + }; template <class E,class Tag,class T> inline E const & set_info( E const & x, error_info<Tag,T> && v ) { - return set_info_rv<error_info<Tag,T> >::template set<E>(x,std::move(v)); + return set_info_rv<error_info<Tag,T> >::template set<E>(x,std::move(v)); } #endif |