6 #ifndef KNOWROB_PARSERS_COMMON_H 
    7 #define KNOWROB_PARSERS_COMMON_H 
   10 #include <boost/spirit/include/phoenix.hpp> 
   17     struct make_shared_f {
 
   18         template<
typename... A>
 
   20             typedef std::shared_ptr<T> 
type;
 
   23         template<
typename... A>
 
   25             return std::make_shared<T>(std::forward<A>(a)...);
 
   29     template<
typename T> 
using ptr_ = boost::phoenix::function<make_shared_f<T> >;
 
boost::phoenix::function< make_shared_f< T > > ptr_
std::shared_ptr< T > type
result< A... >::type operator()(A &&... a) const