Boost logo

Boost :

From: Eric Niebler (eric_at_[hidden])
Date: 2008-04-27 17:30:44

Larry Evans wrote:
> Although there's unary_expr<Tag,*>, binary_expr<tag.*,*>
> in traits.hpp there's no nullary_expr<Tag>. I realize
> this would be a replacement to the current terminal template
> but with a user specified tag. After all,
> if a user specified tag for n-ary (where n>0) expressions
> *is* desirable, why is a user specified tag for 0-ary
> expressions *not* desirable?

Mostly because I couldn't think of a use case at the time. There's
nothing in Proto's design that would prohibit a 0-ary expression from
having a tag type other than tag::terminal, but I bet there are some
places in the code that make that assumption. They would all need to be
hunted down and fixed. Probably not too hard. If you felt like
submitting a patch (hint hint), then be sure to use branches/proto/v4 as
a starting point.

Eric Niebler
Boost Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at