$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: David A. Greene (greened_at_[hidden])
Date: 2007-07-14 18:26:30
On Saturday 14 July 2007 17:12, Eric Niebler wrote:
> Yes, that's mostly correct. The types proto::shift_right and
> proto::unary_expr, for example, do a pass-through transform. Other types
> like proto::if_ and proto::expr have an identity transform. The docs
> describe the difference between these two, and which types have which
> transform.
Yep, I think I understand the difference.
> Here S and V are the types of the state and visitor parameters that just
> come along for the ride. So, calling Grammar::call() doesn't recurse to
> the children in general *unless* Grammar is one of these special
> transforms like pass-through.
Yes, my (unstated) assumption was that Grammar was a pass-through transform.
I'm about to tackle the n-ary case, which will be interesting. I'm sure I'll
have more questions but armed with the help you've given, I've a much better
shot now. Thanks.
-Dave