Compare commits

..

10 Commits

Author SHA1 Message Date
nobody
4d8b1c49d2 This commit was manufactured by cvs2svn to create branch
'thread_rewrite'.

[SVN r30953]
2005-09-13 14:20:32 +00:00
John Maddock
5cf0ef44a7 Large patch from Ulrich Eckhardt to fix support for EVC++ 4.
[SVN r30670]
2005-08-25 16:27:28 +00:00
Douglas Gregor
0a8936b80a Give the enum a name
[SVN r29349]
2005-06-01 19:08:00 +00:00
Vladimir Prus
ea15a9abf6 Add V2 Jamfile
[SVN r28242]
2005-04-14 11:47:45 +00:00
Douglas Gregor
1982b3ee5a Try to make sure indeterminate output works
[SVN r27918]
2005-04-01 22:54:04 +00:00
Douglas Gregor
192433a5e1 Permit output of indeterminate value that isn't converted to a tribool
[SVN r27739]
2005-03-18 20:40:06 +00:00
Stefan Slapeta
796f4a5fa8 Replaced BOOST_TEST
[SVN r27050]
2005-02-03 12:27:14 +00:00
Douglas Gregor
e5c2ea9a90 Update copyrights
[SVN r24019]
2004-07-25 03:01:38 +00:00
Douglas Gregor
72bd21d653 Doug Gregor -> Douglas Gregor
[SVN r24016]
2004-07-25 02:29:29 +00:00
Douglas Gregor
bf76f4668b Add title
[SVN r23928]
2004-07-22 04:11:15 +00:00
3 changed files with 27 additions and 6 deletions

View File

@@ -1,6 +1,6 @@
// Three-state boolean logic library
// Copyright Doug Gregor 2002-2004. Use, modification and
// Copyright Douglas Gregor 2002-2004. 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)
@@ -118,7 +118,7 @@ public:
* The actual stored value in this 3-state boolean, which may be false, true,
* or indeterminate.
*/
enum { false_value, true_value, indeterminate_value } value;
enum value_t { false_value, true_value, indeterminate_value } value;
};
// Check if the given tribool has an indeterminate value. Also doubles as a

View File

@@ -1,6 +1,6 @@
// Three-state boolean logic library
// Copyright Doug Gregor 2002-2004. Use, modification and
// Copyright Douglas Gregor 2002-2004. 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)

View File

@@ -1,6 +1,6 @@
// Three-state boolean logic library
// Copyright Doug Gregor 2002-2003. Use, modification and
// Copyright Douglas Gregor 2002-2004. 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)
@@ -104,9 +104,10 @@ template<>
inline std::basic_string<char> get_default_indeterminate_name<char>()
{ return "indeterminate"; }
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1200)
#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
// VC++ 6.0 chokes on the specialization below, so we're stuck without
// wchar_t support. What a pain.
// wchar_t support. What a pain. TODO: it might just need a the template
// parameter as function parameter...
#else
# ifndef BOOST_NO_WCHAR_T
/// Returns the wide character string L"indeterminate".
@@ -201,6 +202,26 @@ operator<<(std::basic_ostream<CharT, Traits>& out, tribool x)
return out;
}
/**
* \brief Writes the indeterminate tribool value to a stream.
*
* This routine outputs either the integer
* value 2 (if <tt>(out.flags() & std::ios_base::boolalpha) == 0</tt>)
* or the name of the indeterminate value. The name of the
* indeterminate value comes from the indeterminate_name facet (if it
* is defined in the output stream's locale), or from the
* get_default_indeterminate_name function (if it is not defined in the
* locale or if the C++ standard library implementation does not
* support locales).
*
* \returns @p out
*/
template<typename CharT, typename Traits>
inline std::basic_ostream<CharT, Traits>&
operator<<(std::basic_ostream<CharT, Traits>& out,
bool (*)(tribool, detail::indeterminate_t))
{ return out << tribool(indeterminate); }
/**
* \brief Reads a tribool value from a stream.
*