On 11/18/2010 3:58 AM, Thomas Heller wrote:
> Btw, i just finished implementing the unpack feature we were talking about 

Awesome!

> ...
> Short description:
> 
> Calling some_callable with the expression unpacked:
> proto::when<proto::_, some_callable(unpack)>
> 
> Calling some_callable with an arbitrary sequence unpacked:
> proto::when<proto::_, some_callable(unpack(some_fusion_seq())>
> 
> Calling some_callable with an arbitrary sequence unpacked, and apply a proto 
> transform before:
> proto::when<proto::_, some_callable(unpack(some_fusion_seq(), 
> some_transform)>

Perfect.

> Additionally it is possible to have arbitrary parameters before or after 
> unpack. 

Whoa. You said that was going to be impossible or very expensive. I'[m
impressed.

> The implementation is located at:
> http://svn.boost.org/svn/boost/sandbox/SOC/2010/phoenix3/boost/phoenix/core/unpack.hpp
> 
> Just a whole mess of preprocessor generation ... this is not really fast to 
> compile at the moment, PROTO_MAX_ARITY of 5 is fine, everything above will 
> just blow the compiler :(

That's a bit worrying. When I have some time, I'll try to grok your work
and see if there's any way to speed things up.

Thanks for your work on this!

-- 
Eric Niebler
BoostPro Computing
http://www.boostpro.com
_______________________________________________
proto mailing list
proto@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/proto

Reply via email to