net.sf.antcontrib.cpptasks.types
Class DefineSet

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.types.DataType
          extended by net.sf.antcontrib.cpptasks.types.DefineSet

public class DefineSet
extends org.apache.tools.ant.types.DataType

Set of preprocessor macro defines and undefines.

Author:
Mark A Russell mark_russell@csg_systems.com , Adam Murdoch

Field Summary
 
Fields inherited from class org.apache.tools.ant.types.DataType
checked, description, ref
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
project
 
Constructor Summary
DefineSet()
           
 
Method Summary
 void addDefine(DefineArgument arg)
          Adds a define element.
 void addUndefine(UndefineArgument arg)
          Adds an undefine element.
 void execute()
           
 UndefineArgument[] getDefines()
          Returns the defines and undefines in this set.
 boolean isActive()
          Returns true if the define's if and unless conditions (if any) are satisfied.
 void setDefine(CUtil.StringArrayBuilder defList)
          A comma-separated list of preprocessor macros to define.
 void setDescription(java.lang.String desc)
          Sets a description of the current data type.
 void setId(java.lang.String id)
          Sets an id that can be used to reference this element.
 void setIf(java.lang.String propName)
          Sets the property name for the 'if' condition.
 void setRefid(org.apache.tools.ant.types.Reference r)
          Specifies that this element should behave as if the content of the element with the matching id attribute was inserted at this location.
 void setUndefine(CUtil.StringArrayBuilder undefList)
          A comma-separated list of preprocessor macros to undefine.
 void setUnless(java.lang.String propName)
          Set the property name for the 'unless' condition.
 
Methods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, dieOnCircularReference, getCheckedRef, getDescription, getRefid, isChecked, isReference, noChildrenAllowed, setChecked, tooManyAttributes
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getProject, log, log, setProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefineSet

public DefineSet()
Method Detail

addDefine

public void addDefine(DefineArgument arg)
               throws org.apache.tools.ant.BuildException
Adds a define element.

Throws:
org.apache.tools.ant.BuildException - if reference

addUndefine

public void addUndefine(UndefineArgument arg)
                 throws org.apache.tools.ant.BuildException
Adds an undefine element.

Throws:
org.apache.tools.ant.BuildException - if reference

execute

public void execute()
             throws org.apache.tools.ant.BuildException
Throws:
org.apache.tools.ant.BuildException

getDefines

public UndefineArgument[] getDefines()
                              throws org.apache.tools.ant.BuildException
Returns the defines and undefines in this set.

Throws:
org.apache.tools.ant.BuildException

isActive

public final boolean isActive()
                       throws org.apache.tools.ant.BuildException
Returns true if the define's if and unless conditions (if any) are satisfied.

Throws:
org.apache.tools.ant.BuildException - throws build exception if name is not set

setDefine

public void setDefine(CUtil.StringArrayBuilder defList)
               throws org.apache.tools.ant.BuildException
A comma-separated list of preprocessor macros to define. Use nested define elements to define macro values.

Parameters:
defList - comma-separated list of preprocessor macros
Throws:
org.apache.tools.ant.BuildException - throw if defineset is a reference

setDescription

public void setDescription(java.lang.String desc)
Sets a description of the current data type.

Overrides:
setDescription in class org.apache.tools.ant.types.DataType

setId

public void setId(java.lang.String id)
Sets an id that can be used to reference this element.

Parameters:
id - id

setIf

public final void setIf(java.lang.String propName)
Sets the property name for the 'if' condition. The define will be ignored unless the property is defined. The value of the property is insignificant, but values that would imply misinterpretation ("false", "no") will throw an exception when evaluated.

Parameters:
propName - property name

setRefid

public void setRefid(org.apache.tools.ant.types.Reference r)
              throws org.apache.tools.ant.BuildException
Specifies that this element should behave as if the content of the element with the matching id attribute was inserted at this location. If specified, no other attributes or child content should be specified, other than "description".

Overrides:
setRefid in class org.apache.tools.ant.types.DataType
Throws:
org.apache.tools.ant.BuildException

setUndefine

public void setUndefine(CUtil.StringArrayBuilder undefList)
                 throws org.apache.tools.ant.BuildException
A comma-separated list of preprocessor macros to undefine.

Parameters:
undefList - comma-separated list of preprocessor macros
Throws:
org.apache.tools.ant.BuildException - throw if defineset is a reference

setUnless

public final void setUnless(java.lang.String propName)
Set the property name for the 'unless' condition. If named property is set, the define will be ignored. The value of the property is insignificant, but values that would imply misinterpretation ("false", "no") of the behavior will throw an exception when evaluated.

Parameters:
propName - name of property


Copyright 2001-2008 Ant-Contrib Project. All Rights Reserved.