Boost logo

Proto :

Subject: Re: [proto] Extendin proto::switch_
From: Eric Niebler (eric_at_[hidden])
Date: 2011-08-06 01:30:47


On 8/5/2011 8:52 AM, Joel falcou wrote:
> There is few use case where I wish i can have a proto::switch_ like
> transform being extendable externally but based on something else than
> the expression tag like the result of an arbitrary meta-function.
>
> Is cloning proto::swicth_ and changing the way it dispatch over its
> internal cases_ enough ?

That wouldn't be enough because proto::matches "knows" about
proto::switch_. It would be easy enough to extend proto::switch_ to take
an optional mpl metafunction that accepts and expression and returns a
type to dispatch on. It would default to proto::tag_of<mpl::_>. Or for
the sake of consistency with the rest of proto, it should probably be a
transform, in which case it would default to proto::tag_of<proto::_>().

Could you open a feature request?

-- 
Eric Niebler
BoostPro Computing
http://www.boostpro.com

Proto list run by eric at boostpro.com