--- Matt Benson <[EMAIL PROTECTED]> wrote:
> You're in luck. Maybe. I tested the following:
>
> <property name="$${foo}" value="foo" />
> <echo>${${foo}}</echo>
>
> and sure enough, it doesn't work. This is not so
> much
> because it's no doable as it is because Ant's
> property
> parsing mechanisms don't know any better than to
> match
> the first encountered closing brace. Running from
> Ant's svn trunk with the 'props' sandbox antlib,
> however, you can install the nested property
> expander:
>
> <propertyhelper>
> <nested xmlns="antlib:org.apache.ant.props" />
> </propertyhelper>
>
> This causes the original test to work. The caveat
> (beyond the fact that this is only available in an
> unreleased version of Ant) is that if property 'foo'
> were defined, ${${foo}} would resolve to the
> expansion
> of the expansion of the value of foo. Actually it
> should be possible to get around this by using
> ${$${foo}}, but there seems to be something
> preventing
> this. I'll look into that.
As an update, there was a bug in the
NestedPropertyExpander that related to $$ expansion.
I have fixed this; however the bad news is that that
still won't help you because the "thinking the first
encountered closing brace is the end" problem still
applies once the internal $$ has been skipped (the
subsequent { is not recognized as part of a nested
property so the next } is seen as closing the outer
property). It might be possible to introduce some
other mechanism to recognize delimited strings, but
I'd have to think more about that.
-Matt
>
> HTH,
> Matt
>
> --- Stefano Nichele <[EMAIL PROTECTED]>
> wrote:
>
> > Hi all,
> > I have a property with name ${car}. Note that the
> > name is not just
> > "car" but ${car}.
> >
> > Using echoproperties I see:
> > [echoproperties] ant.version=Apache Ant version
> > 1.6.5 compiled on June 2
> > 2005
> > [echoproperties] ${car}=fiat
> >
> > How to handle that property ? How to do something
> > like:
> >
> > <echo message="My car: ${car}" />
> >
> > since that one doesn't work. Conceptually it
> should
> > be <echo message="My
> > car: ${${car}}" /> but it doesn't work.
> >
> > Thanks a lot
> > ste
> >
> >
>
---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> > [EMAIL PROTECTED]
> > For additional commands, e-mail:
> > [EMAIL PROTECTED]
> >
> >
>
>
>
>
>
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]