Boost logo

Boost Users :

Subject: [Boost-users] [Concepts & EnableIf] Is void special?
From: Robert Jones (robertgbjones_at_[hidden])
Date: 2012-03-27 04:53:25

Hi Peeps

Can anyone cast any light on this...

I want to write function which accepts a single pass range of X's, so
something like this

struct X { };

template <typename T>
        (( boost::SinglePassRangeConcept<T> )),
        ( typename boost::enable_if<boost::is_same<typename
boost::range_value<T>::type, X>, void>::type ))
    my_function( const T & range );

Is that a reasonable construction, or is there a better way to say it?

Next, it doesn't seem to work. It does seem to work if the type to which
enable_if resolves is anything
except void, but not for void. Why is this?


- Rob.

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at