$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [boost] [Review] Type Traits Extension by Frederic Bron - Review summary and decision
From: Frédéric Bron (frederic.bron_at_[hidden])
Date: 2011-04-19 18:29:39
I have updated the type traits extension for operators:
- new names beginning with can_call_
- simpler names for helper traits
- fixed typos in documentation
- dont_care as default return type; check for exact void return when Ret=void
- names of template parameters now begin with a capital letter
followed by lower case letters (RHS->Rhs, LHS->Lhs, RET->Ret...)
- removed non ASCII characters
This updated version can be downloaded by different ways:
- from the sandbox (r71385): http://svn.boost.org/svn/boost/sandbox/type_traits/
- from the vault with unix line ending:
http://www.boostpro.com/vault/index.php?action=downloadfile&filename=type_traits.tar.bz2&directory=Extension&
- from the vault with dos line ending:
http://www.boostpro.com/vault/index.php?action=downloadfile&filename=type_traits-dos.tar.bz2&directory=Extension&
Headers only:
- from the vault with unix line ending:
http://www.boostpro.com/vault/index.php?action=downloadfile&filename=type_traits.headers_only.tar.bz2&directory=Extension&
- from the vault with dos line ending:
http://www.boostpro.com/vault/index.php?action=downloadfile&filename=type_traits.headers_only-dos.tar.bz2&directory=Extension&
Documentation: http://svn.boost.org/svn/boost/sandbox/type_traits/libs/type_traits/doc/html/boost_typetraits/category/value_traits/operators.html
(best presented in tarball).
It is not finished; more to come...
Frédéric
PS: Please, find below the list of chosen names. I would appreciate
not to start again a discussion about the good/bad of this choice. I
am sure there are at least 2 persons that like it, sorry if not
more... However feel free to report any typo as it is probably also in
the code.
# binary
+	can_call_addition
-	can_call_subtraction
*	can_call_multiplication
/	can_call_division
%	can_call_modulus
+=	can_call_addition_assignment
-=	can_call_subtraction_assignment
*=	can_call_multiplication_assignment
/=	can_call_division_assignment
%=	can_call_modulus_assignment
&	can_call_bitwise_and
|	can_call_bitwise_or
^	can_call_bitwise_xor
&=	can_call_bitwise_and_assignment
|=	can_call_bitwise_or_assignment
^=	can_call_bitwise_xor_assignment
<<	can_call_left_shift
>>	can_call_right_shift
<<=	can_call_left_shift_assignment
>>=	can_call_right_shift_assignment
==	can_call_equal
!=	can_call_not_equal
<	can_call_less
<=	can_call_less_equal
>	can_call_greater
>=	can_call_greater_equal
&&	can_call_and
||	can_call_or
# prefix
!	can_call_not
+	can_call_unary_plus
-	can_call_unary_minus
~	can_call_complement
*	can_call_dereference
++	can_call_pre_increment
--	can_call_pre_decrement
# postfix
++	can_call_post_increment
--	can_call_post_decrement