bug fix in the decoupling of info.hpp from get_error_info.hpp.

[SVN r48551]
This commit is contained in:
Emil Dotchevski
2008-09-02 23:13:06 +00:00
parent 5a9532783d
commit 8310c9831f
3 changed files with 55 additions and 37 deletions

View File

@ -30,6 +30,32 @@ boost
}
};
}
template <class Tag,class T>
class
error_info:
public exception_detail::error_info_base
{
public:
typedef T value_type;
error_info( value_type const & value );
~error_info() throw();
value_type const &
value() const
{
return value_;
}
private:
char const * tag_typeid_name() const;
std::string value_as_string() const;
value_type const value_;
};
}
#endif

View File

@ -7,7 +7,7 @@
#define UUID_1A590226753311DD9E4CCF6156D89593
#include <boost/exception/exception.hpp>
#include <boost/exception/detail/error_info_base.hpp>
#include <boost/exception/detail/error_info_impl.hpp>
#include <boost/exception/detail/type_info.hpp>
#include <boost/shared_ptr.hpp>
#include <string.h>

View File

@ -8,7 +8,7 @@
#include <boost/exception/exception.hpp>
#include <boost/exception/to_string_stub.hpp>
#include <boost/exception/detail/error_info_base.hpp>
#include <boost/exception/detail/error_info_impl.hpp>
#include <boost/shared_ptr.hpp>
#include <map>
@ -16,45 +16,37 @@ namespace
boost
{
template <class Tag,class T>
class
error_info:
public exception_detail::error_info_base
inline
error_info<Tag,T>::
error_info( value_type const & value ):
value_(value)
{
public:
}
typedef T value_type;
template <class Tag,class T>
inline
error_info<Tag,T>::
~error_info() throw()
{
}
error_info( value_type const & value ):
value_(value)
{
}
template <class Tag,class T>
inline
char const *
error_info<Tag,T>::
tag_typeid_name() const
{
return type_name<Tag>();
}
~error_info() throw()
{
}
value_type const &
value() const
{
return value_;
}
private:
char const *
tag_typeid_name() const
{
return type_name<Tag>();
}
std::string
value_as_string() const
{
return to_string_stub(value_);
}
value_type const value_;
};
template <class Tag,class T>
inline
std::string
error_info<Tag,T>::
value_as_string() const
{
return to_string_stub(value_);
}
namespace
exception_detail