Boost logo

Boost :

From: Derek Ross (dross_at_[hidden])
Date: 2003-01-09 12:21:44


Hello,

I'd like to convert this run-time assertion to a compile time MPL check:

template <class T>
bool SetOption(COptionInfo& o, const char* key, const T& value)
{
        assert( typeid(T)==typeid(bool)
        || typeid(T)==typeid(int)
        || typeid(T)==typeid(double)
        || typeid(T)==typeid(string));
...etc...

As you can probably guess, this is a template function that should only
be called with types of int, bool, std::string or double.

 From what I've read in this newsgroup, the boost::mpl library should be
able to handle this. But, I wouldn't be surprised if there was an easy
C++ solution too.

Thanks,
Derek Ross.


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