35 #include <boost/any.hpp> 36 #include <boost/utility.hpp> 37 #include <boost/lexical_cast.hpp> 75 template <
class T>
RDAny(
const T &d) : m_value(d) {}
168 boost::any *v =
new boost::any(d);
193 typename boost::enable_if<boost::is_arithmetic<T>, T>::type
from_rdany(
200 }
catch (
const boost::bad_any_cast &exc) {
202 res = boost::lexical_cast<T>(
rdany_cast<std::string>(arg));
214 typename boost::disable_if<boost::is_arithmetic<T>, T>::type
from_rdany(
void copy_rdvalue(RDValue &dest, const RDValue &src)
const T rdany_cast(const RDAny &d)
T rdvalue_cast(RDValue v)
static void cleanup_rdvalue(RDValue v)
RDAny & operator=(const RDAny &rhs)
static const boost::uint64_t StringTag
RDAny & operator=(const std::vector< float > &d)
RDAny & operator=(const std::vector< unsigned int > &d)
RDAny & operator=(unsigned int d)
RDAny & operator=(const boost::any &d)
RDAny & operator=(const std::string &d)
RDAny & operator=(const T &d)
boost::uint64_t getTag() const
RDAny & operator=(const std::vector< int > &d)
RDAny & operator=(float d)
RDAny & operator=(const std::vector< double > &d)
boost::enable_if< boost::is_arithmetic< T >, T >::type from_rdany(const RDAny &arg)
RDAny & operator=(bool d)
RDAny & operator=(const std::vector< std::string > &d)