como criar boost phoenix make_shared?

É possível criar uma variante preguiçosa do boost phoenix destd::make_shared? Quero dizer, tornar possível algo como

namespace p = boost::phoenix;
...
expr = custom_parser[_a=p::make_shared<Node>(_1,_2,_3)] >> ...

Não se pode usarBOOST_PHOENIX_ADAPT_FUNCTION devido à natureza variável do modelo destd::make_shared. Portanto, provavelmente o wrapper deve ser o próprio modelo variável, se for possível escrever um.

questionAnswers(2)

yourAnswerToTheQuestion