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.
Not sure what you mean. Are you referring to the current discussion
about having to use shared_ptr to store something? That seems unrelated
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