A while back I inquired about an 'else' or 'elseif' clause in an <if> task.  
Presently, I use the <choose> task instead-e.g.:

      <choose>
            <when test="${}" >

            </when>
            <otherwise>

            </otherwise>
      </choose>


Just wonder if anyone has yet created a custom task  with a more concise syntax 
(e.g. not doubly nested)?

Optional 'else' clauses always create problems with language parsers-they are 
fundamentally a deviation for well-formed LALR(1) language parsers.  I'm not 
even sure what would be a good way to represent IF - ELSE - ENDIF constructs in 
Nant.  Maybe as three separate tasks:

      <if test="${}" />
      <else test = "${}" />
      <endif/>

Or as two tasks:

      <if test="${}" >
      </if>
      <else test = "${}" >
      </else>

In either case,  there's an issue that either the nesting/scoping of elements 
is not reflective of the control construct, or that the Nant processor would 
have to keep track of state transitions outside of a single control structure 
(what happens if you encounter an <else> that is syntactically acceptable, but 
not preceded by an <if> task ???

Any thoughts, ideas on this topic.

Ken Parrish
Gomez, Inc.
------------------------------------------------------------------------------
Register Now & Save for Velocity, the Web Performance & Operations 
Conference from O'Reilly Media. Velocity features a full day of 
expert-led, hands-on workshops and two days of sessions from industry 
leaders in dedicated Performance & Operations tracks. Use code vel09scf 
and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf
_______________________________________________
NAnt-users mailing list
NAnt-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-users

Reply via email to