metaSMT 2
|
00001 #pragma once 00002 #include <boost/proto/core.hpp> 00003 00004 namespace metaSMT { 00005 namespace detail { 00006 00007 template<typename T> 00008 typename boost::disable_if<proto::is_expr<T>, proto::literal<T> >::type 00009 protofy ( T e) { 00010 return proto::lit(e); 00011 } 00012 00013 template<typename T> 00014 typename boost::enable_if<proto::is_expr<T>, T>::type 00015 protofy ( T e) { 00016 return e; 00017 } 00018 00019 } 00020 } /* metaSMT */