|
Boost : |
Subject: Re: [boost] [Review] Boost.Type Traits Extension by Frederic Bron
From: Frédéric Bron (frederic.bron_at_[hidden])
Date: 2011-03-19 06:25:17
I am not sure of the formatting of the table you received because I received
it in text mode, not html, so let me retry (sorry for this).
> Could you make the same analysis with "const, volatile and references"
I must answer in html. cv qualifiers work just fine.
In the implementation, I have removed the reference qualifier from the
analysis when I added the +=, -=, ... operators because they require lvalue
as left hand side parameter (so I first remove the & if it exists and then I
add it to make sure I have an lvalue).
This makes <cv A> and <cv A&> behave the same. I am checking if I can handle
this better.
operator+(A) operator+(const A) operator+(volatile A) operator+(const
volatile A) operator+(A&) operator+(const A&) operator+(volatile A&)
operator+(const volatile A&)
has_operator_unary_plus<A> true true true true true true true true
has_operator_unary_plus<const A> true true true true false true false true
has_operator_unary_plus<volatile A> true true true true false false true
true
has_operator_unary_plus<const volatile A> true true true true false false
false true
has_operator_unary_plus<A&> true true true true true true true true
has_operator_unary_plus<const A&> true true true true false true false true
has_operator_unary_plus<volatile A&> true true true true false false true
true
has_operator_unary_plus<const volatile A&> true true true true false false
false true
Frédéric
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk