peter reilly wrote, On 01/09/2003 20.10:
...On Monday 01 September 2003 16:43, Dominique Devienne wrote:
It's not all about power, or one would use a real programming language like Perl or Python. <macrodef>, although powerful, complexifies the rules of Ant, namely the property expansion one, making it context dependent!
Never underestimate the power and simplicity of context/scope free rules. Although Ant already has scopes with <ant>/<antcall>/<subant>, the property expansion rules works the same everywhere, and I'd like this to stay the same.
<macrodef> follows (I think) the same rules of properties as <antcall> with inheritall=yes.
+1
...
<macrodef> should make ant a little simpler by removing the need for a lot of <antcall>s. People sometimes use them at the moment to emulate macros/templates.
Normally (I think), <macrodef> would be used in the same project that defined it, so the rules for property expansion would not be an issue.
I agree.
I also think that macrodef is quite important, as it does most of what I have been doing with importing targets, but without the need of using targets.
Imports should be reusable bits of builds. But instead they carry the baggage of targets. With macrodef I can finally *create tasks using Ant*.
To me, the current macrodef behaviour seems pretty easy to grok.
-- Nicola Ken Barozzi [EMAIL PROTECTED] - verba volant, scripta manent - (discussions get forgotten, just code remains) ---------------------------------------------------------------------
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]