Le 04/06/2012 21:18, Eric Niebler a écrit :
The make_expr function object takes as arguments the tag and the children. You can do whatever you want. If open extensibility matters, you can dispatch to a function found by ADL or to a template specialized on the tag like proto::switch_. It's up to you.
Ok perfect
Not sure what you mean. Are you referring to the current discussion about having to use shared_ptr to store something? That seems unrelated to me. Assuming your types are efficiently movable, the default should just do the right thing, and your expression trees can be safely stored in local auto variables without dangling references. Does that help?
I was thinking of the case where we constructed a foo expression by calling expression constructor one into the other. I guess it fixes that.
Proto-11 will probably take many months. I'm taking my time and rethinking everything. Don't hold your work up waiting for it.
No problem, just that if you need some reality check at some point we may provide a non trivial test case. We're doing it anyway ;)
_______________________________________________ proto mailing list proto@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/proto