$include_dir="/home/hyper-archives/boost-build/include"; include("$include_dir/msg-header.inc") ?>
From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-06-05 09:50:17
David Abrahams wrote:
> Vladimir Prus <ghost_at_[hidden]> writes:
> > Hmm... the first one should be converted to NM_ASM. The generator should
> > produce targets in fixed order, I believe.
>
> A generator with signature A -> B B produces two Bs at the same
> time. Am I missing something?
True. However, the first CPP returned is always the one which must be
processed further.
> What element of the system other than your parenthesized note (which
> I don't believe can be captured in code) indicates that the first one
> should be converted instead of the 2nd one?
In the current system you can describe it by creating a generator STATIC_DATA
<- ECPP, which will
1. Create CPP from ECPP by recursive call to 'generators.construct'.
2. Take a first CPP and convert it to NM_ASM by another call to
'generators.construct'.
3. Convert NM_ASM to STATIC_DATA
4. Return STATIC_DATA and the second CPP
If you take a look at Jamfile for part of this example, still at
http://zigzag.cs.msu.su:7813/Jamfile.v2
you'll notice similiar approach.
It's not automatic, but user can be asked to do such things for complex
transformations. And it must be able to do that.
- Volodya