blob: 64d71840e4f19ae6e2df0e39779f50f25f1db7f3 [file] [log] [blame]
Brian Silverman4a2409e2018-08-04 23:24:02 -07001[/
2 Copyright 2007 John Maddock.
3 Distributed under the Boost Software License, Version 1.0.
4 (See accompanying file LICENSE_1_0.txt or copy at
5 http://www.boost.org/LICENSE_1_0.txt).
6]
7
8[section:is_signed is_signed]
9
10 template <class T>
11 struct is_signed : public __tof {};
12
13__inherit If T is an signed integer type or an enumerated type with an
14underlying signed integer type, then inherits from __true_type,
15otherwise inherits from __false_type.
16
17__std_ref 3.9.1, 7.2.
18
19[all_compilers]
20
21__header ` #include <boost/type_traits/is_signed.hpp>` or ` #include <boost/type_traits.hpp>`
22
23__examples
24
25[:`is_signed<int>` inherits from `__true_type`.]
26
27[:`is_signed<int const volatile>::type` is the type `__true_type`.]
28
29[:`is_signed<unsigned int>::value` is an integral constant
30expression that evaluates to /false/.]
31
32[:`is_signed<myclass>::value` is an integral constant
33expression that evaluates to /false/.]
34
35[:`is_signed<char>::value` is an integral constant
36expression whose value depends upon the signedness of type `char`.]
37
38[:`is_signed<long long>::value` is an integral constant
39expression that evaluates to /true/.]
40
41[:`is_signed<T>::value_type` is the type `bool`.]
42
43[endsect]
44