Boost logo

Proto :

Subject: Re: [proto] How to customize an expression in an EDSL , so as to make a deep copy of it?
From: Bart Janssens (bart_at_[hidden])
Date: 2015-12-25 17:11:43


On Fri, Dec 25, 2015 at 2:07 PM Masakatsu ITO(伊藤) <itoh.masakatsu_at_[hidden]>
wrote:

>
> Actually I tried to adapt my DiffereneceOperator type to Proto
> as Proto Users Guide explains in "Adapting Existing Types to Proto".
>
>
> http://www.boost.org/doc/libs/1_57_0/doc/html/proto/users_guide.html#boost_proto.users_guide.front_end.define_operators
>
>
I think this didn't work because the macro doesn't overload the function
call operator.

> And I wondered when it is necessary to write a code such like
>
> calculator< proto::terminal< placeholder<0> >::type > const _1;
>
>
> in "The extends< > Expression Wrapper".
>
>
> http://www.boost.org/doc/libs/1_57_0/doc/html/proto/users_guide.html#boost_proto.users_guide.front_end.customizing_expressions_in_your_domain.extends
>
> <http://www.boost.org/doc/libs/1_57_0/doc/html/proto/users_guide.html#boost_proto.users_guide.front_end.customizing_expressions_in_your_domain.extends>
>

This is needed to make sure the terminal is part of the calculator domain,
if you leave out the calculator<> part you just get an expression in the
default domain.

> Wishing you a merry Christmas,
> Masa
>
>
Merry Christmas to you too!

Bart



Proto list run by eric at boostpro.com