Boost logo

Boost :

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


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk