$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [boost] [msm] eUML guard/action location
From: David Abrahams (dave_at_[hidden])
Date: 2010-01-09 17:34:39
At Mon, 14 Dec 2009 13:31:29 +0100,
Christophe Henry wrote:
>
> >Are all those parentheses used for optional arguments, or could we consider eliminating them?
>
> I'd love to eliminate them but don't see how. They actually are constructors.
> The complete expression would be something like:
>
> typedef BOOST_TYPEOF(build_stt((
> DestState() = CurrentState() + cool_event()[guard()]/action(),
> DestState2() = CurrentState() + cool_event()[guard2()]/action2()
> ) ) ) transition_table;
>
> So I'm really just pretending to pass on-the-fly instances of
> arguments from types DestState, CurrentState, etc. to evaluate the
> result with typeof after proto is done.
You could declare those instances at namespace scope, in the same way
most Proto terminals are declared, non?
-- Dave Abrahams Meet me at BoostCon: http://www.boostcon.com BoostPro Computing http://www.boostpro.com