のブーストフェニックスレイジーバリアントを作成することは可能std::make_shared
ですか? つまり、次のようなことを可能にするために
namespace p = boost::phoenix;
...
expr = custom_parser[_a=p::make_shared<Node>(_1,_2,_3)] >> ...
BOOST_PHOENIX_ADAPT_FUNCTION
の可変個引数テンプレートの性質のため、使用できませんstd::make_shared
。したがって、ラッパーを作成できる場合は、おそらくラッパー自体が可変個引数テンプレートである必要があります。