<?xml version="1.0"?>
<doc>
    <assembly>
        <name>NAnt.Core</name>
    </assembly>
    <members>
        <member name="T:NAnt.Core.Attributes.BooleanValidatorAttribute">
            <summary>
            Used to indicate that a property should be able to be converted into a 
            <see cref="T:System.Boolean"/>.
            </summary>
        </member>
        <member name="T:NAnt.Core.Attributes.ValidatorAttribute">
            <summary>
            Base class for all validator attributes.
            </summary>
        </member>
        <member name="M:NAnt.Core.Attributes.ValidatorAttribute.Validate(System.Object)">
            <summary>
            Validates the specified value.
            </summary>
            <param name="value">The value to be validated.</param>
            <exception cref="T:NAnt.Core.ValidationException">The validation fails.</exception>
        </member>
        <member name="M:NAnt.Core.Attributes.BooleanValidatorAttribute.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.BooleanValidatorAttribute"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Attributes.BooleanValidatorAttribute.Validate(System.Object)">
            <summary>
            Checks if the specified value can be converted to a <see cref="T:System.Boolean"/>.
            </summary>
            <param name="value">The value to be checked.</param>
            <exception cref="T:NAnt.Core.ValidationException"><paramref name="value"/> cannot be converted to a <see cref="T:System.Boolean"/>.</exception>
        </member>
        <member name="T:NAnt.Core.Attributes.BuildAttributeAttribute">
             <summary>
             Indicates that property should be treated as a XML attribute for the 
             task.
             </summary>
             <example>
               Examples of how to specify task attributes
               <code>
             #region Public Instance Properties
             
             [BuildAttribute("out", Required=true)]
             public string Output {
                 get { return _out; }
                 set { _out = value; }
             }
            
             [BuildAttribute("optimize")]
             [BooleanValidator()]
             public bool Optimize {
                 get { return _optimize; }
                 set { _optimize = value; }
             }
            
             [BuildAttribute("warnlevel")]
             [Int32Validator(0,4)] // limit values to 0-4
             public int WarnLevel {
                 get { return _warnLevel; }
                 set { _warnLevel = value; }
             }
            
             [BuildElement("sources")]
             public FileSet Sources {
                 get { return _sources; }
                 set { _sources = value; }
             }
             
             #endregion Public Instance Properties
             
             #region Private Instance Fields
             
             private string _out = null;
             private bool _optimize = false;
             private int _warnLevel = 4;
             private FileSet _sources = new FileSet();
             
             #endregion Private Instance Fields
               </code>
             </example>
        </member>
        <member name="M:NAnt.Core.Attributes.BuildAttributeAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.BuildAttributeAttribute"/> with the 
            specified name.
            </summary>
            <param name="name">The name of the attribute.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="name"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="name"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="P:NAnt.Core.Attributes.BuildAttributeAttribute.Name">
            <summary>
            Gets or sets the name of the XML attribute.
            </summary>
            <value>
            The name of the XML attribute.
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.BuildAttributeAttribute.Required">
            <summary>
            Gets or sets a value indicating whether the attribute is required.
            </summary>
            <value>
            <see langword="true" /> if the attribute is required; otherwise, 
            <see langword="false" />. The default is <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.BuildAttributeAttribute.ExpandProperties">
            <summary>
            Gets or sets a value indicating whether property references should 
            be expanded.
            </summary>
            <value>
            <see langword="true" /> if properties should be expanded; otherwise 
            <see langword="false" />. The default is <see langword="true" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.BuildAttributeAttribute.ProcessXml">
            <summary>
            Used to specify how this attribute will be handled as the XML is 
            parsed and given to the element.
            </summary>
            <value>
            <see langword="true" /> if XML should be processed; otherwise 
            <see langword="false" />. The default is <see langword="true" />.
            </value>
        </member>
        <member name="T:NAnt.Core.Attributes.BuildElementArrayAttribute">
            <summary>
            Indicates that property should be treated as a XML arrayList
            </summary>
            <remarks>
            <para>
            Should only be applied to properties exposing strongly typed arrays or 
            strongly typed collections.
            </para>
            <para>
            The XML format is like this:
            <code>
                <![CDATA[
            <task>
                <elementName ... />
                <elementName ... />
                <elementName ... />
                <elementName ... />
            </task>
                ]]>
            </code>
            </para>
            </remarks>
        </member>
        <member name="T:NAnt.Core.Attributes.BuildElementAttribute">
            <summary>
            Indicates that the property should be treated as an XML element and 
            further processing should be done.
            </summary>
            <remarks>
            <para>
            The XML format is like this:
            <code>
                <![CDATA[
            <task>
                <elementName ...>
                    <morestuff />
                </elementName>
            </task>
                ]]>
            </code>
            </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.Attributes.BuildElementAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.BuildElementAttribute"/> with the 
            specified name.
            </summary>
            <param name="name">The name of the attribute.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="name"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="name"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="P:NAnt.Core.Attributes.BuildElementAttribute.Name">
            <summary>
            Gets or sets the name of the attribute.
            </summary>
            <value>
            The name of the attribute.
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.BuildElementAttribute.Required">
            <summary>
            Gets or sets a value indicating whether the attribute is required.
            </summary>
            <value>
            <see langword="true" /> if the attribute is required; otherwise, 
            <see langword="false" />. The default is <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.BuildElementAttribute.ProcessXml">
            <summary>
            Used to specify how this element will be handled as the XML is parsed 
            and given to the element.
            </summary>
            <value>
            <see langword="true" /> if XML should be processed; otherwise 
            <see langword="false" />. The default is <see langword="true" />.
            </value>
        </member>
        <member name="M:NAnt.Core.Attributes.BuildElementArrayAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.BuildElementArrayAttribute"/> 
            with the specified name.
            </summary>
            <param name="name">The name of the attribute.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="name"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="name"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="P:NAnt.Core.Attributes.BuildElementArrayAttribute.ElementType">
            <summary>
            Gets or sets the type of objects that this container holds.
            </summary>
            <value>
            The type of the elements that this container holds.
            </value>
            <remarks>
            <para>
            This can be used for validation and schema generation.
            </para>
            <para>
            If not specified, the type of the elements will be determined using
            reflection.
            </para>
            </remarks>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is <see langword="null"/>.</exception>
        </member>
        <member name="T:NAnt.Core.Attributes.BuildElementCollectionAttribute">
            <summary>
            Indicates that the property should be treated as a container for a 
            collection of build elements.
            </summary>
            <remarks>
            <para>
            Should only be applied to properties exposing strongly typed arrays or 
            strongly typed collections.
            </para>
            <para>
            The XML format is like this:
            <code>
                <![CDATA[
            <task>
                <collectionName>
                    <elementName ... />
                    <elementName ... />
                    <elementName ... />
                    <elementName ... />
                </collectionName>
            </task>
                ]]>
            </code>
            </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.Attributes.BuildElementCollectionAttribute.#ctor(System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.BuildElementCollectionAttribute"/> with the 
            specified name and child element name.
            </summary>
            <param name="collectionName">The name of the collection.</param>
            <param name="childName">The name of the child elements in the collection</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="childName"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="childName"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="P:NAnt.Core.Attributes.BuildElementCollectionAttribute.ChildElementName">
            <summary>
            The name of the child element within the collection.
            </summary>
            <value>
            The name to check for in the XML of the elements in the collection.
            </value>
            <remarks>
            This can be used for validation and schema generation.
            </remarks>
        </member>
        <member name="T:NAnt.Core.Attributes.DateTimeValidatorAttribute">
            <summary>
            Used to indicate that a property should be able to be converted into a 
            <see cref="T:System.DateTime"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Attributes.DateTimeValidatorAttribute.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.DateTimeValidatorAttribute"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Attributes.DateTimeValidatorAttribute.Validate(System.Object)">
            <summary>
            Checks if the specified value can be converted to a <see cref="T:System.DateTime"/>.
            </summary>
            <param name="value">The value to be checked.</param>
            <exception cref="T:NAnt.Core.ValidationException"><paramref name="value"/> cannot be converted to a <see cref="T:System.DateTime"/>.</exception>
        </member>
        <member name="T:NAnt.Core.Attributes.ElementNameAttribute">
            <summary>
            Indicates that class should be treated as a NAnt element.
            </summary>
            <remarks>
            Attach this attribute to a subclass of Element to have NAnt be able
            to recognize it.  The name should be short but must not confict
            with any other element already in use.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Attributes.ElementNameAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cre="ElementNameAttribute"/> 
            with the specified name.
            </summary>
            <param name="name">The name of the element.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="name"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="name"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="P:NAnt.Core.Attributes.ElementNameAttribute.Name">
            <summary>
            Gets or sets the name of the element.
            </summary>
            <value>
            The name of the element.
            </value>
        </member>
        <member name="T:NAnt.Core.Attributes.FileSetAttribute">
            <summary>
            Indicates that a property should be treated as a XML file set for the 
            task.
            </summary>
        </member>
        <member name="M:NAnt.Core.Attributes.FileSetAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.FileSetAttribute"/> with the
            specified name.
            </summary>
            <param name="name">The name of the attribute.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="name"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="name"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="T:NAnt.Core.Attributes.FrameworkConfigurableAttribute">
            <summary>
            Indicates that the value of the property to which the attribute is 
            assigned, can be configured on the framework-level in the NAnt application 
            configuration file.
            </summary>
            <example>
            <para>
            The following example shows a property of which the value can be 
            configured for a specific framework in the NAnt configuration file.
            </para>
            <code lang="C#">
            [FrameworkConfigurable("exename", Required=true)]
            public virtual string ExeName {
                get { return _exeName; }
                set { _exeName = value; }
            }
            </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Attributes.FrameworkConfigurableAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.FrameworkConfigurableAttribute"/>
            with the specified attribute name.
            </summary>
            <param name="name">The name of the framework configuration attribute.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="name"/> is a <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="name"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="P:NAnt.Core.Attributes.FrameworkConfigurableAttribute.Name">
            <summary>
            Gets or sets the name of the framework configuration attribute.
            </summary>
            <value>The name of the framework configuration attribute.</value>
        </member>
        <member name="P:NAnt.Core.Attributes.FrameworkConfigurableAttribute.Required">
            <summary>
            Gets or sets a value indicating whether the configuration attribute 
            is required.
            </summary>
            <value>
            <see langword="true" /> if the configuration attribute is required; 
            otherwise, <see langword="true" />. The default is <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.FrameworkConfigurableAttribute.ExpandProperties">
            <summary>
            Gets or sets a value indicating whether property references should 
            be expanded.
            </summary>
            <value>
            <see langword="true" /> if properties should be expanded; otherwise 
            <see langword="false" />. The default is <see langword="true" />.
            </value>
        </member>
        <member name="T:NAnt.Core.Attributes.FunctionAttribute">
            <summary>
            Indicates that the method should be exposed as a function in NAnt build 
            files.
            </summary>
            <remarks>
            Attach this attribute to a method of a class that derives from 
            <see cref="T:NAnt.Core.FunctionSetBase"/> to have NAnt be able to recognize it.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Attributes.FunctionAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.FunctionAttribute"/>
            class with the specified name.
            </summary>
            <param name="name">The name of the function.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="name"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="name"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="P:NAnt.Core.Attributes.FunctionAttribute.Name">
            <summary>
            Gets or sets the name of the function.
            </summary>
            <value>
            The name of the function.
            </value>
        </member>
        <member name="T:NAnt.Core.Attributes.FunctionSetAttribute">
            <summary>
            Indicates that class should be treated as a set of functions.
            </summary>
            <remarks>
            Attach this attribute to a class that derives from <see cref="T:NAnt.Core.FunctionSetBase"/> 
            to have NAnt be able to recognize it as containing custom functions.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Attributes.FunctionSetAttribute.#ctor(System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.FunctionSetAttribute"/> 
            class with the specified name.
            </summary>
            <param name="prefix">The prefix used to distinguish the functions.</param>
            <param name="category">The category of the functions.</param>
            <exception cref="T:System.ArgumentNullException">
              <para><paramref name="prefix"/> is <see langword="null"/>.</para>
              <para>-or-</para>
              <para><paramref name="category"/> is <see langword="null"/>.</para>
            </exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
              <para><paramref name="prefix"/> is a zero-length <see cref="T:System.String"/>.</para>
              <para>-or-</para>
              <para><paramref name="category"/> is a zero-length <see cref="T:System.String"/>.</para>
            </exception>
        </member>
        <member name="P:NAnt.Core.Attributes.FunctionSetAttribute.Category">
            <summary>
            Gets or sets the category of the function set.
            </summary>
            <value>
            The name of the category of the function set.
            </value>
            <remarks>
            This will be displayed in the user docs.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Attributes.FunctionSetAttribute.Prefix">
            <summary>
            Gets or sets the prefix of all functions in this function set.
            </summary>
            <value>
            The prefix of the functions in this function set.
            </value>
        </member>
        <member name="T:NAnt.Core.Attributes.Int32ValidatorAttribute">
            <summary>
            Indicates that property should be able to be converted into a <see cref="T:System.Int32"/> 
            within the given range.
            </summary>
        </member>
        <member name="M:NAnt.Core.Attributes.Int32ValidatorAttribute.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.Int32ValidatorAttribute"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Attributes.Int32ValidatorAttribute.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.Int32ValidatorAttribute"/> 
            class with the specied minimum and maximum values.
            </summary>
            <param name="minValue">The minimum value.</param>
            <param name="maxValue">The maximum value.</param>
        </member>
        <member name="M:NAnt.Core.Attributes.Int32ValidatorAttribute.Validate(System.Object)">
            <summary>
            Checks whether the specified value can be converted to an <see cref="T:System.Int32"/> 
            and whether the value lies within the range defined by the <see cref="P:NAnt.Core.Attributes.Int32ValidatorAttribute.MinValue"/> 
            and <see cref="P:NAnt.Core.Attributes.Int32ValidatorAttribute.MaxValue"/> properties.
            </summary>
            <param name="value">The value to be checked.</param>
            <exception cref="T:NAnt.Core.ValidationException">
              <para>
              <paramref name="value"/> cannot be converted to an <see cref="T:System.Int32"/>.
              </para>
              <para>-or-</para>
              <para>
              <paramref name="value"/> is not in the range defined by <see cref="P:NAnt.Core.Attributes.Int32ValidatorAttribute.MinValue"/>
              and <see cref="P:NAnt.Core.Attributes.Int32ValidatorAttribute.MaxValue"/>.
              </para>
            </exception>
        </member>
        <member name="P:NAnt.Core.Attributes.Int32ValidatorAttribute.MinValue">
            <summary>
            Gets or sets the minimum value.
            </summary>
            <value>
            The minimum value. The default is <see cref="F:System.Int32.MinValue"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.Int32ValidatorAttribute.MaxValue">
            <summary>
            Gets or sets the maximum value.
            </summary>
            <value>
            The maximum value. The default is <see cref="F:System.Int32.MaxValue"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.Int32ValidatorAttribute.Base">
            <summary>
            The base of the number to validate, which must be 2, 8, 10, or 16.
            </summary>
            <value>
            The base of the number to validate.
            </value>
            <remarks>
            The default is 10.
            </remarks>
        </member>
        <member name="T:NAnt.Core.Attributes.LocationType">
            <summary>
            Defines possible locations in which a task executable can be located.
            </summary>
        </member>
        <member name="F:NAnt.Core.Attributes.LocationType.FrameworkDir">
            <summary>
            Locates the task executable in the current Framework directory.
            </summary>
        </member>
        <member name="F:NAnt.Core.Attributes.LocationType.FrameworkSdkDir">
            <summary>
            Locates the task executable in the current Framework SDK directory.
            </summary>
        </member>
        <member name="T:NAnt.Core.Attributes.ProgramLocationAttribute">
            <summary>
            Indicates the location that a task executable can be located in.
            </summary>
            <remarks>
              <para>
              When applied to a task deriving from <see cref="T:NAnt.Core.Tasks.ExternalProgramBase"/>,
              the program to execute will first be searched for in the designated
              location.
              </para>
              <para>
              If the program does not exist in that location, and the file name is
              not an absolute path then the list of tool paths of the current
              target framework will be searched (in the order in which they are
              defined in the NAnt configuration file).
              </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.Attributes.ProgramLocationAttribute.#ctor(NAnt.Core.Attributes.LocationType)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.ProgramLocationAttribute"/> 
            with the specified location.
            </summary>
            <param type="type">The <see cref="P:NAnt.Core.Attributes.ProgramLocationAttribute.LocationType"/> of the attribute.</param>
        </member>
        <member name="P:NAnt.Core.Attributes.ProgramLocationAttribute.LocationType">
            <summary>
            Gets or sets the <see cref="P:NAnt.Core.Attributes.ProgramLocationAttribute.LocationType"/> of the task.
            </summary>
            <value>
            The location type of the task to which the attribute is assigned.
            </value>
        </member>
        <member name="T:NAnt.Core.Attributes.StringValidatorAttribute">
            <summary>
            Used to indicate whether a <see cref="T:System.String"/> property should allow 
            an empty string value or not.
            </summary>
        </member>
        <member name="M:NAnt.Core.Attributes.StringValidatorAttribute.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.StringValidatorAttribute"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Attributes.StringValidatorAttribute.Validate(System.Object)">
            <summary>
            Checks if the specified value adheres to the rules defined by the 
            properties of the <see cref="T:NAnt.Core.Attributes.StringValidatorAttribute"/>.
            </summary>
            <param name="value">The value to be checked.</param>
            <exception cref="T:NAnt.Core.ValidationException"><paramref name="value"/> is an empty string value and <see cref="P:NAnt.Core.Attributes.StringValidatorAttribute.AllowEmpty"/> is set to <see langword="false"/>.</exception>
        </member>
        <member name="P:NAnt.Core.Attributes.StringValidatorAttribute.AllowEmpty">
            <summary>
            Gets or sets a value indicating whether an empty string or
            <see langword="null" /> should be a considered a valid value.
            </summary>
            <value>
            <see langword="true" /> if an empty string or <see langword="null" />
            should be considered a valid value; otherwise, <see langword="false" />.
            The default is <see langword="true" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.StringValidatorAttribute.Expression">
            <summary>
            Gets or sets a regular expression.  The string will be validated to
                determine if it matches the expression.
            </summary>
            <value>
            <see cref="N:System.Text.RegularExpressions"/>
            </value>
        </member>
        <member name="P:NAnt.Core.Attributes.StringValidatorAttribute.ExpressionErrorMessage">
            <summary>
            An optional error message that can be used to better describe the
            regular expression error.
            </summary>
        </member>
        <member name="T:NAnt.Core.Attributes.TaskAttributeAttribute">
             <summary>
             Indicates that property should be treated as a XML attribute for the 
             task.
             </summary>
             <example>
             Examples of how to specify task attributes
             <code>
             // task XmlType default is string
             [TaskAttribute("out", Required=true)]
             string _out = null; // assign default value here
            
             [TaskAttribute("optimize")]
             [BooleanValidator()]
             // during ExecuteTask you can safely use Convert.ToBoolean(_optimize)
             string _optimize = Boolean.FalseString;
            
             [TaskAttribute("warnlevel")]
             [Int32Validator(0,4)] // limit values to 0-4
             // during ExecuteTask you can safely use Convert.ToInt32(_optimize)
             string _warnlevel = "0";
            
             [BuildElement("sources")]
             FileSet _sources = new FileSet();
             </code>
             NOTE: Attribute values must be of type of string if you want
             to be able to have macros.  The field stores the exact value during
             Initialize.  Just before ExecuteTask is called NAnt will expand
             all the macros with the current values.
             </example>
        </member>
        <member name="M:NAnt.Core.Attributes.TaskAttributeAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.TaskAttributeAttribute"/>
            with the specified attribute name.
            </summary>
            <param name="name">The name of the task attribute.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="name"/> is a <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="name"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="T:NAnt.Core.Attributes.TaskNameAttribute">
            <summary>
            Indicates that class should be treated as a task.
            </summary>
            <remarks>
            Attach this attribute to a subclass of Task to have NAnt be able
            to recognize it.  The name should be short but must not confict
            with any other task already in use.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Attributes.TaskNameAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Attributes.TaskNameAttribute"/> 
            with the specified name.
            </summary>
            <param name="name">The name of the task.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="name"/> is <see langword="null"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="name"/> is a zero-length <see cref="T:System.String"/>.</exception>
        </member>
        <member name="T:NAnt.Core.Element">
            <summary>
            Models a NAnt XML element in the build file.
            </summary>
            <remarks>
            <para>
            Automatically validates attributes in the element based on attributes 
            applied to members in derived classes.
            </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.Element.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Element"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Element.#ctor(NAnt.Core.Element)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Element"/> class
            from the specified element.
            </summary>
            <param name="e">The element that should be used to create a new instance of the <see cref="T:NAnt.Core.Element"/> class.</param>
        </member>
        <member name="M:NAnt.Core.Element.Initialize(System.Xml.XmlNode)">
            <summary>
            Performs default initialization.
            </summary>
            <remarks>
            Derived classes that wish to add custom initialization should override 
            the <see cref="M:Initialize()" /> method.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Element.GetLocation">
            <summary>
            Retrieves the location in the build file where the element is 
            defined.
            </summary>
            <returns>The element's build file location</returns>
        </member>
        <member name="M:NAnt.Core.Element.Log(NAnt.Core.Level,System.String)">
            <summary>
            Logs a message with the given priority.
            </summary>
            <param name="messageLevel">The message priority at which the specified message is to be logged.</param>
            <param name="message">The message to be logged.</param>
            <remarks>
            The actual logging is delegated to the project.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Element.Log(NAnt.Core.Level,System.String,System.Object[])">
            <summary>
            Logs a message with the given priority.
            </summary>
            <param name="messageLevel">The message priority at which the specified message is to be logged.</param>
            <param name="message">The message to log, containing zero or more format items.</param>
            <param name="args">An <see cref="T:System.Object"/> array containing zero or more objects to format.</param>
            <remarks>
            The actual logging is delegated to the project.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Element.InitializeElement(System.Xml.XmlNode)">
            <summary>
            Derived classes should override to this method to provide extra 
            initialization and validation not covered by the base class.
            </summary>
            <param name="elementNode">The XML node of the element to use for initialization.</param>
        </member>
        <member name="M:NAnt.Core.Element.Initialize">
            <summary>
            Derived classes should override to this method to provide extra 
            initialization and validation not covered by the base class.
            </summary>
            <remarks>
            Access to the <see cref="P:NAnt.Core.Element.XmlNode"/> that was used to initialize
            this <see cref="T:NAnt.Core.Element"/> is available through <see cref="P:NAnt.Core.Element.XmlNode"/>.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Element.CopyTo(NAnt.Core.Element)">
            <summary>
            Copies all instance data of the <see cref="T:NAnt.Core.Element"/> to a given
            <see cref="T:NAnt.Core.Element"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Element.Initialize(System.Xml.XmlNode,NAnt.Core.PropertyDictionary,NAnt.Core.FrameworkInfo)">
            <summary>
            Performs initialization using the given set of properties.
            </summary>
        </member>
        <member name="M:NAnt.Core.Element.InitializeXml(System.Xml.XmlNode,NAnt.Core.PropertyDictionary,NAnt.Core.FrameworkInfo)">
            <summary>
            Initializes all build attributes and child elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Element.GetAttributeConfigurationNode(NAnt.Core.FrameworkInfo,System.String)">
            <summary>
            Locates the XML node for the specified attribute in the project 
            configuration node.
            </summary>
            <param name="attributeName">The name of attribute for which the XML configuration node should be located.</param>
            <param name="framework">The framework to use to obtain framework specific information, or <see langword="null" /> if no framework specific information should be used.</param>
            <returns>
            The XML configuration node for the specified attribute, or 
            <see langword="null" /> if no corresponding XML node could be 
            located.
            </returns>
            <remarks>
            If there's a valid current framework, the configuration section for
            that framework will first be searched.  If no corresponding 
            configuration node can be located in that section, the framework-neutral
            section of the project configuration node will be searched.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Element.GetElementNameFromType(System.Type)">
            <summary>
            Returns the <see cref="P:NAnt.Core.Attributes.ElementNameAttribute.Name"/> of the 
            <see cref="T:NAnt.Core.Attributes.ElementNameAttribute"/> assigned to the specified
            <see cref="T:System.Type"/>.
            </summary>
            <param name="type">The <see cref="T:System.Type"/> of which the assigned <see cref="P:NAnt.Core.Attributes.ElementNameAttribute.Name"/> should be retrieved.</param>
            <returns>
            The <see cref="P:NAnt.Core.Attributes.ElementNameAttribute.Name"/> assigned to the specified 
            <see cref="T:System.Type"/> or a null reference is no <see cref="P:NAnt.Core.Attributes.ElementNameAttribute.Name"/>
            is assigned to the <paramref name="type"/>.
            </returns>
        </member>
        <member name="P:NAnt.Core.Element.Parent">
            <summary>
            Gets or sets the parent of the element.
            </summary>
            <value>
            The parent of the element.
            </value>
            <remarks>
            This will be the parent <see cref="T:NAnt.Core.Task"/>, <see cref="T:NAnt.Core.Target"/>, or 
            <see cref="P:NAnt.Core.Element.Project"/> depending on where the element is defined.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Element.Name">
            <summary>
            Gets the name of the XML element used to initialize this element.
            </summary>
            <value>
            The name of the XML element used to initialize this element.
            </value>
        </member>
        <member name="P:NAnt.Core.Element.Project">
            <summary>
            Gets or sets the <see cref="P:NAnt.Core.Element.Project"/> to which this element belongs.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.Element.Project"/> to which this element belongs.
            </value>
        </member>
        <member name="P:NAnt.Core.Element.Properties">
            <summary>
            Gets the properties local to this <see cref="T:NAnt.Core.Element"/> and the 
            <see cref="P:NAnt.Core.Element.Project"/>.
            </summary>
            <value>
            The properties local to this <see cref="T:NAnt.Core.Element"/> and the <see cref="P:NAnt.Core.Element.Project"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Element.NamespaceManager">
            <summary>
            Gets or sets the <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </summary>
            <value>
            The <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </value>
            <remarks>
            The <see cref="P:NAnt.Core.Element.NamespaceManager"/> defines the current namespace 
            scope and provides methods for looking up namespace information.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Element.XmlNode">
            <summary>
            Gets or sets the XML node of the element.
            </summary>
            <value>
            The XML node of the element.
            </value>
        </member>
        <member name="P:NAnt.Core.Element.Location">
            <summary>
            Gets or sets the location in the build file where the element is 
            defined.
            </summary>
            <value>
            The location in the build file where the element is defined.
            </value>
        </member>
        <member name="P:NAnt.Core.Element.CustomXmlProcessing">
            <summary>
            Gets a value indicating whether the element is performing additional
            processing using the <see cref="P:NAnt.Core.Element.XmlNode"/> that was used to 
            initialize the element.
            </summary>
            <value>
            <see langword="false"/>.
            </value>
            <remarks>
            <para>
            Elements that need to perform additional processing of the 
            <see cref="P:NAnt.Core.Element.XmlNode"/> that was used to initialize the element, should
            override this property and return <see langword="true"/>.
            </para>
            <para>
            When <see langword="true"/>, no build errors will be reported for
            unknown nested build elements.
            </para>
            </remarks>
        </member>
        <member name="T:NAnt.Core.Element.AttributeConfigurator">
            <summary>
            Configures an <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/> using meta-data provided by
            assigned attributes.
            </summary>
        </member>
        <member name="M:NAnt.Core.Element.AttributeConfigurator.#ctor(NAnt.Core.Element,System.Xml.XmlNode,NAnt.Core.PropertyDictionary,NAnt.Core.FrameworkInfo)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Element.AttributeConfigurator"/>
            class for the given <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/>.
            </summary>
            <param name="element">The <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/> for which an <see cref="T:NAnt.Core.Element.AttributeConfigurator"/> should be created.</param>
            <param name="elementNode">The <see cref="P:NAnt.Core.Element.XmlNode"/> to initialize the <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/> with.</param>
            <param name="properties">The <see cref="T:NAnt.Core.PropertyDictionary"/> to use for property expansion.</param>
            <param name="targetFramework">The framework that the <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/> should target.</param>
            <exception cref="T:System.ArgumentNullException">
                <para><paramref name="element"/> is <see langword="null"/>.</para>
                <para>-or-</para>
                <para><paramref name="elementNode"/> is <see langword="null"/>.</para>
                <para>-or-</para>
                <para><paramref name="properties"/> is <see langword="null"/>.</para>
            </exception>
        </member>
        <member name="M:NAnt.Core.Element.AttributeConfigurator.CreateChildBuildElement(System.Reflection.PropertyInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Xml.XmlNode,NAnt.Core.PropertyDictionary,NAnt.Core.FrameworkInfo)">
            <summary>
            Creates a child <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/> using property set/get methods.
            </summary>
            <param name="propInf">The <see cref="T:System.Reflection.PropertyInfo"/> instance that represents the property of the current class.</param>
            <param name="getter">A <see cref="T:System.Reflection.MethodInfo"/> representing the get accessor for the property.</param>
            <param name="setter">A <see cref="T:System.Reflection.MethodInfo"/> representing the set accessor for the property.</param>
            <param name="xml">The <see cref="P:NAnt.Core.Element.XmlNode"/> used to initialize the new <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/> instance.</param>
            <param name="properties">The collection of property values to use for macro expansion.</param>
            <param name="framework">The <see cref="T:NAnt.Core.FrameworkInfo"/> from which to obtain framework-specific information.</param>
            <returns>The <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/> child.</returns>
        </member>
        <member name="M:NAnt.Core.Element.AttributeConfigurator.CreateAttributeSetter(System.Type)">
            <summary>
            Creates an <see cref="T:NAnt.Core.Element.AttributeConfigurator.IAttributeSetter"/> for the given 
            <see cref="T:System.Type"/>.
            </summary>
            <param name="attributeType">The <see cref="T:System.Type"/> for which an <see cref="T:NAnt.Core.Element.AttributeConfigurator.IAttributeSetter"/> should be created.</param>
            <returns>
            An <see cref="T:NAnt.Core.Element.AttributeConfigurator.IAttributeSetter"/> for the given <see cref="T:System.Type"/>.
            </returns>
        </member>
        <member name="F:NAnt.Core.Element.AttributeConfigurator._element">
            <summary>
            Holds the <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/> that should be initialized.
            </summary>
        </member>
        <member name="F:NAnt.Core.Element.AttributeConfigurator._elementXml">
            <summary>
            Holds the <see cref="P:NAnt.Core.Element.XmlNode"/> that should be used to initialize
            the <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/>.
            </summary>
        </member>
        <member name="F:NAnt.Core.Element.AttributeConfigurator._properties">
            <summary>
            Holds the dictionary that should be used for property 
            expansion.
            </summary>
        </member>
        <member name="F:NAnt.Core.Element.AttributeConfigurator._targetFramework">
            <summary>
            Holds the framework that should be targeted by the 
            <see cref="P:NAnt.Core.Element.AttributeConfigurator.Element"/> that we're configuring, or
            <see langword="null"/> if there's no current target
            framework.
            </summary>
        </member>
        <member name="F:NAnt.Core.Element.AttributeConfigurator._unprocessedAttributes">
            <summary>
            Holds the names of the attributes that still need to be 
            processed.
            </summary>
        </member>
        <member name="F:NAnt.Core.Element.AttributeConfigurator._unprocessedChildNodes">
            <summary>
            Holds the names of the child nodes that still need to be 
            processed.
            </summary>
        </member>
        <member name="F:NAnt.Core.Element.AttributeConfigurator.logger">
            <summary>
            Holds the logger for the current class.
            </summary>
        </member>
        <member name="F:NAnt.Core.Element.AttributeConfigurator.AttributeSetters">
            <summary>
            Holds the cache of <see cref="T:NAnt.Core.Element.AttributeConfigurator.IAttributeSetter"/> instances.
            </summary>
        </member>
        <member name="P:NAnt.Core.Element.AttributeConfigurator.NamespaceManager">
            <summary>
            Gets the <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </summary>
            <value>
            The <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </value>
            <remarks>
            The <see cref="P:NAnt.Core.Element.AttributeConfigurator.NamespaceManager"/> defines the current namespace 
            scope and provides methods for looking up namespace information.
            </remarks>
        </member>
        <member name="T:NAnt.Core.Element.AttributeConfigurator.IAttributeSetter">
            <summary>
            Internal interface used for setting element attributes. 
            </summary>
        </member>
        <member name="T:NAnt.Core.Configuration.DirList">
            <summary>
            Represents an explicitly named list of directories.
            </summary>
            <remarks>
            A <see cref="T:NAnt.Core.Configuration.DirList"/> is useful when you want to capture a list of
            directories regardless whether they currently exist.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Configuration.DirList.Directory">
            <summary>
            The base of the directory of this dirlist. The default is the project
            base directory.
            </summary>
        </member>
        <member name="P:NAnt.Core.Configuration.ManagedExecutionMode.Environment">
            <summary>
            Gets the collection of environment variables that should be passed
            to external programs that are launched.
            </summary>
            <value>
            <summary>
            The collection of environment variables that should be passed
            to external programs that are launched.
            </summary>
            </value>
        </member>
        <member name="P:NAnt.Core.Configuration.RuntimeEngine.Arguments">
            <summary>
            The command-line arguments for the runtime engine.
            </summary>
        </member>
        <member name="T:NAnt.Core.Extensibility.ExtensionAssembly">
            <summary>
            Represents an <see cref="P:NAnt.Core.Extensibility.ExtensionAssembly.Assembly"/> in which one or more extensions
            are found.
            </summary>
        </member>
        <member name="M:NAnt.Core.Extensibility.ExtensionAssembly.#ctor(System.Reflection.Assembly)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/>
            class for a given <see cref="P:NAnt.Core.Extensibility.ExtensionAssembly.Assembly"/>.
            </summary>
            <remarks>
            The <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> instance is not cached for
            future use. If this is required, use <see cref="M:NAnt.Core.Extensibility.ExtensionAssembly.Create(System.Reflection.Assembly)"/>.
            </remarks>
            <param name="assembly">The <see cref="P:NAnt.Core.Extensibility.ExtensionAssembly.Assembly"/> for which to construct an <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/>.</param>
        </member>
        <member name="M:NAnt.Core.Extensibility.ExtensionAssembly.Create(System.Reflection.Assembly)">
            <summary>
            Creates an  <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> for the specified
            <see cref="P:NAnt.Core.Extensibility.ExtensionAssembly.Assembly"/> and caches it for future use.
            </summary>
            <remarks>
            If an <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> for the same assembly is
            available in the cache, then this cached instance is returned.
            </remarks>
            <param name="assembly">The <see cref="P:NAnt.Core.Extensibility.ExtensionAssembly.Assembly"/> for which to construct an <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/>.</param>
            <returns>
            The <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> for the specified <see cref="P:NAnt.Core.Extensibility.ExtensionAssembly.Assembly"/>.
            </returns>
        </member>
        <member name="P:NAnt.Core.Extensibility.ExtensionAssembly.Assembly">
            <summary>
            Gets the <see cref="P:NAnt.Core.Extensibility.ExtensionAssembly.Assembly"/> containing extensions.
            </summary>
        </member>
        <member name="M:NAnt.Core.Extensibility.ExtensionBuilder.#ctor(NAnt.Core.Extensibility.ExtensionAssembly)">
            <summary>
            Initializes a instance of the <see cref="T:NAnt.Core.Extensibility.ExtensionBuilder"/> 
            class for an extension in a given <see cref="P:NAnt.Core.Extensibility.ExtensionBuilder.ExtensionAssembly"/>.
            </summary>
            <param name="extensionAssembly">The <see cref="P:NAnt.Core.Extensibility.ExtensionBuilder.ExtensionAssembly"/> in which the extension is found.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="extensionAssembly"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:NAnt.Core.Extensibility.ExtensionBuilder.#ctor(System.Reflection.Assembly)">
            <summary>
            Initializes a instance of the <see cref="T:NAnt.Core.Extensibility.ExtensionBuilder"/> 
            class for an extension in a given <see cref="P:NAnt.Core.Extensibility.ExtensionBuilder.Assembly"/>.
            </summary>
            <param name="assembly">The <see cref="P:NAnt.Core.Extensibility.ExtensionBuilder.Assembly"/> in which the extension is found.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="assembly"/> is <see langword="null"/>.</exception>
        </member>
        <member name="P:NAnt.Core.Extensibility.ExtensionBuilder.ExtensionAssembly">
            <summary>
            Gets the <see cref="P:NAnt.Core.Extensibility.ExtensionBuilder.ExtensionAssembly"/> in which the extension
            was found.
            </summary>
        </member>
        <member name="P:NAnt.Core.Extensibility.ExtensionBuilder.Assembly">
            <summary>
            Gets the <see cref="P:NAnt.Core.Extensibility.ExtensionBuilder.Assembly"/> from which the extension will 
            be created.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.Extensibility.ExtensionBuilder.Assembly"/> containing the extension.
            </value>
        </member>
        <member name="M:NAnt.Core.Extensibility.PluginConsumerAttribute.#ctor(System.Type)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Extensibility.PluginConsumerAttribute"/> 
            with the specified type.
            </summary>
            <param name="type">The type of the <see cref="T:NAnt.Core.Extensibility.IPlugin"/> to consume.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="type"/> is <see langword="null"/>.</exception>
        </member>
        <member name="T:NAnt.Core.Extensibility.PluginScanner">
            <summary>
            Responsible for scanning types for plugins, and maintaining a cache of
            <see cref="T:NAnt.Core.Extensibility.PluginBuilder"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Extensibility.PluginScanner.ScanTypeForPlugins(NAnt.Core.Extensibility.ExtensionAssembly,System.Type,NAnt.Core.Task)">
            <summary>
            Scans a given <see cref="T:System.Type"/> for plugins.
            </summary>
            <param name="extensionAssembly">The <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> containing the <see cref="T:System.Type"/> to scan.</param>
            <param name="type">The <see cref="T:System.Type"/> to scan.</param>
            <param name="task">The <see cref="T:NAnt.Core.Task"/> which will be used to output messages to the build log.</param>
            <returns>
            <see langword="true"/> if <paramref name="type"/> represents a
            <see cref="T:NAnt.Core.Extensibility.IPlugin"/>; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Extensibility.PluginScanner.RegisterPlugins(NAnt.Core.Extensibility.IPluginConsumer)">
            <summary>
            Registers matching plugins for the specified <see cref="T:NAnt.Core.Extensibility.IPluginConsumer"/>.
            </summary>
            <param name="consumer">The <see cref="T:NAnt.Core.Extensibility.IPluginConsumer"/> which plugins must be registered for.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="consumer"/> is <see langword="null"/>.</exception>
        </member>
        <member name="T:NAnt.Core.Filters.ChainableReader">
             <summary>
             Functions as a chainable TextReader
             </summary>
             <remarks>
             Implements a abstraction over a TextReader that allows the class to represent
             either a TextReader or another ChainableReader to which it is chained.
            
             By passing a ChainableReader as a constructor paramater it is possiable to
             chain many ChainableReaders together.  The last ChainableReader in the chain must
             be based on a TextReader.
             </remarks>
        </member>
        <member name="M:NAnt.Core.Filters.ChainableReader.Chain(NAnt.Core.Filters.ChainableReader)">
            <summary>
            Makes it so all calls to Read and Peek are passed  the ChainableReader
            passed as a parameter.
            </summary>
            <param name="parentChainedReader">ChainableReader to forward calls to</param>
        </member>
        <member name="M:NAnt.Core.Filters.ChainableReader.Chain(System.IO.TextReader)">
            <summary>
            Makes it so all calls to Read and Peek are passed the TextReader
            passed as a parameter.
            </summary>
            <param name="baseReader">TextReader to forward calls to</param>
        </member>
        <member name="M:NAnt.Core.Filters.ChainableReader.Peek">
            <summary>
            Forwards Peek calls to the TextReader or ChainableReader passed in the corresponding constructor.
            </summary>
            <returns>Character or -1 if end of stream</returns>
        </member>
        <member name="M:NAnt.Core.Filters.ChainableReader.Read">
            <summary>
            Forwards Read calls to the TextReader or ChainableReader passed in the corresponding constructor.
            </summary>
            <returns>
            Character or -1 if end of stream.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.ChainableReader.Close">
            <summary>
            Closes the reader.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.ChainableReader.Dispose">
            <summary>
            Calls close and supresses the finalizer for the object.
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.ChainableReader.Base">
            <summary>
            Gets a value indicating if the reader is backed by a stream in the 
            chain.
            </summary>
            <value>
            <see langword="true" /> if the reader is backed by a stream;
            otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="T:NAnt.Core.Filters.Filter">
            <summary>
            Allows a file's content to be modified while performing an operation.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.Filter.InitializeFilter">
            <summary>
            Called after construction and after properties are set. Allows
            for filter initialization.
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.Filter.IfDefined">
            <summary>
            If <see langword="true" /> then the filter will be used; otherwise, 
            skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.Filter.UnlessDefined">
            <summary>
            Opposite of <see cref="P:NAnt.Core.Filters.Filter.IfDefined"/>. If <see langword="false"/> 
            then the filter will be executed; otherwise, skipped. The default 
            is <see langword="false"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilder.#ctor(System.Reflection.Assembly,System.String)">
            <summary>
            Creates a new instance of the <see cref="T:NAnt.Core.Filters.FilterBuilder"/> class
            for the specified <see cref="T:NAnt.Core.Filters.Filter"/> class in the specified
            <see cref="T:System.Reflection.Assembly"/>.
            </summary>
            <remarks>
            An <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> for the specified <see cref="T:System.Reflection.Assembly"/>
            is cached for future use.
            </remarks>
            <param name="assembly">The <see cref="T:System.Reflection.Assembly"/> containing the <see cref="T:NAnt.Core.Filters.Filter"/>.</param>
            <param name="className">The class representing the <see cref="T:NAnt.Core.Filters.Filter"/>.</param>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilder.#ctor(NAnt.Core.Extensibility.ExtensionAssembly,System.String)">
            <summary>
            Creates a new instance of the <see cref="T:NAnt.Core.Filters.FilterBuilder"/> class
            for the specified <see cref="T:NAnt.Core.Filters.Filter"/> class in the specified
            <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/>.
            </summary>
            <param name="extensionAssembly">The <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> containing the <see cref="T:NAnt.Core.Filters.Filter"/>.</param>
            <param name="className">The class representing the <see cref="T:NAnt.Core.Filters.Filter"/>.</param>
        </member>
        <member name="P:NAnt.Core.Filters.FilterBuilder.ClassName">
            <summary>
            Gets the name of the <see cref="T:NAnt.Core.Filters.Filter"/> class that can be created
            using this <see cref="T:NAnt.Core.Filters.FilterBuilder"/>.
            </summary>
            <value>
            The name of the <see cref="T:NAnt.Core.Filters.Filter"/> class that can be created using
            this <see cref="T:NAnt.Core.Filters.FilterBuilder"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Filters.FilterBuilder.FilterName">
            <summary>
            Gets the name of the filter which the <see cref="T:NAnt.Core.Filters.FilterBuilder"/>
            can create.
            </summary>
            <value>
            The name of the task which the <see cref="T:NAnt.Core.TaskBuilder"/> can 
            create.
            </value>
        </member>
        <member name="T:NAnt.Core.Filters.FilterBuilderCollection">
            <summary>
            Contains a strongly typed collection of <see cref="T:NAnt.Core.Filters.FilterBuilder"/> objects.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Filters.FilterBuilderCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.#ctor(NAnt.Core.Filters.FilterBuilderCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Filters.FilterBuilderCollection"/> class
            with the specified <see cref="T:NAnt.Core.Filters.FilterBuilderCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.#ctor(NAnt.Core.Filters.FilterBuilder[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Filters.FilterBuilderCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.Filters.FilterBuilder"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.Add(NAnt.Core.Filters.FilterBuilder)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Filters.FilterBuilder"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Filters.FilterBuilder"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.AddRange(NAnt.Core.Filters.FilterBuilder[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Filters.FilterBuilder"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Filters.FilterBuilder"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.AddRange(NAnt.Core.Filters.FilterBuilderCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Filters.FilterBuilderCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Filters.FilterBuilderCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.Contains(NAnt.Core.Filters.FilterBuilder)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Filters.FilterBuilder"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Filters.FilterBuilder"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.Contains(System.String)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Filters.FilterBuilder"/> for the specified 
            task is in the collection.
            </summary>
            <param name="taskName">The name of task for which the <see cref="T:NAnt.Core.Filters.FilterBuilder"/> should be located in the collection.</param> 
            <returns>
            <see langword="true"/> if a <see cref="T:NAnt.Core.Filters.FilterBuilder"/> for 
            the specified task is found in the collection; otherwise, 
            <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.CopyTo(NAnt.Core.Filters.FilterBuilder[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.IndexOf(NAnt.Core.Filters.FilterBuilder)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Filters.FilterBuilder"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Filters.FilterBuilder"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Filters.FilterBuilder"/>. If the <see cref="T:NAnt.Core.Filters.FilterBuilder"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.Insert(System.Int32,NAnt.Core.Filters.FilterBuilder)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Filters.FilterBuilder"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Filters.FilterBuilder"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Filters.FilterBuilderEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderCollection.Remove(NAnt.Core.Filters.FilterBuilder)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Filters.FilterBuilder"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Filters.FilterBuilderCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="P:NAnt.Core.Filters.FilterBuilderCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.Filters.FilterBuilder"/> for the specified task.
            </summary>
            <param name="filterName">The name of the filter for which the <see cref="T:NAnt.Core.Filters.FilterBuilder"/> should be located in the collection.</param> 
        </member>
        <member name="T:NAnt.Core.Filters.FilterBuilderEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Filters.FilterBuilder"/> elements of a <see cref="T:NAnt.Core.Filters.FilterBuilderCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderEnumerator.#ctor(NAnt.Core.Filters.FilterBuilderCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Filters.FilterBuilderEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Filters.FilterBuilderCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterBuilderEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.FilterBuilderEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Filters.FilterChain">
            <summary>
            Represent a chain of NAnt filters that can be applied to a <see cref="T:NAnt.Core.Task"/>.
            </summary>
            <remarks>
            <para>
            A FilterChain represents a collection of one or more filters that can 
            be appled to a <see cref="T:NAnt.Core.Task"/> such as the <see cref="T:NAnt.Core.Tasks.CopyTask"/>.
            In the case of the <see cref="T:NAnt.Core.Tasks.CopyTask"/>, the contents of the copied 
            files are filtered through each filter specified in the filter chain. 
            Filtering occurs in the order the filters are specified with filtered
            output of one filter feeding into another.
            </para>
            <para>
               :--------:---&gt;:----------:---&gt;:----------: ... :----------:---&gt;:--------:<br/>
               :.Source.:---&gt;:.Filter 1.:---&gt;:.Filter 2.: ... :.Filter n.:---&gt;:.target.:<br/>
               :--------:---&gt;:----------:---&gt;:----------: ... :----------:---&gt;:--------:<br/>
            </para>
            <para>
            A list of all filters that come with NAnt is available <see href="../filters/index.html">here</see>.
            </para>
            <para>
            The following tasks support filtering with a FilterChain:
            </para>
            <list type="bullet">
              <item>
                <description><see cref="T:NAnt.Core.Tasks.CopyTask"/></description>
              </item>
              <item>
                <description><see cref="T:NAnt.Core.Tasks.MoveTask"/></description>
              </item>
            </list>
            </remarks>
            <example>
              <para>
              Replace all occurrences of @NOW@ with the current date/time and 
              replace tabs with spaces in all copied files.
              </para>
              <code>
                <![CDATA[
            <property name="NOW" value="${datetime::now()}" />
            <copy todir="out">
                <fileset basedir="in">
                    <include name="**/*" />
                </fileset>
                <filterchain>
                    <replacetokens>
                        <token key="NOW" value="${TODAY}" />
                    </replacetokens>
                    <tabstospaces />
                </filterchain>
            </copy>
                ]]>
              </code>
            </example>
        </member>
        <member name="T:NAnt.Core.DataTypeBase">
            <summary>
            Provides the abstract base class for types.
            </summary>
        </member>
        <member name="M:NAnt.Core.DataTypeBase.Reset">
            <summary>
            Should be overridden by derived classes. clones the referenced types 
            data into the current instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.DataTypeBase.CopyTo(NAnt.Core.DataTypeBase)">
            <summary>
            Copies all instance data of the <see cref="T:NAnt.Core.DataTypeBase"/> to a given
            <see cref="T:NAnt.Core.DataTypeBase"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.DataTypeBase.ID">
            <summary>
            The ID used to be referenced later.
            </summary>
        </member>
        <member name="P:NAnt.Core.DataTypeBase.RefID">
            <summary>
            The ID to use as the reference.
            </summary>
        </member>
        <member name="P:NAnt.Core.DataTypeBase.CanBeReferenced">
            <summary>
            Gets a value indicating whether a reference to the type can be
            defined.
            </summary>
            <remarks>
            Only types with an <see cref="T:NAnt.Core.Attributes.ElementNameAttribute"/> assigned 
            to it, can be referenced.
            </remarks>
        </member>
        <member name="P:NAnt.Core.DataTypeBase.Name">
            <summary>
            Gets the name of the datatype.
            </summary>
            <value>
            The name of the datatype.
            </value>
        </member>
        <member name="M:NAnt.Core.Filters.FilterChain.InitializeXml(System.Xml.XmlNode,NAnt.Core.PropertyDictionary,NAnt.Core.FrameworkInfo)">
            <summary>
            Initializes all build attributes and child elements.
            </summary>
            <remarks>
            <see cref="T:NAnt.Core.Filters.FilterChain"/> needs to maintain the order in which the
            filters are specified in the build file.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Filters.FilterChain.GetBaseFilter(NAnt.Core.Filters.PhysicalTextReader)">
            <summary>
            Used to to instantiate and return the chain of stream based filters.
            </summary>
            <param name="physicalTextReader">The <see cref="T:NAnt.Core.Filters.PhysicalTextReader"/> that is the source of input to the filter chain.</param>
            <remarks>
            The <paramref name="physicalTextReader"/> is the first <see cref="T:NAnt.Core.Filters.Filter"/>
            in the chain, which is based on a physical stream that feeds the chain.
            </remarks>
            <returns>
            The last <see cref="T:NAnt.Core.Filters.Filter"/> in the chain.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterChain.IsNullOrEmpty(NAnt.Core.Filters.FilterChain)">
            <summary>
            Determines whether a given FilterChain is null or empty.
            </summary>
            <returns>
            <c>true</c> if <paramref name="filterChain"/> is null or empty;
            otherwise, <c>false</c>.
            </returns>
            <param name='filterChain'>
            The FilterChain to check.
            </param>
        </member>
        <member name="P:NAnt.Core.Filters.FilterChain.Filters">
            <summary>
            The filters to apply.
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.FilterChain.InputEncoding">
            <summary>
            The encoding to assume when filter-copying files. The default is
            system's current ANSI code page.
            </summary>
        </member>
        <member name="T:NAnt.Core.Filters.FilterChain.FilterChainConfigurator">
            <summary>
            Configurator that initializes filters in the order in which they've
            been specified in the build file.
            </summary>
        </member>
        <member name="T:NAnt.Core.Filters.FilterCollection">
            <summary>
            Contains a collection of <see cref="T:NAnt.Core.Filters.Filter"/> elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Filters.FilterCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.#ctor(NAnt.Core.Filters.FilterCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Filters.FilterCollection"/> class
            with the specified <see cref="T:NAnt.Core.Filters.FilterCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.#ctor(NAnt.Core.Filters.Filter[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Filters.FilterCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.Filters.Filter"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.Add(NAnt.Core.Filters.Filter)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Filters.Filter"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Filters.Filter"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.AddRange(NAnt.Core.Filters.Filter[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Filters.Filter"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Filters.Filter"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.AddRange(NAnt.Core.Filters.FilterCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Filters.FilterCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Filters.FilterCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.Contains(NAnt.Core.Filters.Filter)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Filters.Filter"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Filters.Filter"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.CopyTo(NAnt.Core.Filters.Filter[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.IndexOf(NAnt.Core.Filters.Filter)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Filters.Filter"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Filters.Filter"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Filters.Filter"/>. If the <see cref="T:NAnt.Core.Filters.Filter"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.Insert(System.Int32,NAnt.Core.Filters.Filter)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Filters.Filter"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Filters.Filter"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Filters.FilterEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterCollection.Remove(NAnt.Core.Filters.Filter)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Filters.Filter"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Filters.FilterCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="T:NAnt.Core.Filters.FilterEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Filters.Filter"/> elements of a <see cref="T:NAnt.Core.Filters.FilterCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.FilterEnumerator.#ctor(NAnt.Core.Filters.FilterCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Filters.FilterEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Filters.FilterCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Filters.FilterEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Filters.FilterEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.FilterEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Filters.PhysicalTextReader">
            <summary>
            Represents a physical <see cref="T:System.IO.TextReader"/>.  That is a reader based 
            on a stream.
            </summary>
            <remarks>
            Used by <see cref="T:NAnt.Core.Filters.ChainableReader"/> to represent a <see cref="T:NAnt.Core.Filters.Filter"/>
            based on a <see cref="T:System.IO.TextReader"/> in the chain.
            </remarks>
        </member>
        <member name="T:NAnt.Core.Filters.ExpandProperties">
            <summary>
            Parses NAnt properties and expressions
            </summary>
            <remarks>
            <para>
            This filter parses any NAnt properties or expressions found in its input, 
            inlining their values in its output.
            </para>
            <para>
            Note: Due to limitations on buffering, expressions longer than 2048 
            characters are not guaranteed to be expanded.
            </para>
            Filters are intended to be used as a element of a <see cref="T:NAnt.Core.Filters.FilterChain"/>.
            </remarks>
            <example>
              <para>Replace all properties with their corresponding values.</para>
              <code>
                <![CDATA[
            <expandproperties />
                ]]>
              </code>
            </example>
        </member>
        <member name="F:NAnt.Core.Filters.ExpandProperties._buffer">
            <summary>
            Holds data for expression expansion between input and output.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.ExpandProperties.InitializeFilter">
            <summary>
            Called after construction and after properties are set. Allows
            for filter initialization.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.ExpandProperties.Read">
            <summary>
            Reads the next character applying the filter logic.
            </summary>
            <returns>Char as an int or -1 if at the end of the stream</returns>
        </member>
        <member name="M:NAnt.Core.Filters.ExpandProperties.Peek">
            <summary>
            Reads the next character applying the filter logic without advancing the current position in the stream.
            </summary>
            <returns>Char as an int or -1 if at the end of the stream</returns>
        </member>
        <member name="M:NAnt.Core.Filters.ExpandProperties.Advance">
            <summary>
            Moves to the next character.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.ExpandProperties.ReplenishBuffer">
            <summary>
            Refills the buffer, running our input through 
            <see cref="M:PropertyDictionary.ExpandProperties(string, Location)" />.)
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.ExpandProperties.AtEnd">
            <summary>
            Determines whether we've passed the end of our data.
            </summary>
        </member>
        <member name="T:NAnt.Core.Filters.ReplaceString">
            <summary>
            Replaces all occurrences of a given string in the original input with 
            user-supplied replacement string.
            </summary>
            <remarks>
            <para>
            This filter replaces all occurrences of a given string in the original 
            input stream with a user-supplied replacement string. By default string 
            comparisons are case sensitive but this can be changed by setting the 
            optional <see cref="P:NAnt.Core.Filters.ReplaceString.IgnoreCase"/> attribute to <see langword="true"/>.
            </para>
            <para>
            To use this filter specify the string to be replaced with the 
            <see cref="P:NAnt.Core.Filters.ReplaceString.From"/> attribute and the string to replace it with using the 
            <see cref="P:NAnt.Core.Filters.ReplaceString.To"/> attribute. 
            </para>
            <para>
            Filters are intended to be used as a element of a <see cref="T:NAnt.Core.Filters.FilterChain"/>.
            </para>
            </remarks>
            <example>
              <para>
              Replace all occurrences of "3.14" with "PI".
              </para>
              <code>
                <![CDATA[
            <replacestring from="3.14" to="PI" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Replace all occurrences of "string", "String", etc. with "System.String".
              </para>
              <code>
                <![CDATA[
            <replacestring from="String" to="System.String" ignorecase="true" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceString.Chain(NAnt.Core.Filters.ChainableReader)">
            <summary>
            Construct that allows this filter to be chained to the one
            in the parameter chainedReader.
            </summary>
            <param name="chainedReader">Filter that the filter will be chained to</param>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceString.Read">
            <summary>
            Reads the next character applying the filter logic.
            </summary>
            <returns>Char as an int or -1 if at the end of the stream</returns>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceString.Peek">
             <summary>
             Reads the next character applying the filter logic without
             advancing the current position in the stream.
            
             Peek currently is not supported.
             </summary>
             <returns>
             Char as an int or -1 if at the end of the stream.
             </returns>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceString.FindString(System.Int32,System.Boolean@,System.String@)">
            <summary>
            <para>
            Helper function used to search for the filter's traget string. If the string
            is found the result is true. If the string was not found false is returned and
            nonMatchingChars contains the characters that were read to determine if the 
            string is present.
            </para>
            
            <para>
            It is assumed the stream is positioned at the character after the first character 
            in the target string.
            </para>
            </summary>
            <param name="startChar">First character in target string</param>
            <param name="streamEnded">Ture if the stream ended while search for the string.</param>
            <param name="nonMatchingChars">Characters that were read while searching for the string.</param>
            <returns></returns>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceString.GetNextCharacter(NAnt.Core.Filters.ReplaceString.AcquireCharDelegate)">
            <summary>
            Returns the next character in the stream replacing the specified character. Using the
            <see cref="T:NAnt.Core.Filters.ReplaceString.AcquireCharDelegate"/> allows for the same implementation for Read and Peek
            </summary>
            <param name="AcquireChar">Delegate to acquire the next character. (Read/Peek)</param>
            <returns>Char as an int or -1 if at the end of the stream</returns>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceString.CompareCharacters(System.Int32,System.Int32)">
            <summary>
            Compares to characters taking into account the _ignoreCase flag.
            </summary>
            <param name="char1"></param>
            <param name="char2"></param>
            <returns></returns>
        </member>
        <member name="P:NAnt.Core.Filters.ReplaceString.From">
            <summary>
            The string to be replaced.
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.ReplaceString.To">
            <summary>
            The new value for the replaced string.
            Am empty string is permissible.
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.ReplaceString.IgnoreCase">
            <summary>
            Determines if case will be ignored.
            The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Filters.ReplaceString.AcquireCharDelegate">
            <summary>
            Delegate for Read and Peek. Allows the same implementation
            to be used for both methods.
            </summary>
        </member>
        <member name="T:NAnt.Core.Filters.ReplaceTokens">
            <summary>
            Replaces tokens in the original input with user-supplied values.
            </summary>
            <remarks>
            <para>
            This filter replaces all token surrounded by a beginning and ending
            token. The default beginning and ending tokens both default to '@'. The 
            optional <see cref="P:NAnt.Core.Filters.ReplaceTokens.BeginToken"/> and <see cref="P:NAnt.Core.Filters.ReplaceTokens.EndToken"/> attributes
            can be specified to change either token. By default string 
            comparisons are case sensitive but this can be changed by setting the 
            optional <see cref="P:NAnt.Core.Filters.ReplaceTokens.IgnoreCase"/> attribute to <see langword="true"/>.
            </para>
            <para>
            Tokens are specified by using the <see cref="T:NAnt.Core.Types.Token"/> element. It is 
            possible to specify from 1 to n tokens and replacement values. Values can 
            be any valid NAnt expression.
            </para>
            <para>
            Filters are intended to be used as a element of a <see cref="T:NAnt.Core.Filters.FilterChain"/>.
            </para>
            </remarks>
            <example>
              <para>
              Replace all occurrences of the string @DATE@ with the value of property
              "TODAY".
              </para>
              <code>
                <![CDATA[
            <replacetokens>
                <token key="DATE" value="${TODAY}" />
            </replacetokens>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Replace all occurrences of the string &lt;DATE&gt; with the value of 
              property "TODAY".
              </para>
              <code>
                <![CDATA[
            <replacetokens begintoken="&lt;" endtoken="&gt;">
                <token key="DATE" value="${TODAY}" />
            </replacetokens>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceTokens.Chain(NAnt.Core.Filters.ChainableReader)">
            <summary>
            Construct that allows this filter to be chained to the one
            in the parameter chainedReader.
            </summary>
            <param name="chainedReader">Filter that the filter will be chained to</param>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceTokens.Read">
            <summary>
            Reads the next character applying the filter logic.
            </summary>
            <returns>Char as an int or -1 if at the end of the stream</returns>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceTokens.Peek">
             <summary>
             Reads the next character applying the filter logic without
             advancing the current position in the stream.
            
             Peek currently is not supported.
             </summary>
             <returns>
             Char as an int or -1 if at the end of the stream.
             </returns>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceTokens.Initialize">
            <summary>
            Initialize the filter by setting its parameters.
            </summary>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceTokens.FindTokenContents(System.Boolean@,System.Boolean@,System.Boolean@)">
            <summary>
            Finds a token give that we are positioned at a beginning token character.  Either a
            token replacement is returned or the characters that were read looking for the token.
            </summary>
            <param name="tokenNotFound">A token was not found</param>
            <param name="unknownToken">A token was found by there is no replacement</param>
            <param name="streamEnded">The stream ended while looking for the token</param>
            <returns>Either the replacement token or the characters that were read looking for the token</returns>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceTokens.GetNextCharacter(NAnt.Core.Filters.ReplaceTokens.AcquireCharDelegate)">
            <summary>
            Returns the next character in the stream replacing the specified character. Using the
            <see cref="T:NAnt.Core.Filters.ReplaceTokens.AcquireCharDelegate"/> allows for the same implementation for Read and Peek
            </summary>
            <param name="AcquireChar">Delegate to acquire the next character. (Read/Peek)</param>
            <returns>Char as an int or -1 if at the end of the stream</returns>
        </member>
        <member name="M:NAnt.Core.Filters.ReplaceTokens.CompareCharacters(System.Int32,System.Int32)">
            <summary>
            Compares to characters taking <see cref="P:NAnt.Core.Filters.ReplaceTokens.IgnoreCase"/> into account.
            </summary>
            <param name="char1"></param>
            <param name="char2"></param>
            <returns>
            </returns>
        </member>
        <member name="P:NAnt.Core.Filters.ReplaceTokens.BeginToken">
            <summary>
            Marks the beginning of a token. The default is "@".
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.ReplaceTokens.EndToken">
            <summary>
            Marks the end of a token. The default is "@".
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.ReplaceTokens.Tokens">
            <summary>
            Tokens and replacement values.
            </summary>
        </member>
        <member name="P:NAnt.Core.Filters.ReplaceTokens.IgnoreCase">
            <summary>
            Determines if case will be ignored.
            The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Filters.ReplaceTokens.AcquireCharDelegate">
            <summary>
            Delegate for Read and Peek. Allows the same implementation
            to be used for both methods.
            </summary>
        </member>
        <member name="T:NAnt.Core.Filters.TabsToSpaces">
            <summary>
            Converts tabs to spaces.
            </summary>
            <remarks>
            <para>
            The <see cref="T:NAnt.Core.Filters.TabsToSpaces"/> filter replaces tabs in a text file 
            with spaces.
            </para>
            <para>
            Filters are intended to be used as a element of a <see cref="T:NAnt.Core.Filters.FilterChain"/>.
            </para>
            </remarks>
            <example>
             <para>Replace all tabs with four spaces.</para>
             <code>
               <![CDATA[
            <tabtospaces tablength="4" />
               ]]>
             </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Filters.TabsToSpaces.Chain(NAnt.Core.Filters.ChainableReader)">
            <summary>
            Construct that allows this filter to be chained to the one
            in the parameter chainedReader.
            </summary>
            <param name="chainedReader">Filter that the filter will be chained to</param>
        </member>
        <member name="M:NAnt.Core.Filters.TabsToSpaces.Peek">
            <summary>
            <para>Retrieves the next character with moving the position in the stream.</para>
            <note>This method is not implemented</note>
            </summary>
            <returns>-1 if end of stream otherwise a character</returns>
        </member>
        <member name="M:NAnt.Core.Filters.TabsToSpaces.Read">
            <summary>
            <para>Retrieves the next character in the stream.</para>
            </summary>
            <returns>-1 if end of stream otherwise a character</returns>
        </member>
        <member name="M:NAnt.Core.Filters.TabsToSpaces.GetNextCharacter(NAnt.Core.Filters.TabsToSpaces.AcquireCharDelegate)">
            <summary>
            Returns the next character in the stream replacing the specified character. Using the
            <see cref="T:NAnt.Core.Filters.TabsToSpaces.AcquireCharDelegate"/> allows for the same implementation for Read and Peek
            </summary>
            <param name="AcquireChar">Delegate to acquire the next character. (Read/Peek)</param>
            <returns>Char as an int or -1 if at the end of the stream</returns>
        </member>
        <member name="P:NAnt.Core.Filters.TabsToSpaces.TabLength">
            <summary>
            The number of spaces used when converting a tab. The default is 
            "8".
            </summary>
        </member>
        <member name="T:NAnt.Core.Filters.TabsToSpaces.AcquireCharDelegate">
            <summary>
            Delegate for Read and Peek. Allows the same implementation
            to be used for both methods.
            </summary>
        </member>
        <member name="T:NAnt.Core.Functions.AssemblyFunctions">
            <summary>
            Functions to return information for a given assembly.
            </summary>
        </member>
        <member name="P:NAnt.Core.FunctionSetBase.Project">
            <summary>
            Gets or sets the <see cref="P:NAnt.Core.FunctionSetBase.Project"/> that this functionset will 
            reference.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.FunctionSetBase.Project"/> that this functionset will reference.
            </value>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyFunctions.LoadFromFile(System.String)">
            <summary>
            Loads an assembly given its file name or path.
            </summary>
            <param name="assemblyFile">The name or path of the file that contains the manifest of the assembly.</param>
            <returns>
            The loaded assembly.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="assemblyFile"/> is an empty <see cref="T:System.String"/>.</exception>
            <exception cref="T:System.IO.FileNotFoundException"><paramref name="assemblyFile"/> is not found, or the module you are trying to load does not specify a filename extension.</exception>
            <exception cref="T:System.BadImageFormatException"><paramref name="assemblyFile"/> is not a valid assembly.</exception>
            <exception cref="T:System.IO.PathTooLongException">An assembly or module was loaded twice with two different evidences, or the assembly name is longer than MAX_PATH characters.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyFunctions.Load(System.String)">
            <summary>
            Loads an assembly given the long form of its name.
            </summary>
            <param name="assemblyString">The long form of the assembly name.</param>
            <returns>
            The loaded assembly.
            </returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="assemblyString"/> is a <see langword="null"/>.</exception>
            <exception cref="T:System.IO.FileNotFoundException"><paramref name="assemblyString"/> is not found.</exception>
            <example>
              <para>
              Determine the location of the Microsoft Access 11 Primary Interop 
              Assembly by loading it using its fully qualified name, and copy it
              to the build directory.
              </para>
              <code>
                <![CDATA[
            <property name="access.pia.path" value="${assembly::get-location(assembly::load('Microsoft.Office.Interop.Access, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c'))}" />
            <copy file="${access.pia.path}" todir="${build.dir}" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyFunctions.GetFullName(System.Reflection.Assembly)">
            <summary>
            Gets the full name of the assembly, also known as the display name.
            </summary>
            <param name="assembly">The assembly to get the full name for.</param>
            <returns>
            The full name of the assembly, also known as the display name.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyFunctions.GetName(System.Reflection.Assembly)">
            <summary>
            Gets an <see cref="T:System.Reflection.AssemblyName"/> for the specified assembly.
            </summary>
            <param name="assembly">The assembly to get an <see cref="T:System.Reflection.AssemblyName"/> for.</param>
            <returns>
            An <see cref="T:System.Reflection.AssemblyName"/> for the specified assembly.
            </returns>
            <seealso cref="T:NAnt.Core.Functions.AssemblyNameFunctions"/>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyFunctions.GetLocation(System.Reflection.Assembly)">
            <summary>
            Gets the physical location, in codebase format, of the loaded file 
            that contains the manifest.
            </summary>
            <param name="assembly">The assembly to get the location for.</param>
            <returns>
            The location of the specified assembly.
            </returns>
        </member>
        <member name="T:NAnt.Core.Functions.AssemblyNameFunctions">
            <summary>
            Functions that return information about an assembly's identity.
            </summary>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyNameFunctions.GetCodeBase(System.Reflection.AssemblyName)">
            <summary>
            Gets the location of the assembly as a URL.
            </summary>
            <param name="assemblyName">The <see cref="T:System.Reflection.AssemblyName"/> of the assembly.</param>
            <returns>
            The location of the assembly as a URL.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.AssemblyFunctions.GetName(System.Reflection.Assembly)"/>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyNameFunctions.GetEscapedCodeBase(System.Reflection.AssemblyName)">
            <summary>
            Gets the URI, including escape characters, that represents the codebase.
            </summary>
            <param name="assemblyName">The <see cref="T:System.Reflection.AssemblyName"/> of the assembly.</param>
            <returns>
            The URI, including escape characters, that represents the codebase.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.AssemblyFunctions.GetName(System.Reflection.Assembly)"/>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyNameFunctions.GetFullName(System.Reflection.AssemblyName)">
            <summary>
            Gets the full name of the assembly, also known as the display name.
            </summary>
            <param name="assemblyName">The <see cref="T:System.Reflection.AssemblyName"/> of the assembly.</param>
            <returns>
            The full name of the assembly, also known as the display name.
            </returns>
            <example>
              <para>
              Output the full name of the <c>nunit.framework</c> assembly to the
              build log.
              </para>
              <code>
                <![CDATA[
            <echo message="${assemblyname::get-full-name(assemblyname::get-assembly-name('nunit.framework.dll'))}" />
                ]]>
              </code>
            </example>
            <seealso cref="M:NAnt.Core.Functions.AssemblyFunctions.GetName(System.Reflection.Assembly)"/>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyNameFunctions.GetName(System.Reflection.AssemblyName)">
            <summary>
            Gets the simple, unencrypted name of the assembly.
            </summary>
            <param name="assemblyName">The <see cref="T:System.Reflection.AssemblyName"/> of the assembly.</param>
            <returns>
            The simple, unencrypted name of the assembly.
            </returns>
            <example>
              <para>
              Output the simple name of the <c>nunit.framework</c> assembly to 
              the build log.
              </para>
              <code>
                <![CDATA[
            <echo message="${assemblyname::get-name(assemblyname::get-assembly-name('nunit.framework.dll'))}" />
                ]]>
              </code>
            </example>
            <seealso cref="M:NAnt.Core.Functions.AssemblyFunctions.GetName(System.Reflection.Assembly)"/>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyNameFunctions.GetVersion(System.Reflection.AssemblyName)">
            <summary>
            Gets the version of the assembly.
            </summary>
            <param name="assemblyName">The <see cref="T:System.Reflection.AssemblyName"/> of the assembly.</param>
            <returns>
            The version of the assembly.
            </returns>
            <example>
              <para>
              Output the major version of the <c>nunit.framework</c> assembly 
              to the build log.
              </para>
              <code>
                <![CDATA[
            <echo message="${version::get-major-version(assemblyname::get-version(assemblyname::get-assembly-name('nunit.framework.dll')))}" />
                ]]>
              </code>
            </example>
            <seealso cref="M:NAnt.Core.Functions.AssemblyFunctions.GetName(System.Reflection.Assembly)"/>
            <seealso cref="T:NAnt.Core.Functions.VersionFunctions"/>
        </member>
        <member name="M:NAnt.Core.Functions.AssemblyNameFunctions.GetAssemblyName(System.String)">
            <summary>
            Gets the <see cref="T:System.Reflection.AssemblyName"/> for a given file.
            </summary>
            <param name="assemblyFile">The assembly file for which to get the <see cref="T:System.Reflection.AssemblyName"/>.</param>
            <returns>
            An <see cref="T:System.Reflection.AssemblyName"/> object representing the given file.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="assemblyFile"/> is an empty <see cref="T:System.String"/>.</exception>
            <exception cref="T:System.IO.FileNotFoundException"><paramref name="assemblyFile"/> does not exist.</exception>
            <exception cref="T:System.BadImageFormatException"><paramref name="assemblyFile"/> is not a valid assembly.</exception>
            <remarks>
            The assembly is not added to this domain.
            </remarks>
            <example>
              <para>
              Output the full name of the <c>nunit.framework</c> assembly to the
              build log.
              </para>
              <code>
                <![CDATA[
            <echo message="${assemblyname::get-full-name(assemblyname::get-assembly-name('nunit.framework.dll'))}" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.BooleanConversionFunctions.Parse(System.String)">
            <summary>
            Converts the specified string representation of a logical value to 
            its <see cref="T:System.Boolean"/> equivalent.
            </summary>
            <param name="s">A string containing the value to convert.</param>
            <returns>
            <see langword="true"/> if <paramref name="s"/> is equivalent to 
            "True"; otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.FormatException"><paramref name="s"/> is not equivalent to <see cref="F:System.Boolean.TrueString"/> or <see cref="F:System.Boolean.FalseString"/>.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.BooleanConversionFunctions.ToString(System.Boolean)">
            <summary>
            Converts the specified <see cref="T:System.Boolean"/> to its equivalent string
            representation.
            </summary>
            <param name="value">A <see cref="T:System.Boolean"/> to convert.</param>
            <returns>
            "True" if <paramref name="value"/> is <see langword="true"/>, or 
            "False" if <paramref name="value"/> is <see langword="false"/>. 
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.ConversionFunctions.ToInt(System.Int32)">
            <summary>
            Converts the argument to an integer.
            </summary>
            <param name="value">value to be converted</param>
            <returns><paramref name="value" /> converted to integer. The function fails with an exception when the conversion is not possible.</returns>
        </member>
        <member name="M:NAnt.Core.Functions.ConversionFunctions.ToDouble(System.Double)">
            <summary>
            Converts the argument to double
            </summary>
            <param name="value">The value to be converted.</param>
            <returns><paramref name="value" /> converted to double. The function fails with an exception when the conversion is not possible.</returns>
        </member>
        <member name="M:NAnt.Core.Functions.ConversionFunctions.ConvertToString(System.String)">
            <summary>
            Converts the argument to a string.
            </summary>
            <param name="value">The value to be converted.</param>
            <returns>
            <paramref name="value" /> converted to string. The function fails 
            with an exception when the conversion is not possible.
            </returns>
            <remarks>
            Named method ConvertToString as a static ToString method would break
            CLS compliance.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Functions.ConversionFunctions.ToDateTime(System.DateTime)">
            <summary>
            Converts the argument to a datetime.
            </summary>
            <param name="value">value to be converted</param>
            <returns><paramref name="value" /> converted to datetime. The function fails with an exception when the conversion is not possible.</returns>
        </member>
        <member name="M:NAnt.Core.Functions.ConversionFunctions.ToBoolean(System.Boolean)">
            <summary>
            Converts the argument to a boolean 
            </summary>
            <param name="value">The string value to be converted to boolean. Must be 'true' or 'false'.</param>
            <returns>
            <paramref name="value" /> converted to boolean. The function fails 
            with an exception when the conversion is not possible.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.Now">
            <summary>
            Gets a <see cref="T:System.DateTime"/> that is the current local date and 
            time on this computer.
            </summary>
            <returns>
            A <see cref="T:System.DateTime"/> whose value is the current date and time.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetYear(System.DateTime)">
            <summary>
            Gets the year component of the specified date.
            </summary>
            <param name="date">The date of which to get the year component.</param>
            <returns>
            The year, between 1 and 9999.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetMonth(System.DateTime)">
            <summary>
            Gets the month component of the specified date.
            </summary>
            <param name="date">The date of which to get the month component.</param>
            <returns>
            The month, between 1 and 12.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetDay(System.DateTime)">
            <summary>
            Gets the day of the month represented by the specified date.
            </summary>
            <param name="date">The date of which to get the day of the month.</param>
            <returns>
            The day value, between 1 and 31.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetHour(System.DateTime)">
            <summary>
            Gets the hour component of the specified date.
            </summary>
            <param name="date">The date of which to get the hour component.</param>
            <returns>
            The hour, between 0 and 23.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetMinute(System.DateTime)">
            <summary>
            Gets the minute component of the specified date.
            </summary>
            <param name="date">The date of which to get the minute component.</param>
            <returns>
            The minute, between 0 and 59.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetSecond(System.DateTime)">
            <summary>
            Gets the seconds component of the specified date.
            </summary>
            <param name="date">The date of which to get the seconds component.</param>
            <returns>
            The seconds, between 0 and 59.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetMillisecond(System.DateTime)">
            <summary>
            Gets the milliseconds component of the specified date.
            </summary>
            <param name="date">The date of which to get the milliseconds component.</param>
            <returns>
            The millisecond, between 0 and 999.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetTicks(System.DateTime)">
            <summary>
            Gets the number of ticks that represent the specified date.
            </summary>
            <param name="date">The date of which to get the number of ticks.</param>
            <returns>
            The number of ticks that represent the date and time of the 
            specified date.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetDayOfWeek(System.DateTime)">
            <summary>
            Gets the day of the week represented by the specified date.
            </summary>
            <param name="date">The date of which to get the day of the week.</param>
            <returns>
            The day of the week, ranging from zero, indicating Sunday, to six, 
            indicating Saturday.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetDayOfYear(System.DateTime)">
            <summary>
            Gets the day of the year represented by the specified date.
            </summary>
            <param name="date">The date of which to get the day of the year.</param>
            <returns>
            The day of the year, between 1 and 366.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.GetDaysInMonth(System.Int32,System.Int32)">
            <summary>
            Returns the number of days in the specified month of the specified 
            year.
            </summary>
            <param name="year">The year.</param>
            <param name="month">The month (a number ranging from 1 to 12).</param>
            <returns>
            The number of days in <paramref name="month"/> for the specified 
            <paramref name="year"/>.
            </returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="month"/> is less than 1 or greater than 12.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeFunctions.IsLeapYear(System.Int32)">
            <summary>
            Returns an indication whether the specified year is a leap year.
            </summary>
            <param name="year">A 4-digit year.</param>
            <returns>
            <see langword="true" /> if <paramref name="year" /> is a leap year; 
            otherwise, <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeConversionFunctions.Parse(System.String)">
            <summary>
            Converts the specified string representation of a date and time to 
            its <see cref="T:System.DateTime"/> equivalent.
            </summary>
            <param name="s">A string containing a date and time to convert.</param>
            <returns>
            A <see cref="T:System.DateTime"/> equivalent to the date and time contained 
            in <paramref name="s"/>.
            </returns>
            <exception cref="T:System.FormatException"><paramref name="s"/> does not contain a valid string representation of a date and time.</exception>
            <remarks>
            The <see cref="T:System.Globalization.DateTimeFormatInfo"/> for the invariant culture is 
            used to supply formatting information about <paramref name="s"/>.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeConversionFunctions.ToString(System.DateTime)">
            <summary>
            Converts the specified <see cref="T:System.DateTime"/> to its equivalent
            string representation.
            </summary>
            <param name="value">A <see cref="T:System.DateTime"/> to convert.</param>
            <returns>
            A string representation of <paramref name="value"/> formatted using
            the general format specifier ("G").
            </returns>
            <remarks>
            <paramref name="value"/> is formatted with the 
            <see cref="T:System.Globalization.DateTimeFormatInfo"/> for the invariant culture.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Functions.DateTimeConversionFunctions.ToString(System.DateTime,System.String)">
            <summary>
            Converts the specified <see cref="T:System.DateTime"/> to its equivalent
            string representation.
            </summary>
            <param name="value">A <see cref="T:System.DateTime"/> to convert.</param>
            <param name="format">A format string.</param>
            <returns>
            A string representation of <paramref name="value"/> formatted
            using the specified format
            </returns>
            <remarks>
            <paramref name="value"/> is formatted with the 
            <see cref="T:System.Globalization.DateTimeFormatInfo"/> for the invariant culture.
            </remarks>
        </member>
        <member name="T:NAnt.Core.Functions.DirectoryFunctions">
            <summary>
            Groups a set of functions for dealing with directories.
            </summary>
        </member>
        <member name="M:NAnt.Core.Functions.DirectoryFunctions.GetCreationTime(System.String)">
            <summary>
            Returns the creation date and time of the specified directory.
            </summary>
            <param name="path">The directory for which to obtain creation date and time information.</param>
            <returns>
            The creation date and time of the specified directory.
            </returns>
            <exception cref="T:System.IO.IOException">The specified directory does not exist.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.DirectoryFunctions.GetLastWriteTime(System.String)">
            <summary>
            Returns the date and time the specified directory was last written to.
            </summary>
            <param name="path">The directory for which to obtain write date and time information.</param>
            <returns>
            The date and time the specified directory was last written to.
            </returns>
            <exception cref="T:System.IO.IOException">The specified directory does not exist.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.DirectoryFunctions.GetLastAccessTime(System.String)">
            <summary>
            Returns the date and time the specified directory was last accessed.
            </summary>
            <param name="path">The directory for which to obtain access date and time information.</param>
            <returns>
            The date and time the specified directory was last accessed.
            </returns>
            <exception cref="T:System.IO.IOException">The specified directory does not exist.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
            <exception cref="T:System.NotSupportedException">The <paramref name="path"/> parameter is in an invalid format.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.DirectoryFunctions.GetCurrentDirectory">
             <summary>
             Gets the current working directory.
             </summary>
             <returns>
             A <see cref="T:System.String"/> containing the path of the current working 
             directory.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.DirectoryFunctions.GetParentDirectory(System.String)">
            <summary>
            Retrieves the parent directory of the specified path.
            </summary>
            <param name="path">The path for which to retrieve the parent directory.</param>
            <returns>
            The parent directory, or an empty <see cref="T:System.String"/> if 
            <paramref name="path"/> is the root directory, including the root 
            of a UNC server or share name.
            </returns>
            <exception cref="T:System.IO.IOException">The directory specified by <paramref name="path"/> is read-only.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
            <exception cref="T:System.IO.DirectoryNotFoundException">The specified path was not found.</exception>
            <example>
              <para>
              Copy "readme.txt" from the current working directory to 
              its parent directory.
              </para>
              <code>
                <![CDATA[
            <property name="current.dir" value="${directory::get-current-directory()}" />
            <property name="current.dir.parent" value="${directory::get-parent-directory(current.dir)}" />
            <copy file="${path::combine(current.dir, 'readme.txt')} todir="${current.dir.parent}" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.DirectoryFunctions.GetDirectoryRoot(System.String)">
            <summary>
            Returns the volume information, root information, or both for the 
            specified path.
            </summary>
            <param name="path">The path for which to retrieve the parent directory.</param>
            <returns>
            A string containing the volume information, root information, or 
            both for the specified path.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.DirectoryFunctions.Exists(System.String)">
            <summary>
            Determines whether the given path refers to an existing directory 
            on disk.
            </summary>
            <param name="path">The path to test.</param>
            <returns>
            <see langword="true" /> if <paramref name="path" /> refers to an
            existing directory; otherwise, <see langword="false" />.
            </returns>
            <example>
              <para>Remove directory "test", if it exists.</para>
              <code>
                <![CDATA[
            <delete dir="test" if="${directory::exists('test')}" />
                ]]>
              </code>
            </example>
        </member>
        <member name="T:NAnt.Core.Functions.DnsFunctions">
            <summary>
            Functions for requesting information from DNS.
            </summary>
        </member>
        <member name="M:NAnt.Core.Functions.DnsFunctions.GetHostName">
            <summary>
            Gets the host name of the local computer.
            </summary>
            <returns>
            A string that contains the DNS host name of the local computer. 
            </returns>
            <exception cref="T:System.Net.Sockets.SocketException">An error is encountered when resolving the local host name.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.DoubleConversionFunctions.Parse(System.String)">
            <summary>
            Converts the specified string representation of a number to its 
            double-precision floating point number equivalent.
            </summary>
            <param name="s">A string containing a number to convert.</param>
            <returns>
            A double-precision floating point number equivalent to the numeric 
            value or symbol specified in <paramref name="s"/>.
            </returns>
            <exception cref="T:System.FormatException"><paramref name="s"/> is not a number in a valid format.</exception>
            <exception cref="T:System.OverflowException"><paramref name="s"/> represents a number less than <see cref="F:System.Double.MinValue"/> or greater than <see cref="F:System.Double.MaxValue"/>.</exception>
            <remarks>
            The <see cref="T:System.Globalization.NumberFormatInfo"/> for the invariant culture is 
            used to supply formatting information about <paramref name="s"/>.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Functions.DoubleConversionFunctions.ToString(System.Double)">
            <summary>
            Converts the specified <see cref="T:System.Double"/> to its equivalent 
            string representation.
            </summary>
            <param name="value">A <see cref="T:System.Double"/> to convert.</param>
            <returns>
            The string representation of <paramref name="value"/> formatted
            using the general format specifier ("G").
            </returns>
            <remarks>
            <paramref name="value"/> is formatted with the 
            <see cref="T:System.Globalization.NumberFormatInfo"/> for the invariant culture.
            </remarks>
        </member>
        <member name="T:NAnt.Core.Functions.EnvironmentFunctions">
            <summary>
            Provide information about the current environment and platform.
            </summary>
        </member>
        <member name="M:NAnt.Core.Functions.EnvironmentFunctions.GetFolderPath(System.Environment.SpecialFolder)">
            <summary>
            Gets the path to the system special folder identified by the 
            specified enumeration.
            </summary>
            <param name="folder">An enumerated constant that identifies a system special folder.</param>
            <returns>
            The path to the specified system special folder, if that folder 
            physically exists on your computer; otherwise, the empty string ("").
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="folder"/> is not a member of <see cref="T:System.Environment.SpecialFolder"/>.</exception>
            <example>
              <para>
              Copy "out.log" from the project base directory to the
              program files directory.
              </para>
              <code>
                <![CDATA[
            <copy file="out.log" todir="${environment::get-folder-path('ProgramFiles')}" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.EnvironmentFunctions.GetMachineName">
            <summary>
            Gets the NetBIOS name of this local computer.
            </summary>
            <returns>
            The NetBIOS name of this local computer.
            </returns>
            <exception cref="T:System.InvalidOperationException">The name of this computer cannot be obtained.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.EnvironmentFunctions.GetOperatingSystem">
            <summary>
            Gets an <see cref="T:System.OperatingSystem"/> object that represents the 
            current operating system.
            </summary>
            <returns>
            An <see cref="T:System.OperatingSystem"/> object that contains the current 
            platform identifier and version number.
            </returns>
            <example>
              <para>
              Output string representation of the current operating system.
              </para>
              <code>
                <![CDATA[
            <echo message="OS=${operating-system::to-string(environment::get-operating-system())}" />
                ]]>
              </code>
              <para>If the operating system is Windows 2000, the output is:</para>
              <code>
            Microsoft Windows NT 5.0.2195.0
              </code>
            </example>
            <seealso cref="T:NAnt.Core.Functions.OperatingSystemFunctions"/>
        </member>
        <member name="M:NAnt.Core.Functions.EnvironmentFunctions.GetUserName">
            <summary>
            Gets the user name of the person who started the current thread.
            </summary>
            <returns>
            The name of the person logged on to the system who started the 
            current thread.
            </returns>
            <example>
              <para>
              Modify the home directory of the current user on unix-based systems.
              </para>
              <code>
                <![CDATA[
            <exec program="usermod">
                <arg value="-d" />
                <arg value="/home/temp" />
                <arg value="${environment::get-user-name()}" />
            </exec>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.EnvironmentFunctions.GetVariable(System.String)">
            <summary>
            Returns the value of the specified environment variable.
            </summary>
            <param name="name">The environment variable of which the value should be returned.</param>
            <returns>
            The value of the specified environment variable.
            </returns>
            <exception cref="T:System.ArgumentException">Environment variable <paramref name="name"/> does not exist.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.EnvironmentFunctions.VariableExists(System.String)">
            <summary>
            Gets a value indicating whether the specified environment variable
            exists.
            </summary>
            <param name="name">The environment variable that should be checked.</param>
            <returns>
            <see langword="true" /> if the environment variable exists; otherwise,
            <see langword="false" />.
            </returns>
            <example>
              <para>
              Execute a set of tasks only if the &quot;BUILD_DEBUG&quot; environment
              variable is set.
              </para>
              <code>
                <![CDATA[
            <if test="${environment::variable-exists('BUILD_DEBUG')}">
                ...
            </if>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.EnvironmentFunctions.GetVersion">
            <summary>
            Gets a <see cref="T:System.Version"/> object that describes the major, 
            minor, build, and revision numbers of the Common Language Runtime.
            </summary>
            <returns>
            A Version object.
            </returns>
            <example>
              <para>Output the major version of the CLR.</para>
              <code>
                <![CDATA[
            <echo message="Major version=${version::get-major(environment::get-version())}" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.EnvironmentFunctions.NewLine">
            <summary>
            Gets the newline string defined for this environment.
            </summary>
            <returns>
            A string containing CRLF for non-Unix platforms, or LF for Unix
            platforms.
            </returns>
            <example>
              <para>Output two lines in a log file.</para>
              <code>
                <![CDATA[
            <echo file="build.log" message="First line${environment::newline()}Second line" />
                ]]>
              </code>
            </example>
        </member>
        <member name="T:NAnt.Core.Functions.FileFunctions">
            <summary>
            Groups a set of functions for dealing with files.
            </summary>
        </member>
        <member name="M:NAnt.Core.Functions.FileFunctions.GetCreationTime(System.String)">
            <summary>
            Returns the creation date and time of the specified file.
            </summary>
            <param name="path">The file for which to obtain creation date and time information.</param>
            <returns>
            The creation date and time of the specified file.
            </returns>
            <exception cref="T:System.IO.IOException">The specified file does not exist.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
            <exception cref="T:System.NotSupportedException">The <paramref name="path"/> parameter is in an invalid format.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.FileFunctions.GetLastWriteTime(System.String)">
            <summary>
            Returns the date and time the specified file was last written to.
            </summary>
            <param name="path">The file for which to obtain write date and time information.</param>
            <returns>
            The date and time the specified file was last written to.
            </returns>
            <exception cref="T:System.IO.IOException">The specified file does not exist.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.FileFunctions.GetLastAccessTime(System.String)">
            <summary>
            Returns the date and time the specified file was last accessed.
            </summary>
            <param name="path">The file for which to obtain access date and time information.</param>
            <returns>
            The date and time the specified file was last accessed.
            </returns>
            <exception cref="T:System.IO.IOException">The specified file does not exist.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
            <exception cref="T:System.NotSupportedException">The <paramref name="path"/> parameter is in an invalid format.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.FileFunctions.Exists(System.String)">
            <summary>
            Determines whether the specified file exists.
            </summary>
            <param name="file">The file to check.</param>
            <returns>
            <see langword="true" /> if <paramref name="file" /> refers to an 
            existing file; otherwise, <see langword="false" />.
            </returns>
            <example>
              <para>Execute a set of tasks, if file "output.xml" does not exist.</para>
              <code>
                <![CDATA[
            <if test="${not file::exists('output.xml')}">
                ...
            </if>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.FileFunctions.UpToDate(System.String,System.String)">
            <summary>
            Determines whether <paramref name="targetFile"/> is more or equal 
            up-to-date than <paramref name="srcFile"/>.
            </summary>
            <param name="srcFile">The file to check against the target file.</param>
            <param name="targetFile">The file for which we want to determine the status.</param>
            <returns>
            <see langword="true"/> if <paramref name="targetFile"/> is more 
            or equal up-to-date than <paramref name="srcFile"/>; otherwise,
            <see langword="false"/>.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="srcFile"/> or <paramref name="targetFile"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both of either <paramref name="srcFile"/> or <paramref name="targetFile"/> exceed the system-defined maximum length.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.FileFunctions.GetLength(System.String)">
            <summary>
            Gets the length of the file.
            </summary>
            <param name="file">filename</param>
            <returns>
            Length in bytes, of the file named <paramref name="file"/>.
            </returns>
            <exception cref="T:System.IO.FileNotFoundException">The file specified cannot be found.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.FileFunctions.IsAssembly(System.String)">
            <summary>
            Checks if a given file is an assembly.
            </summary>
            <param name="assemblyFile">The name or path of the file to be checked.</param>
            <returns>True if the file is a valid assembly, false if it's not or if the assembly seems corrupted (invalid headers or metadata).</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="assemblyFile"/> is a null <see cref="T:System.String"/>.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="assemblyFile"/> is an empty <see cref="T:System.String"/>.</exception>
            <exception cref="T:System.IO.FileNotFoundException"><paramref name="assemblyFile"/> is not found, or the file you are trying to check does not specify a filename extension.</exception>
            <exception cref="T:System.Security.SecurityException">The caller does not have path discovery permission.</exception>
        </member>
        <member name="T:NAnt.Core.Functions.FileVersionInfoFunctions">
            <summary>
            Functions that provide version information for a physical file on disk.
            </summary>
        </member>
        <member name="M:NAnt.Core.Functions.FileVersionInfoFunctions.GetVersionInfo(System.String)">
            <summary>
            Returns a <see cref="T:System.Diagnostics.FileVersionInfo"/> representing the version 
            information associated with the specified file.
            </summary>
            <param name="fileName">The file to retrieve the version information for.</param>
            <returns>
            A <see cref="T:System.Diagnostics.FileVersionInfo"/> containing information about the file.
            </returns>
            <exception cref="T:System.IO.FileNotFoundException">The file specified cannot be found.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.FileVersionInfoFunctions.GetCompanyName(System.Diagnostics.FileVersionInfo)">
            <summary>
            Gets the name of the company that produced the file.
            </summary>
            <param name="fileVersionInfo">A <see cref="T:System.Diagnostics.FileVersionInfo"/> instance containing version information about a file.</param>
            <returns>
            The name of the company that produced the file.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.FileVersionInfoFunctions.GetFileVersion(System.Diagnostics.FileVersionInfo)">
            <summary>
            Gets the file version of a file.
            </summary>
            <param name="fileVersionInfo">A <see cref="T:System.Diagnostics.FileVersionInfo"/> instance containing version information about a file.</param>
            <returns>
            The file version of a file.
            </returns>
            <see cref="T:NAnt.Core.Functions.VersionFunctions"/>
        </member>
        <member name="M:NAnt.Core.Functions.FileVersionInfoFunctions.GetProductName(System.Diagnostics.FileVersionInfo)">
            <summary>
            Gets the name of the product the file is distributed with.
            </summary>
            <param name="fileVersionInfo">A <see cref="T:System.Diagnostics.FileVersionInfo"/> instance containing version information about a file.</param>
            <returns>
            The name of the product the file is distributed with.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.FileVersionInfoFunctions.GetProductVersion(System.Diagnostics.FileVersionInfo)">
            <summary>
            Gets the product version of a file.
            </summary>
            <param name="fileVersionInfo">A <see cref="T:System.Diagnostics.FileVersionInfo"/> instance containing version information about a file.</param>
            <returns>
            The product version of a file.
            </returns>
            <see cref="T:NAnt.Core.Functions.VersionFunctions"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.Exists(System.String)">
            <summary>
            Checks whether the specified framework exists, and is valid.
            </summary>
            <param name="framework">The framework to test.</param>
            <returns>
            <see langword="true" /> if the specified framework exists ; otherwise,
            <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.SdkExists(System.String)">
            <summary>
            Checks whether the SDK for the specified framework is installed.
            </summary>
            <param name="framework">The framework to test.</param>
            <returns>
            <see langword="true"/> if the SDK for specified framework is installed; 
            otherwise, <see langword="false"/>.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework"/>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework">
            <summary>
            Gets the identifier of the current target framework.
            </summary>
            <returns>
            The identifier of the current target framework.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework">
            <summary>
            Gets the identifier of the runtime framework.
            </summary>
            <returns>
            The identifier of the runtime framework.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetFamily(System.String)">
            <summary>
            Gets the family of the specified framework.
            </summary>
            <param name="framework">The framework of which the family should be returned.</param>
            <returns>
            The family of the specified framework.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="framework"/> is not a valid framework identifier.</exception>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework"/>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetVersion">
            <summary>
            Gets the version of the current target framework.
            </summary>
            <returns>
            The version of the current target framework.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetVersion(System.String)">
            <summary>
            Gets the version of the specified framework.
            </summary>
            <param name="framework">The framework of which the version should be returned.</param>
            <returns>
            The version of the specified framework.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="framework"/> is not a valid framework identifier.</exception>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework"/>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetDescription">
            <summary>
            Gets the description of the current target framework.
            </summary>
            <returns>
            The description of the current target framework.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetDescription(System.String)">
            <summary>
            Gets the description of the specified framework.
            </summary>
            <param name="framework">The framework of which the description should be returned.</param>
            <returns>
            The description of the specified framework.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="framework"/> is not a valid framework identifier.</exception>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework"/>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetClrVersion">
            <summary>
            Gets the Common Language Runtime version of the current target
            framework.
            </summary>
            <returns>
            The Common Language Runtime version of the current target framework.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetClrVersion(System.String)">
            <summary>
            Gets the Common Language Runtime version of the specified framework.
            </summary>
            <param name="framework">The framework of which the Common Language Runtime version should be returned.</param>
            <returns>
            The Common Language Runtime version of the specified framework.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="framework"/> is not a valid framework identifier.</exception>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework"/>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetFrameworkDirectory(System.String)">
            <summary>
            Gets the framework directory of the specified framework.
            </summary>
            <param name="framework">The framework of which the framework directory should be returned.</param>
            <returns>
            The framework directory of the specified framework.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="framework"/> is not a valid framework identifier.</exception>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework"/>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetAssemblyDirectory(System.String)">
            <summary>
            Gets the assembly directory of the specified framework.
            </summary>
            <param name="framework">The framework of which the assembly directory should be returned.</param>
            <returns>
            The assembly directory of the specified framework.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="framework"/> is not a valid framework identifier.</exception>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework"/>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetSdkDirectory(System.String)">
            <summary>
            Gets the SDK directory of the specified framework.
            </summary>
            <param name="framework">The framework of which the SDK directory should be returned.</param>
            <returns>
            The SDK directory of the specified framework, or an empty 
            <see cref="T:System.String"/> if the SDK of the specified framework is not 
            installed.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="framework"/> is not a valid framework identifier.</exception>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework"/>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetToolPath(System.String)">
            <summary>
            Gets the absolute path of the specified tool for the current
            target framework.
            </summary>
            <param name="tool">The file name of the tool to search for.</param>
            <returns>
            The absolute path to <paramref name="tool"/> if found in one of the
            configured tool paths; otherwise, an error is reported.
            </returns>
            <exception cref="T:System.IO.FileNotFoundException"><paramref name="tool"/> could not be found in the configured tool paths.</exception>
            <remarks>
              <para>
              The configured tool paths are scanned in the order in which they
              are defined in the framework configuration.
              </para>
              <para>
              The file name of the tool to search should include the extension.
              </para>
            </remarks>
            <example>
              <para>Use <b>gacutil</b> to install an assembly in the GAC.</para>
              <code>
                <![CDATA[
            <exec program="${framework::get-tool-path('gacutil.exe')}" managed="strict">
                <arg value="/i" />
                <arg file="Cegeka.HealthFramework.dll" />
            </exec>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeEngine(System.String)">
            <summary>
            Gets the runtime engine of the specified framework.
            </summary>
            <param name="framework">The framework of which the runtime engine should be returned.</param>
            <returns>
            The full path to the runtime engine of the specified framework, or
            an empty <see cref="T:System.String"/> if no runtime engine is defined
            for the specified framework.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="framework"/> is not a valid framework identifier.</exception>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetRuntimeFramework"/>
            <seealso cref="M:NAnt.Core.Functions.FrameworkFunctions.GetTargetFramework"/>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetFrameworks(NAnt.Core.FrameworkTypes)">
            <summary>
            Gets a comma-separated list of frameworks filtered by the specified
            <see cref="T:NAnt.Core.FrameworkTypes"/>.
            </summary>
            <param name="types">A bitwise combination of <see cref="T:NAnt.Core.FrameworkTypes"/> values that filter the frameworks to retrieve.</param>
            <returns>
            A comma-separated list of frameworks filtered by the specified
            <see cref="T:NAnt.Core.FrameworkTypes"/>, sorted on name.
            </returns>
            <example>
              <para>
              Define a <b>build-all</b> target that executes the <b>build</b>
              target once for each installed framework targeting compact
              devices.
              </para>
              <code>
                <![CDATA[
            <target name="build-all">
                <foreach item="String" in="${framework::get-frameworks('installed compact')}" delim="," property="framework">
                    <property name="nant.settings.currentframework" value="${framework}" />
                    <call target="build" />
                </foreach>
            </target>
            
            <target name="build">
                ...
            </target>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.FrameworkFunctions.GetFramework(System.String)">
            <summary>
            Checks whether the specified framework is valid.
            </summary>
            <param name="framework">The framework to check.</param>
            <exception cref="T:System.ArgumentException"><paramref name="framework"/> is not a valid framework identifier.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.Int32ConversionFunctions.Parse(System.String)">
            <summary>
            Converts the specified string representation of a number to its 
            32-bit signed integer equivalent.
            </summary>
            <param name="s">A string containing a number to convert.</param>
            <returns>
            A 32-bit signed integer equivalent to the number contained in 
            <paramref name="s"/>.
            </returns>
            <exception cref="T:System.FormatException"><paramref name="s"/> is not of the correct format.</exception>
            <exception cref="T:System.OverflowException"><paramref name="s"/> represents a number less than <see cref="F:System.Int32.MinValue"/> or greater than <see cref="F:System.Int32.MaxValue"/>.</exception>
            <remarks>
            The <see cref="T:System.Globalization.NumberFormatInfo"/> for the invariant culture is 
            used to supply formatting information about <paramref name="s"/>.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Functions.Int32ConversionFunctions.ToString(System.Int32)">
            <summary>
            Converts the specified <see cref="T:System.Int32"/> to its equivalent string
            representation.
            </summary>
            <param name="value">A <see cref="T:System.Int32"/> to convert.</param>
            <returns>
            The string representation of <paramref name="value"/>, consisting 
            of a negative sign if the value is negative, and a sequence of 
            digits ranging from 0 to 9 with no leading zeroes.
            </returns>
            <remarks>
            <paramref name="value"/> is formatted with the 
            <see cref="T:System.Globalization.NumberFormatInfo"/> for the invariant culture.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Functions.Int64ConversionFunctions.Parse(System.String)">
            <summary>
            Converts the specified string representation of a number to its 
            64-bit signed integer equivalent.
            </summary>
            <param name="s">A string containing a number to convert.</param>
            <returns>
            A 64-bit signed integer equivalent to the number contained in 
            <paramref name="s"/>.
            </returns>
            <exception cref="T:System.FormatException"><paramref name="s"/> is not of the correct format.</exception>
            <exception cref="T:System.OverflowException"><paramref name="s"/> represents a number less than <see cref="F:System.Int64.MinValue"/> or greater than <see cref="F:System.Int64.MaxValue"/>.</exception>
            <remarks>
            The <see cref="T:System.Globalization.NumberFormatInfo"/> for the invariant culture is 
            used to supply formatting information about <paramref name="s"/>.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Functions.Int64ConversionFunctions.ToString(System.Int64)">
            <summary>
            Converts the specified <see cref="T:System.Int64"/> to its equivalent string
            representation.
            </summary>
            <param name="value">A <see cref="T:System.Int64"/> to convert.</param>
            <returns>
            The string representation of <paramref name="value"/>, consisting 
            of a negative sign if the value is negative, and a sequence of 
            digits ranging from 0 to 9 with no leading zeroes.
            </returns>
            <remarks>
            <paramref name="value"/> is formatted with the 
            <see cref="T:System.Globalization.NumberFormatInfo"/> for the invariant culture.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Functions.MathFunctions.Round(System.Double)">
            <summary>
            Rounds the value to the nearest whole number
            </summary>
            <param name="value">Number to be rounded, can be anything convertible to a double.</param>
            <returns>
            Rounded value.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.MathFunctions.Floor(System.Double)">
            <summary>
            Returns the largest whole number less than or equal to the specified 
            number.
            </summary>
            <param name="value">value to be , can be anything convertible to a double</param>
            <returns>
            The largest whole number less than or equal to the specified number.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.MathFunctions.Ceiling(System.Double)">
            <summary>
            Returns the smallest whole number greater than or equal to the specified number
            </summary>
            <param name="value">value</param>
            <returns>
            The smallest whole number greater than or equal to the specified number.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.MathFunctions.Abs(System.Double)">
            <summary>
            Returns the absolute value of the specified number
            </summary>
            <param name="value">value to take the absolute value from</param>
            <returns>
            <paramref name="value" /> when <paramref name="value" /> is greater 
            than or equal to zero; otherwise, -<paramref name="value" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.NAntFunctions.GetBaseDirectory">
            <summary>
            Gets the base directory of the appdomain in which NAnt is running.
            </summary>
            <returns>
            The base directory of the appdomain in which NAnt is running.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.NAntFunctions.GetAssembly">
            <summary>
            Gets the NAnt assembly.
            </summary>
            <returns>
            The NAnt assembly.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.NAntFunctions.ScanProbingPaths(System.String)">
            <summary>
            Searches the probing paths of the current target framework for the
            specified file.
            </summary>
            <param name="fileName">The name of the file to search for.</param>
            <returns>
            The absolute path to <paramref name="fileName"/> if found in one of the
            configured probing; otherwise, an error is reported.
            </returns>
            <exception cref="T:System.IO.FileNotFoundException"><paramref name="fileName"/> could not be found in the configured probing paths.</exception>
            <remarks>
              <para>
              The (relative) probing paths are resolved relative to the base
              directory of the appdomain in which NAnt is running.
              </para>
              <para>
              The configured probing paths are scanned recursively in the order
              in which they are defined in the framework configuration.
              </para>
              <para>
              The file name to search should include the extension.
              </para>
            </remarks>
            <example>
              <para>
              Compile an assembly referencing the <c>nunit.framework</c> assembly
              for the current target framework that is shipped as part of the
              NAnt distribution.
              </para>
              <code>
                <![CDATA[
            <csc target="library" output="NAnt.Core.Tests.dll">
                <sources basedir="NAnt.Core">
                    <include name="**/*.cs" />
                </sources>
                <references>
                    <include name="NAnt.Core.dll" />
                    <include name="${framework::get-lib-path('nunit.framework.dll')}" />
                </references>
            </csc>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.NAntFunctions.ScanProbingPaths(System.String,System.String)">
            <summary>
            Searches the probing paths of the current target framework for the
            specified file.
            </summary>
            <param name="baseDirectory">The directory to use a base directory for the probing paths.</param>
            <param name="fileName">The name of the file to search for.</param>
            <returns>
            The absolute path to <paramref name="fileName"/> if found in one of the
            configured probing; otherwise, an error is reported.
            </returns>
            <exception cref="T:System.IO.FileNotFoundException"><paramref name="fileName"/> could not be found in the configured probing paths.</exception>
            <remarks>
              <para>
              The (relative) probing paths are resolved relative to the specified
              base directory.
              </para>
              <para>
              The configured probing paths are scanned recursively in the order
              in which they are defined in the framework configuration.
              </para>
              <para>
              The file name to search should include the extension.
              </para>
            </remarks>
            <example>
              <para>
              Compile an assembly referencing the <c>nunit.framework</c> assembly
              for the current target framework that is shipped as part of the
              NAnt distribution.
              </para>
              <code>
                <![CDATA[
            <csc target="library" output="NAnt.Core.Tests.dll">
                <sources basedir="NAnt.Core">
                    <include name="**/*.cs" />
                </sources>
                <references>
                    <include name="NAnt.Core.dll" />
                    <include name="${framework::get-lib-path('nunit.framework.dll')}" />
                </references>
            </csc>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.ProjectFunctions.GetName">
            <summary>
            Gets the name of the current project.
            </summary>
            <returns>
            The name of the current project, or an empty <see cref="T:System.String"/>
            if no name is specified in the build file.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.ProjectFunctions.GetBuildFileUri">
            <summary>
            Gets the <see cref="T:System.Uri"/> form of the build file.
            </summary>
            <returns>
            The <see cref="T:System.Uri"/> form of the build file, or 
            an empty <see cref="T:System.String"/> if the project is not file backed.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.ProjectFunctions.GetBuildFilePath">
            <summary>
            Gets the local path to the build file.
            </summary>
            <returns>
            The local path of the build file, or an empty <see cref="T:System.String"/>
            if the project is not file backed.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.ProjectFunctions.GetDefaultTarget">
            <summary>
            Gets the name of the target that will be executed when no other 
            build targets are specified.
            </summary>
            <returns>
            The name of the target that will be executed when no other build
            targets are specified, or an empty <see cref="T:System.String"/> if no
            default target is defined for the project.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.ProjectFunctions.GetBaseDirectory">
            <summary>
            Gets the base directory of the current project.
            </summary>
            <returns>
            The base directory of the current project.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TargetFunctions.Exists(System.String)">
            <summary>
            Checks whether the specified target exists.
            </summary>
            <param name="name">The target to test.</param>
            <returns>
            <see langword="true" /> if the specified target exists; otherwise,
            <see langword="false" />.
            </returns>
            <example>
              <para>
              Execute target &quot;clean&quot;, if it exists.
              </para>
              <code>
                <![CDATA[
            <if test="${target::exists('clean')}">
                <call target="clean" />
            </if>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.TargetFunctions.GetCurrentTarget">
            <summary>
            Gets the name of the target being executed.
            </summary>
            <returns>
            A <see cref="T:System.String"/> that contains the name of the target
            being executed.
            </returns>
            <exception cref="T:System.InvalidOperationException">No target is being executed.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.TargetFunctions.HasExecuted(System.String)">
            <summary>
            Checks whether the specified target has already been executed.
            </summary>
            <param name="name">The target to test.</param>
            <returns>
            <see langword="true"/> if the specified target has already been 
            executed; otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.ArgumentException">Target <paramref name="name"/> does not exist.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.TaskFunctions.Exists(System.String)">
            <summary>
            Checks whether the specified task exists.
            </summary>
            <param name="name">The task to test.</param>
            <returns>
            <see langword="true" /> if the specified task exists; otherwise,
            <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TaskFunctions.GetAssembly(System.String)">
            <summary>
            Returns the <see cref="T:System.Reflection.Assembly"/> from which the specified task
            was loaded.
            </summary>
            <param name="name">The name of the task to get the <see cref="T:System.Reflection.Assembly"/> of.</param>
            <returns>
            The <see cref="T:System.Reflection.Assembly"/> from which the specified task was loaded.
            </returns>
            <exception cref="T:System.ArgumentException">Task <paramref name="name"/> is not available.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PropertyFunctions.Exists(System.String)">
            <summary>
            Checks whether the specified property exists.
            </summary>
            <param name="name">The property to test.</param>
            <returns>
            <see langword="true" /> if the specified property exists; otherwise,
            <see langword="false" />.
            </returns>
            <example>
              <para>
              Execute a set of tasks if the &quot;build.debug&quot; property
              exists.
              </para>
              <code>
                <![CDATA[
            <if test="${property::exists('build.debug')}">
                <echo message="Starting debug build" />
                <call target="init-debug" />
                <call target="build" />
            </if>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.PropertyFunctions.IsReadOnly(System.String)">
            <summary>
            Checks whether the specified property is read-only.
            </summary>
            <param name="name">The property to test.</param>
            <returns>
            <see langword="true"/> if the specified property is read-only; 
            otherwise, <see langword="false"/>.
            </returns>
            <example>
              <para>Check whether the "debug" property is read-only.</para>
              <code>property::is-readonly('debug')</code>
            </example>
            <exception cref="T:System.ArgumentException">Property <paramref name="name"/> has not been set.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PropertyFunctions.IsDynamic(System.String)">
            <summary>
            Checks whether the specified property is a dynamic property.
            </summary>
            <param name="name">The property to test.</param>
            <returns>
            <see langword="true"/> if the specified property is a dynamic
            property; otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.ArgumentException">Property <paramref name="name"/> has not been set.</exception>
            <example>
              <para>
              Check whether the "debug" property is a dynamic property.
              </para>
              <code>property::is-dynamic('debug')</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.PlatformFunctions.GetName">
            <summary>
            Gets the name of the platform on which NAnt is running.
            </summary>
            <returns>
            The name of the platform on which NAnt is running.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.PlatformFunctions.IsWin32">
            <summary>
            Checks whether NAnt is running on Windows (and not just 32-bit Windows
            as the name may lead you to believe).
            </summary>
            <returns>
            <see langword="true" /> if NAnt is running on Windows;
            otherwise, <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.PlatformFunctions.IsWindows">
            <summary>
            Checks whether NAnt is running on Windows.
            </summary>
            <returns>
            <see langword="true" /> if NAnt is running on Windows;
            otherwise, <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.PlatformFunctions.IsUnix">
            <summary>
            Checks whether NAnt is running on Unix.
            </summary>
            <returns>
            <see langword="true" /> if NAnt is running on Unix;
            otherwise, <see langword="false" />.
            </returns>
        </member>
        <member name="T:NAnt.Core.Functions.OperatingSystemFunctions">
            <summary>
            Functions that return information about an operating system.
            </summary>
        </member>
        <member name="M:NAnt.Core.Functions.OperatingSystemFunctions.GetPlatform(System.OperatingSystem)">
            <summary>
            Gets a <see cref="T:System.PlatformID"/> value that identifies the operating 
            system platform.
            </summary>
            <param name="operatingSystem">The operating system.</param>
            <returns>
            <see cref="T:System.PlatformID"/> value that identifies the operating system
            platform.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetOperatingSystem"/>
        </member>
        <member name="M:NAnt.Core.Functions.OperatingSystemFunctions.GetVersion(System.OperatingSystem)">
            <summary>
            Gets a <see cref="T:System.Version"/> object that identifies this operating
            system.
            </summary>
            <param name="operatingSystem">The operating system.</param>
            <returns>
            A <see cref="T:System.Version"/> object that describes the major version, 
            minor version, build, and revision of the operating system.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetOperatingSystem"/>
        </member>
        <member name="M:NAnt.Core.Functions.OperatingSystemFunctions.ToString(System.OperatingSystem)">
            <summary>
            Converts the value of the specified operating system to its equivalent
            <see cref="T:System.String"/> representation.
            </summary>
            <param name="operatingSystem">The operating system.</param>
            <returns>
            The <see cref="T:System.String"/> representation of 
            <paramref name="operatingSystem"/>.
            </returns>
            <example>
              <para>
              Output string representation of the current operating system.
              </para>
              <code>
                <![CDATA[
            <echo message="OS=${operating-system::to-string(environment::get-operating-system())}" />
                ]]>
              </code>
              <para>If the operating system is Windows 2000, the output is:</para>
              <code>
            Microsoft Windows NT 5.0.2195.0
              </code>
            </example>
            <seealso cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetOperatingSystem"/>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.GetFullPath(System.String)">
            <summary>
            Returns the fully qualified path.
            </summary>
            <param name="path">The file or directory for which to obtain absolute path information.</param>
            <returns>
            A string containing the fully qualified location of <paramref name="path"/>,
            such as "C:\MyFile.txt".
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> is a zero-length string, contains only white space, or contains one or more invalid characters.</exception>
            <exception cref="T:System.NotSupportedException"><paramref name="path"/> contains a colon (":").</exception>
            <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.Combine(System.String,System.String)">
            <summary>
            Combines two paths.
            </summary>
            <param name="path1">first path</param>
            <param name="path2">second path</param>
            <returns>
            A string containing the combined paths. If one of the specified paths 
            is a zero-length string, this method returns the other path. If 
            <paramref name="path2"/> contains an absolute path, this method 
            returns <paramref name="path2"/>.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path1"/> or <paramref name="path2"/> contain one or more invalid characters.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.ChangeExtension(System.String,System.String)">
            <summary>
            Changes the extension of the path string.
            </summary>
            <param name="path">The path information to modify. The path cannot contain any of the characters 
            defined in <see cref="T:System.IO.Path.InvalidPathChars"/>InvalidPathChars.</param>
            <param name="extension">The new extension (with a leading period). Specify a null reference 
            to remove an existing extension from <paramref name="path"/>.</param>
            <returns>
            <para>
            A string containing the modified path information.
            </para>
            <para>
            On Windows-based desktop platforms, if <paramref name="path"/> is 
            an empty <see cref="T:System.String"/>, the path information is returned 
            unmodified. If <paramref name="path"/> has no extension, the returned 
            path <see cref="T:System.String"/> contains <paramref name="extension"/> 
            appended to the end of <paramref name="path"/>.
            </para>
            </returns>
            <remarks>
            For more information see the <see cref="T:System.IO.Path"/> documentation.
            </remarks>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> contains one or more invalid characters.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.GetDirectoryName(System.String)">
            <summary>
            Returns the directory information for the specified path string.
            </summary>
            <param name="path">The path of a file or directory.</param>
            <returns>
            A <see cref="T:System.String"/> containing directory information for 
            <paramref name="path"/>, or an empty <see cref="T:System.String"/> if 
            <paramref name="path"/> denotes a root directory, or does not
            contain directory information.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> contains invalid characters, is empty, or contains only white spaces.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.GetExtension(System.String)">
            <summary>
            Returns the extension for the specified path string.
            </summary>
            <param name="path">The path string from which to get the extension.</param>
            <returns>
            A <see cref="T:System.String"/> containing the extension of the specified 
            <paramref name="path"/> (including the "."), or an empty 
            <see cref="T:System.String"/> if <paramref name="path"/> does not have 
            extension information.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> contains one or more invalid characters.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.GetFileName(System.String)">
            <summary>
            Returns the filename for the specified path string.
            </summary>
            <param name="path">The path string from which to obtain the file name and extension.</param>
            <returns>
            <para>
            A <see cref="T:System.String"/> consisting of the characters after the last 
            directory character in path. 
            </para>
            <para>
            If the last character of <paramref name="path"/> is a directory or 
            volume separator character, an empty <see cref="T:System.String"/> is returned.
            </para>
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> contains one or more invalid characters.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.GetFileNameWithoutExtension(System.String)">
            <summary>
            Returns the filename without extension for the specified path string.
            </summary>
            <param name="path">The path of the file.</param>
            <returns>
            A <see cref="T:System.String"/> containing the <see cref="T:System.String"/> returned 
            by <see cref="M:NAnt.Core.Functions.PathFunctions.GetFileName(System.String)"/>, minus the last period (.) and all 
            characters following it.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> contains one or more invalid characters.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.GetPathRoot(System.String)">
            <summary>
            Gets the root directory of the specified path.
            </summary>
            <param name="path">The path from which to obtain root directory information.</param>
            <returns>
            A <see cref="T:System.String"/> containing the root directory of 
            <paramref name="path"/>, such as "C:\", or an empty <see cref="T:System.String"/> 
            if <paramref name="path"/> does not contain root directory information.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> contains invalid characters, or is empty.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.GetTempFileName">
            <summary>
            Returns a uniquely named zero-byte temporary file on disk and returns the full path to that file.
            </summary>
            <returns>
            A <see cref="T:System.String"/> containing the name of the temporary file.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.GetTempPath">
            <summary>
            Gets the path to the temporary directory.
            </summary>
            <returns>
            A <see cref="T:System.String"/> containing the path information of a 
            temporary directory.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.HasExtension(System.String)">
            <summary>
            Determines whether a path string includes an extension.
            </summary>
            <param name="path">The path to search for an extension.</param>
            <returns>
            <see langword="true"/>. if the characters that follow the last 
            directory separator or volume separator in the <paramref name="path"/> 
            include a period (.) followed by one or more characters; 
            otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> contains one or more invalid characters.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PathFunctions.IsPathRooted(System.String)">
            <summary>
            Determines whether a path string is absolute.
            </summary>
            <param name="path">The path to test.</param>
            <returns>
            <see langword="true"/> if path contains an absolute <paramref name="path"/>; 
            otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="path"/> contains one or more invalid characters.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.GetVariable(System.String,System.String)">
            <summary>
            Gets the value of a variable for the specified package.
            </summary>
            <param name="package">The package for which the variable should be retrieved.</param>
            <param name="name">The name of the variable.</param>
            <returns>
            The value of variable <paramref name="name"/> for the specified 
            package.
            </returns>
            <exception cref="T:System.ComponentModel.Win32Exception"><c>pkg-config</c> could not be started.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="package"/> does not exist.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.GetLinkFlags(System.String)">
            <summary>
            Gets the link flags required to compile the package, including all
            its dependencies.
            </summary>
            <param name="package">The package for which the link flags should be retrieved.</param>
            <returns>
            The link flags required to compile the package.
            </returns>
            <exception cref="T:System.ComponentModel.Win32Exception"><c>pkg-config</c> could not be started.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="package"/> does not exist.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.GetCompileFlags(System.String)">
            <summary>
            Gets the compile flags required to compile the package, including all
            its dependencies.
            </summary>
            <param name="package">The package for which the compile flags should be retrieved.</param>
            <returns>
            The pre-processor and compile flags required to compile the package.
            </returns>
            <exception cref="T:System.ComponentModel.Win32Exception"><c>pkg-config</c> could not be started.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="package"/> does not exist.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.GetModVersion(System.String)">
            <summary>
            Determines the version of the given package.
            </summary>
            <param name="package">The package to get the version of.</param>
            <returns>
            The version of the given package.
            </returns>
            <exception cref="T:System.ComponentModel.Win32Exception"><c>pkg-config</c> could not be started.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="package"/> does not exist.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.IsAtLeastVersion(System.String,System.String)">
            <summary>
            Determines whether the given package is at least version 
            <paramref name="version"/>.
            </summary>
            <param name="package">The package to check.</param>
            <param name="version">The version the package should at least have.</param>
            <returns>
            <see langword="true"/> if the given package is at least version
            <paramref name="version"/>; otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.ComponentModel.Win32Exception"><c>pkg-config</c> could not be started.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.IsExactVersion(System.String,System.String)">
            <summary>
            Determines whether the given package is exactly version 
            <paramref name="version"/>.
            </summary>
            <param name="package">The package to check.</param>
            <param name="version">The version the package should have.</param>
            <returns>
            <see langword="true"/> if the given package is exactly version
            <paramref name="version"/>; otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.ComponentModel.Win32Exception"><c>pkg-config</c> could not be started.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.IsMaxVersion(System.String,System.String)">
            <summary>
            Determines whether the given package is at no newer than version
            <paramref name="version"/>.
            </summary>
            <param name="package">The package to check.</param>
            <param name="version">The version the package should maximum have.</param>
            <returns>
            <see langword="true"/> if the given package is at no newer than 
            version <paramref name="version"/>; otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.ComponentModel.Win32Exception"><c>pkg-config</c> could not be started.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.IsBetweenVersion(System.String,System.String,System.String)">
            <summary>
            Determines whether the given package is between two versions.
            </summary>
            <param name="package">The package to check.</param>
            <param name="minVersion">The version the package should at least have.</param>
            <param name="maxVersion">The version the package should maximum have.</param>
            <returns>
            <see langword="true"/> if the given package is between <paramref name="minVersion"/>
            and <paramref name="maxVersion"/>; otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.ComponentModel.Win32Exception"><c>pkg-config</c> could not be started.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.Exists(System.String)">
            <summary>
            Determines whether the given package exists.
            </summary>
            <param name="package">The package to check.</param>
            <returns>
            <see langword="true"/> if the package exists; otherwise, 
            <see langword="false"/>.
            </returns>
            <exception cref="T:System.ComponentModel.Win32Exception"><c>pkg-config</c> could not be started.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.RunPkgConfigBool(NAnt.Core.Types.Argument[])">
            <summary>
            Runs pkg-config with the specified arguments and returns a 
            <see cref="T:System.Boolean"/> based on the exit code.
            </summary>
            <param name="args">The arguments to pass to pkg-config.</param>
            <returns>
            <see langword="true"/> if pkg-config exited with exit code 0;
            otherwise, <see langword="false"/>
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.RunPkgConfigString(NAnt.Core.Types.Argument[])">
            <summary>
            Runs pkg-config with the specified arguments and returns the result 
            as a <see cref="T:System.String"/>.
            </summary>
            <param name="args">The arguments to pass to pkg-config.</param>
            <returns>
            The result of running pkg-config with the specified arguments.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.PkgConfigFunctions.GetTask(System.IO.Stream)">
            <summary>
            Factory method to return a new instance of ExecTask
            </summary>
            <param name="stream"></param>
            <returns></returns>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.GetLength(System.String)">
            <summary>
            Returns the length of the specified string.
            </summary>
            <param name="s">input string</param>
            <returns>
            The string's length.
            </returns>
            <example>
            <code>string::get-length('foo') ==> 3</code>
            </example>
            <example>
            <code>string::get-length('') ==> 0</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.Substring(System.String,System.Int32,System.Int32)">
            <summary>
            Returns a substring of the specified string.
            </summary>
            <param name="str">input string</param>
            <param name="startIndex">position of the start of the substring</param>
            <param name="length">the length of the substring</param>
            <returns>
            <para>
            If the <paramref name="length"/> is greater than zero, the
            function returns a substring starting at character position
            <paramref name="startIndex"/> with a length of <paramref name="length"/>
            characters.
            </para>
            <para>
            If the <paramref name="length"/> is equal to zero, the function
            returns an empty string.
            </para>
            </returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex"/> or <paramref name="length"/> is less than zero.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex"/> is greater than the length of <paramref name="str"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex"/> plus <paramref name="length"/> indicates a position not within <paramref name="str"/>.</exception>
            <example>
            <code>string::substring('testing string', 0, 4) ==&gt; 'test'</code>
            </example>
            <example>
            <code>string::substring('testing string', 8, 3) ==&gt; 'str'</code>
            </example>
            <example>
            <code>string::substring('testing string', 8, 0) ==&gt; ''</code>
            </example>
            <example>
            <code>string::substring('testing string', -1, 5) ==&gt; ERROR</code>
            </example>
            <example>
            <code>string::substring('testing string', 8, -1) ==&gt; ERROR</code>
            </example>
            <example>
            <code>string::substring('testing string', 5, 17) ==&gt; ERROR</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.StartsWith(System.String,System.String)">
            <summary>
            Tests whether the specified string starts with the specified prefix
            string.
            </summary>
            <param name="s1">test string</param>
            <param name="s2">prefix string</param>
            <returns>
            <see langword="true" /> when <paramref name="s2" /> is a prefix for
            the string <paramref name="s1" />. Meaning, the characters at the 
            beginning of <paramref name="s1" /> are identical to
            <paramref name="s2" />; otherwise, <see langword="false" />.
            </returns>
            <remarks>
            This function performs a case-sensitive word search using the 
            invariant culture.
            </remarks>
            <example>
            <code>string::starts-with('testing string', 'test') ==> true</code>
            </example>
            <example>
            <code>string::starts-with('testing string', 'testing') ==> true</code>
            </example>
            <example>
            <code>string::starts-with('testing string', 'string') ==> false</code>
            </example>
            <example>
            <code>string::starts-with('test', 'testing string') ==> false</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.EndsWith(System.String,System.String)">
            <summary>
            Tests whether the specified string ends with the specified suffix
            string.
            </summary>
            <param name="s1">test string</param>
            <param name="s2">suffix string</param>
            <returns>
            <see langword="true" /> when <paramref name="s2" /> is a suffix for
            the string <paramref name="s1" />. Meaning, the characters at the 
            end of <paramref name="s1" /> are identical to 
            <paramref name="s2" />; otherwise, <see langword="false" />.
            </returns>
            <remarks>
            This function performs a case-sensitive word search using the 
            invariant culture.
            </remarks>
            <example>
            <code>string::ends-with('testing string', 'string') ==> true</code>
            </example>
            <example>
            <code>string::ends-with('testing string', '') ==> true</code>
            </example>
            <example>
            <code>string::ends-with('testing string', 'bring') ==> false</code>
            </example>
            <example>
            <code>string::ends-with('string', 'testing string') ==> false</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.ToLower(System.String)">
            <summary>
            Returns the specified string converted to lowercase.
            </summary>
            <param name="s">input string</param>
            <returns>
            The string <paramref name="s" /> in lowercase.
            </returns>
            <remarks>
            The casing rules of the invariant culture are used to convert the
            <paramref name="s" /> to lowercase.
            </remarks>
            <example>
            <code>string::to-lower('testing string') ==> 'testing string'</code>
            </example>
            <example>
            <code>string::to-lower('Testing String') ==> 'testing string'</code>
            </example>
            <example>
            <code>string::to-lower('Test 123') ==> 'test 123'</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.ToUpper(System.String)">
            <summary>
            Returns the specified string converted to uppercase.
            </summary>
            <param name="s">input string</param>
            <returns>
            The string <paramref name="s" /> in uppercase.
            </returns>
            <remarks>
            The casing rules of the invariant culture are used to convert the
            <paramref name="s" /> to uppercase.
            </remarks>
            <example>
            <code>string::to-upper('testing string') ==> 'TESTING STRING'</code>
            </example>
            <example>
            <code>string::to-upper('Testing String') ==> 'TESTING STRING'</code>
            </example>
            <example>
            <code>string::to-upper('Test 123') ==> 'TEST 123'</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.Replace(System.String,System.String,System.String)">
            <summary>
            Returns a string corresponding to the replacement of a given string
            with another in the specified string.
            </summary>
            <param name="str">input string</param>
            <param name="oldValue">A <see cref="T:System.String"/> to be replaced.</param>
            <param name="newValue">A <see cref="T:System.String"/> to replace all occurrences of <paramref name="oldValue"/>.</param>
            <returns>
            A <see cref="T:System.String"/> equivalent to <paramref name="str"/> but 
            with all instances of <paramref name="oldValue"/> replaced with 
            <paramref name="newValue"/>.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="oldValue"/> is an empty string.</exception>
            <remarks>
            This function performs a word (case-sensitive and culture-sensitive) 
            search to find <paramref name="oldValue"/>.
            </remarks>
            <example>
            <code>string::replace('testing string', 'test', 'winn') ==&gt; 'winning string'</code>
            </example>
            <example>
            <code>string::replace('testing string', 'foo', 'winn') ==&gt; 'testing string'</code>
            </example>
            <example>
            <code>string::replace('testing string', 'ing', '') ==&gt; 'test str'</code>
            </example>
            <example>
            <code>string::replace('banana', 'ana', 'ana') ==&gt; 'banana'</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.Contains(System.String,System.String)">
            <summary>
            Tests whether the specified string contains the given search string.
            </summary>
            <param name="source">The string to search.</param>
            <param name="value">The string to locate within <paramref name="source" />.</param>
            <returns>
            <see langword="true" /> if <paramref name="value" /> is found in 
            <paramref name="source" />; otherwise, <see langword="false" />.
            </returns>
            <remarks>
            This function performs a case-sensitive word search using the 
            invariant culture.
            </remarks>
            <example>
            <code>string::contains('testing string', 'test') ==> true</code>
            </example>
            <example>
            <code>string::contains('testing string', '') ==> true</code>
            </example>
            <example>
            <code>string::contains('testing string', 'Test') ==> false</code>
            </example>
            <example>
            <code>string::contains('testing string', 'foo') ==> false</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.IndexOf(System.String,System.String)">
            <summary>
            Returns the position of the first occurrence in the specified string
            of the given search string.
            </summary>
            <param name="source">The string to search.</param>
            <param name="value">The string to locate within <paramref name="source" />.</param>
            <returns>
            <para>
            The lowest-index position of <paramref name="value" /> in
            <paramref name="source" /> if it is found, or -1 if <paramref name="source" /> 
            does not contain <paramref name="value" />.
            </para>
            <para>
            If <paramref name="value" /> is an empty string, the return value
            will always be <c>0</c>.
            </para>
            </returns>
            <remarks>
            This function performs a case-sensitive word search using the 
            invariant culture.
            </remarks>
            <example>
            <code>string::index-of('testing string', 'test') ==> 0</code>
            </example>
            <example>
            <code>string::index-of('testing string', '') ==> 0</code>
            </example>
            <example>
            <code>string::index-of('testing string', 'Test') ==> -1</code>
            </example>
            <example>
            <code>string::index-of('testing string', 'ing') ==> 4</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.LastIndexOf(System.String,System.String)">
            <summary>
            Returns the position of the last occurrence in the specified string
            of the given search string.
            </summary>
            <param name="source">The string to search.</param>
            <param name="value">The string to locate within <paramref name="source" />.</param>
            <returns>
            <para>
            The highest-index position of <paramref name="value" /> in
            <paramref name="source" /> if it is found, or -1 if <paramref name="source" /> 
            does not contain <paramref name="value" />.
            </para>
            <para>
            If <paramref name="value" /> is an empty string, the return value
            is the last index position in <paramref name="source" />.
            </para>
            </returns>
            <remarks>
            This function performs a case-sensitive word search using the 
            invariant culture.
            </remarks>
            <example>
            <code>string::last-index-of('testing string', 'test') ==> 0</code>
            </example>
            <example>
            <code>string::last-index-of('testing string', '') ==> 13</code>
            </example>
            <example>
            <code>string::last-index-of('testing string', 'Test') ==> -1</code>
            </example>
            <example>
            <code>string::last-index-of('testing string', 'ing') ==> 11</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.PadLeft(System.String,System.Int32,System.String)">
            <summary>
            Returns the given string left-padded to the given length.
            </summary>
            <param name="s">The <see cref="T:System.String"/> that needs to be left-padded.</param>
            <param name="totalWidth">The number of characters in the resulting string, equal to the number of original characters plus any additional padding characters.</param>
            <param name="paddingChar">A Unicode padding character.</param>
            <returns>
            If the length of <paramref name="s"/> is at least 
            <paramref name="totalWidth"/>, then a new <see cref="T:System.String"/> identical
            to <paramref name="s"/> is returned. Otherwise, <paramref name="s"/> 
            will be padded on the left with as many <paramref name="paddingChar"/>
            characters as needed to create a length of <paramref name="totalWidth"/>.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="totalWidth"/> is less than zero.</exception>
            <remarks>
            Note that only the first character of <paramref name="paddingChar"/>
            will be used when padding the result.
            </remarks>
            <example>
            <code>string::pad-left('test', 10, ' ') ==&gt; '      test'</code>
            </example>
            <example>
            <code>string::pad-left('test', 10, 'test') ==&gt; 'tttttttest'</code>
            </example>
            <example>
            <code>string::pad-left('test', 3, ' ') ==&gt; 'test'</code>
            </example>
            <example>
            <code>string::pad-left('test', -4, ' ') ==&gt; ERROR</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.PadRight(System.String,System.Int32,System.String)">
            <summary>
            Returns the given string right-padded to the given length.
            </summary>
            <param name="s">The <see cref="T:System.String"/> that needs to be right-padded.</param>
            <param name="totalWidth">The number of characters in the resulting string, equal to the number of original characters plus any additional padding characters.</param>
            <param name="paddingChar">A Unicode padding character.</param>
            <returns>
            If the length of <paramref name="s"/> is at least 
            <paramref name="totalWidth"/>, then a new <see cref="T:System.String"/> identical
            to <paramref name="s"/> is returned. Otherwise, <paramref name="s"/> 
            will be padded on the right with as many <paramref name="paddingChar"/>
            characters as needed to create a length of <paramref name="totalWidth"/>.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="totalWidth"/> is less than zero.</exception>
            <remarks>
            Note that only the first character of <paramref name="paddingChar"/>
            will be used when padding the result.
            </remarks>
            <example>
            <code>string::pad-right('test', 10, ' ') ==&gt; 'test      '</code>
            </example>
            <example>
            <code>string::pad-right('test', 10, 'abcd') ==&gt; 'testaaaaaa'</code>
            </example>
            <example>
            <code>string::pad-right('test', 3, ' ') ==&gt; 'test'</code>
            </example>
            <example>
            <code>string::pad-right('test', -3, ' ') ==&gt; ERROR</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.Trim(System.String)">
            <summary>
            Returns the given string trimmed of whitespace.
            </summary>
            <param name="s">input string</param>
            <returns>
            The string <paramref name="s" /> with any leading or trailing
            white space characters removed.
            </returns>
            <example>
            <code>string::trim('  test  ') ==> 'test'</code>
            </example>
            <example>
            <code>string::trim('\t\tfoo  \r\n') ==> 'foo'</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.TrimStart(System.String)">
            <summary>
            Returns the given string trimmed of leading whitespace.
            </summary>
            <param name="s">input string</param>
            <returns>
            The string <paramref name="s" /> with any leading
            whites pace characters removed.
            </returns>
            <example>
            <code>string::trim-start('  test  ') ==> 'test  '</code>
            </example>
            <example>
            <code>string::trim-start('\t\tfoo  \r\n') ==> 'foo  \r\n'</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.StringFunctions.TrimEnd(System.String)">
            <summary>
            Returns the given string trimmed of trailing whitespace.
            </summary>
            <param name="s">input string</param>
            <returns>
            The string <paramref name="s" /> with any trailing
            white space characters removed.
            </returns>
            <example>
            <code>string::trim-end('  test  ') ==> '  test'</code>
            </example>
            <example>
            <code>string::trim-end('\t\tfoo  \r\n') ==> '\t\tfoo'</code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetTotalDays(System.TimeSpan)">
            <summary>
            Returns the total number of days represented by the specified 
            <see cref="T:System.TimeSpan"/>, expressed in whole and fractional days.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The total number of days represented by the given <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetTotalHours(System.TimeSpan)">
            <summary>
            Returns the total number of hours represented by the specified 
            <see cref="T:System.TimeSpan"/>, expressed in whole and fractional hours.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The total number of hours represented by the given <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetTotalMinutes(System.TimeSpan)">
            <summary>
            Returns the total number of minutes represented by the specified 
            <see cref="T:System.TimeSpan"/>, expressed in whole and fractional minutes.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The total number of minutes represented by the given <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetTotalSeconds(System.TimeSpan)">
            <summary>
            Returns the total number of seconds represented by the specified 
            <see cref="T:System.TimeSpan"/>, expressed in whole and fractional seconds.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The total number of seconds represented by the given <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetTotalMilliseconds(System.TimeSpan)">
            <summary>
            Returns the total number of milliseconds represented by the specified 
            <see cref="T:System.TimeSpan"/>, expressed in whole and fractional milliseconds.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The total number of milliseconds represented by the given 
            <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetDays(System.TimeSpan)">
            <summary>
            Returns the number of whole days represented by the specified 
            <see cref="T:System.TimeSpan"/>.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The number of whole days represented by the given 
            <see cref="T:System.TimeSpan"/>.
            </returns>
            <example>
              <para>
              Remove all files that have not been modified in the last 7 days from directory "binaries".</para>
              <code>
                <![CDATA[
            <foreach item="File" in="binaries" property="filename">
                <if test="${timespan::get-days(datetime::now() - file::get-last-write-time(filename)) >= 7}">
                    <delete file="${filename}" />
                </if>
            </foreach>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetHours(System.TimeSpan)">
            <summary>
            Returns the number of whole hours represented by the specified 
            <see cref="T:System.TimeSpan"/>.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The number of whole hours represented by the given 
            <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetMinutes(System.TimeSpan)">
            <summary>
            Returns the number of whole minutes represented by the specified 
            <see cref="T:System.TimeSpan"/>.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The number of whole minutes represented by the given 
            <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetSeconds(System.TimeSpan)">
            <summary>
            Returns the number of whole seconds represented by the specified 
            <see cref="T:System.TimeSpan"/>.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The number of whole seconds represented by the given 
            <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetMilliseconds(System.TimeSpan)">
            <summary>
            Returns the number of whole milliseconds represented by the specified
            <see cref="T:System.TimeSpan"/>.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The number of whole milliseconds represented by the given 
            <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.GetTicks(System.TimeSpan)">
            <summary>
            Returns the number of ticks contained in the specified
            <see cref="T:System.TimeSpan"/>.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/>.</param>
            <returns>
            The number of ticks contained in the given <see cref="T:System.TimeSpan"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.FromDays(System.Double)">
            <summary>
            Returns a <see cref="T:System.TimeSpan"/> that represents a specified number
            of days, where the specification is accurate to the nearest millisecond.
            </summary>
            <param name="value">A number of days, accurate to the nearest millisecond.</param>
            <returns>
            A <see cref="T:System.TimeSpan"/> that represents <paramref name="value"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.FromHours(System.Double)">
            <summary>
            Returns a <see cref="T:System.TimeSpan"/> that represents a specified number
            of hours, where the specification is accurate to the nearest 
            millisecond.
            </summary>
            <param name="value">A number of hours, accurate to the nearest millisecond.</param>
            <returns>
            A <see cref="T:System.TimeSpan"/> that represents <paramref name="value"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.FromMinutes(System.Double)">
            <summary>
            Returns a <see cref="T:System.TimeSpan"/> that represents a specified number
            of minutes, where the specification is accurate to the nearest 
            millisecond.
            </summary>
            <param name="value">A number of minutes, accurate to the nearest millisecond.</param>
            <returns>
            A <see cref="T:System.TimeSpan"/> that represents <paramref name="value"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.FromSeconds(System.Double)">
            <summary>
            Returns a <see cref="T:System.TimeSpan"/> that represents a specified number
            of seconds, where the specification is accurate to the nearest 
            millisecond.
            </summary>
            <param name="value">A number of seconds, accurate to the nearest millisecond.</param>
            <returns>
            A <see cref="T:System.TimeSpan"/> that represents <paramref name="value"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.FromMilliseconds(System.Double)">
            <summary>
            Returns a <see cref="T:System.TimeSpan"/> that represents a specified number
            of milliseconds.
            </summary>
            <param name="value">A number of milliseconds.</param>
            <returns>
            A <see cref="T:System.TimeSpan"/> that represents <paramref name="value"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanFunctions.FromTicks(System.Int64)">
            <summary>
            Returns a <see cref="T:System.TimeSpan"/> that represents a specified time, 
            where the specification is in units of ticks.
            </summary>
            <param name="value">A number of ticks that represent a time.</param>
            <returns>
            A <see cref="T:System.TimeSpan"/> that represents <paramref name="value"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanConversionFunctions.Parse(System.String)">
            <summary>
            Constructs a <see cref="T:System.TimeSpan"/> from a time indicated by a 
            specified string.
            </summary>
            <param name="s">A string.</param>
            <returns>
            A <see cref="T:System.TimeSpan"/> that corresponds to <paramref name="s"/>.
            </returns>
            <exception cref="T:System.FormatException"><paramref name="s"/> has an invalid format.</exception>
            <exception cref="T:System.OverflowException">At least one of the hours, minutes, or seconds components is outside its valid range.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.TimeSpanConversionFunctions.ToString(System.TimeSpan)">
            <summary>
            Converts the specified <see cref="T:System.TimeSpan"/> to its equivalent 
            string representation.
            </summary>
            <param name="value">A <see cref="T:System.TimeSpan"/> to convert.</param>
            <returns>
            The string representation of <paramref name="value"/>. The format 
            of the return value is of the form: [-][d.]hh:mm:ss[.ff].
            </returns>
        </member>
        <member name="M:NAnt.Core.Functions.VersionFunctions.GetMajor(System.Version)">
            <summary>
            Gets the value of the major component of a given version.
            </summary>
            <param name="version">A version.</param>
            <returns>
            The major version number.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.AssemblyNameFunctions.GetVersion(System.Reflection.AssemblyName)"/>
            <seealso cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetVersion"/>
            <seealso cref="M:NAnt.Core.Functions.OperatingSystemFunctions.GetVersion(System.OperatingSystem)"/>
        </member>
        <member name="M:NAnt.Core.Functions.VersionFunctions.GetMinor(System.Version)">
            <summary>
            Gets the value of the minor component of a given version.
            </summary>
            <param name="version">A version.</param>
            <returns>
            The minor version number.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.AssemblyNameFunctions.GetVersion(System.Reflection.AssemblyName)"/>
            <seealso cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetVersion"/>
            <seealso cref="M:NAnt.Core.Functions.OperatingSystemFunctions.GetVersion(System.OperatingSystem)"/>
        </member>
        <member name="M:NAnt.Core.Functions.VersionFunctions.GetBuild(System.Version)">
            <summary>
            Gets the value of the build component of a given version.
            </summary>
            <param name="version">A version.</param>
            <returns>
            The build number, or -1 if the build number is undefined.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.AssemblyNameFunctions.GetVersion(System.Reflection.AssemblyName)"/>
            <seealso cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetVersion"/>
            <seealso cref="M:NAnt.Core.Functions.OperatingSystemFunctions.GetVersion(System.OperatingSystem)"/>
        </member>
        <member name="M:NAnt.Core.Functions.VersionFunctions.GetRevision(System.Version)">
            <summary>
            Gets the value of the revision component of a given version.
            </summary>
            <param name="version">A version.</param>
            <returns>
            The revision number, or -1 if the revision number is undefined.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.AssemblyNameFunctions.GetVersion(System.Reflection.AssemblyName)"/>
            <seealso cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetVersion"/>
            <seealso cref="M:NAnt.Core.Functions.OperatingSystemFunctions.GetVersion(System.OperatingSystem)"/>
        </member>
        <member name="M:NAnt.Core.Functions.VersionConversionFunctions.Parse(System.String)">
            <summary>
            Converts the specified string representation of a version to 
            its <see cref="T:System.Version"/> equivalent.
            </summary>
            <param name="version">A string containing the major, minor, build, and revision numbers, where each number is delimited with a period character ('.').</param>
            <returns>
            A <see cref="T:System.Version"/> instance representing the specified 
            <see cref="T:System.String"/>.
            </returns>
            <exception cref="T:System.ArgumentException"><paramref name="version"/> has fewer than two components or more than four components.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">A major, minor, build, or revision component is less than zero.</exception>
            <exception cref="T:System.FormatException">At least one component of <paramref name="version"/> does not parse to a decimal integer.</exception>
        </member>
        <member name="M:NAnt.Core.Functions.VersionConversionFunctions.ToString(System.Version)">
            <summary>
            Converts the specified <see cref="T:System.Version"/> to its equivalent
            string representation.
            </summary>
            <param name="value">A <see cref="T:System.Version"/> to convert.</param>
            <returns>
            The string representation of the values of the major, minor, build, 
            and revision components of the specified <see cref="T:System.Version"/>.
            </returns>
            <seealso cref="M:NAnt.Core.Functions.AssemblyNameFunctions.GetVersion(System.Reflection.AssemblyName)"/>
            <seealso cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetVersion"/>
            <seealso cref="M:NAnt.Core.Functions.OperatingSystemFunctions.GetVersion(System.OperatingSystem)"/>
        </member>
        <member name="T:NAnt.Core.Tasks.AttribTask">
            <summary>
            Changes the file attributes of a file or set of files and directories.
            </summary>
            <remarks>
            <para>
            <see cref="T:NAnt.Core.Tasks.AttribTask"/> does not have the concept of turning 
            attributes off.  Instead you specify all the attributes that you want 
            turned on and the rest are turned off by default.
            </para>
            <para>
            Refer to the <see cref="T:System.IO.FileAttributes"/> enumeration in the .NET SDK 
            for more information about file attributes.
            </para>
            </remarks>
            <example>
              <para>
                Set the <c>read-only</c> file attribute for the specified file in 
                the project directory.
              </para>
              <code>
                <![CDATA[
            <attrib file="myfile.txt" readonly="true" />
                ]]>
              </code>
            </example>
            <example>
              <para>
                Set the <c>normal</c> file attribute for the specified file.
              </para>
              <code>
                <![CDATA[
            <attrib file="myfile.txt" normal="true" />
                ]]>
              </code>
            </example>
            <example>
              <para>
                Set the <c>normal</c> file attribute for all executable files in 
                the current project directory and sub-directories.
                </para>
              <code>
                <![CDATA[
            <attrib normal="true">
                <fileset>
                    <include name="**/*.exe" />
                    <include name="bin" />
                </fileset>
            </attrib>
                ]]>
              </code>
            </example>
        </member>
        <member name="T:NAnt.Core.Task">
            <summary>
            Provides the abstract base class for tasks.
            </summary>
            <remarks>
            A task is a piece of code that can be executed.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Task.Execute">
            <summary>
            Executes the task unless it is skipped.
            </summary>
        </member>
        <member name="M:NAnt.Core.Task.Log(NAnt.Core.Level,System.String)">
            <summary>
            Logs a message with the given priority.
            </summary>
            <param name="messageLevel">The message priority at which the specified message is to be logged.</param>
            <param name="message">The message to be logged.</param>
            <remarks>
            <para>
            The actual logging is delegated to the project.
            </para>
            <para>
            If the <see cref="P:NAnt.Core.Task.Verbose"/> attribute is set on the task and a
            message is logged with level <see cref="F:NAnt.Core.Level.Verbose"/>, the
            priority of the message will be increased to <see cref="F:NAnt.Core.Level.Info"/>
            when the threshold of the build log is <see cref="F:NAnt.Core.Level.Info"/>.
            </para>
            <para>
            This will allow individual tasks to run in verbose mode while
            the build log itself is still configured with threshold 
            <see cref="F:NAnt.Core.Level.Info"/>.
            </para>
            <para>
            The threshold of the project is not taken into account to determine
            whether a message should be passed to the logging infrastructure, 
            as build listeners might be interested in receiving all messages.
            </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.Task.Log(NAnt.Core.Level,System.String,System.Object[])">
            <summary>
            Logs a formatted message with the given priority.
            </summary>
            <param name="messageLevel">The message priority at which the specified message is to be logged.</param>
            <param name="message">The message to log, containing zero or more format items.</param>
            <param name="args">An <see cref="T:System.Object"/> array containing zero or more objects to format.</param>
            <remarks>
            <para>
            The actual logging is delegated to the project.
            </para>
            <para>
            If the <see cref="P:NAnt.Core.Task.Verbose"/> attribute is set on the task and a 
            message is logged with level <see cref="F:NAnt.Core.Level.Verbose"/>, the 
            priority of the message will be increased to <see cref="F:NAnt.Core.Level.Info"/>.
            when the threshold of the build log is <see cref="F:NAnt.Core.Level.Info"/>.
            </para>
            <para>
            This will allow individual tasks to run in verbose mode while
            the build log itself is still configured with threshold 
            <see cref="F:NAnt.Core.Level.Info"/>.
            </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.Task.IsLogEnabledFor(NAnt.Core.Level)">
            <summary>
            Determines whether build output is enabled for the given 
            <see cref="T:NAnt.Core.Level"/>.
            </summary>
            <param name="messageLevel">The <see cref="T:NAnt.Core.Level"/> to check.</param>
            <returns>
            <see langword="true"/> if messages with the given <see cref="T:NAnt.Core.Level"/>
            should be passed on to the logging infrastructure; otherwise, 
            <see langword="false"/>.
            </returns>
            <remarks>
            The threshold of the project is not taken into account to determine
            whether a message should be passed to the logging infrastructure, 
            as build listeners might be interested in receiving all messages.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Task.InitializeTaskConfiguration">
            <summary>
            Initializes the configuration of the task using configuration 
            settings retrieved from the NAnt configuration file.
            </summary>
            <remarks>
            TO-DO : Remove this temporary hack when a permanent solution is 
            available for loading the default values from the configuration
            file if a build element is constructed from code.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Task.Initialize">
            <summary>Initializes the task.</summary>
        </member>
        <member name="M:NAnt.Core.Task.InitializeTask(System.Xml.XmlNode)">
            <summary>Initializes the task.</summary>
        </member>
        <member name="M:NAnt.Core.Task.ExecuteTask">
            <summary>Executes the task.</summary>
        </member>
        <member name="M:NAnt.Core.Task.GetAttributeConfigurationNode(NAnt.Core.FrameworkInfo,System.String)">
            <summary>
            Locates the XML node for the specified attribute in either the
            configuration section of the extension assembly or the.project.
            </summary>
            <param name="attributeName">The name of attribute for which the XML configuration node should be located.</param>
            <param name="framework">The framework to use to obtain framework specific information, or <see langword="null" /> if no framework specific information should be used.</param>
            <returns>
            The XML configuration node for the specified attribute, or 
            <see langword="null" /> if no corresponding XML node could be 
            located.
            </returns>
            <remarks>
            If there's a valid current framework, the configuration section for
            that framework will first be searched.  If no corresponding 
            configuration node can be located in that section, the framework-neutral
            section of the project configuration node will be searched.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Task.FailOnError">
            <summary>
            Determines if task failure stops the build, or is just reported. 
            The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Task.Verbose">
            <summary>
            Determines whether the task should report detailed build log messages. 
            The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Task.IfDefined">
            <summary>
            If <see langword="true" /> then the task will be executed; otherwise, 
            skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Task.UnlessDefined">
            <summary>
            Opposite of <see cref="P:NAnt.Core.Task.IfDefined"/>. If <see langword="false"/> 
            then the task will be executed; otherwise, skipped. The default is 
            <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Task.Name">
            <summary>
            The name of the task.
            </summary>
        </member>
        <member name="P:NAnt.Core.Task.LogPrefix">
            <summary>
            The prefix used when sending messages to the log.
            </summary>
        </member>
        <member name="P:NAnt.Core.Task.Threshold">
            <summary>
            Gets or sets the log threshold for this <see cref="T:NAnt.Core.Task"/>. By
            default the threshold of a task is <see cref="F:NAnt.Core.Level.Debug"/>,
            causing no messages to be filtered in the task itself.
            </summary>
            <value>
            The log threshold level for this <see cref="T:NAnt.Core.Task"/>.
            </value>
            <remarks>
            When the threshold of a <see cref="T:NAnt.Core.Task"/> is higher than the
            threshold of the <see cref="T:NAnt.Core.Project"/>, then all messages will
            still be delivered to the build listeners.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Task.TaskBuilder">
            <summary>
            Returns the TaskBuilder used to construct an instance of this
            <see cref="T:NAnt.Core.Task"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.AttribTask.File">
            <summary>
            The name of the file which will have its attributes set. This is 
            provided as an alternate to using the task's fileset.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.AttribTask.AttribFileSet">
            <summary>
            All the matching files and directories in this fileset will have 
            their attributes set.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.AttribTask.ArchiveAttrib">
            <summary>
            Set the archive attribute. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.AttribTask.HiddenAttrib">
            <summary>
            Set the hidden attribute. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.AttribTask.NormalAttrib">
            <summary>
            Set the normal file attributes. This attribute is only valid if used 
            alone. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.AttribTask.ReadOnlyAttrib">
            <summary>
            Set the read-only attribute. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.AttribTask.SystemAttrib">
            <summary>
            Set the system attribute. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.AvailableTask">
            <summary>
            Checks if a resource is available at runtime.
            </summary>
            <remarks>
              <para>
              The specified property is set to <see langword="true"/> if the 
              requested resource is available at runtime, and <see langword="false"/> 
              if the resource is not available.
              </para>
              <note>
              we advise you to use the following functions instead:
              </note>
              <list type="table">
                <listheader>
                    <term>Function</term>
                    <description>Description</description>
                </listheader>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.FileFunctions.Exists(System.String)"/></term>
                    <description>Determines whether the specified file exists.</description>
                </item>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.DirectoryFunctions.Exists(System.String)"/></term>
                    <description>Determines whether the given path refers to an existing directory on disk.</description>
                </item>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.FrameworkFunctions.Exists(System.String)"/></term>
                    <description>Checks whether the specified framework exists..</description>
                </item>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.FrameworkFunctions.SdkExists(System.String)"/></term>
                    <description>Checks whether the SDK for the specified framework is installed.</description>
                </item>
              </list>  
            </remarks>
            <example>
              <para>
              Sets the <c>myfile.present</c> property to <see langword="true"/> if the 
              file is available on the filesystem and <see langword="false"/> if the 
              file is not available.
              </para>
              <code>
                <![CDATA[
            <available type="File" resource="myfile.txt" property="myfile.present" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Sets the <c>build.dir.present</c> property to <see langword="true"/> 
              if the directory is available on the filesystem and <see langword="false"/> 
              if the directory is not available.
              </para>
              <code>
                <![CDATA[
            <available type="Directory" resource="build" property="build.dir.present" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Sets the <c>mono-0.21.framework.present</c> property to <see langword="true"/> 
              if the Mono 0.21 framework is available on the current system and 
              <see langword="false"/> if the framework is not available.
              </para>
              <code>
                <![CDATA[
            <available type="Framework" resource="mono-0.21" property="mono-0.21.framework.present" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Sets the <c>net-1.1.frameworksdk.present</c> property to <see langword="true"/> 
              if the .NET 1.1 Framework SDK is available on the current system and 
              <see langword="false"/> if the SDK is not available.
              </para>
              <code>
                <![CDATA[
            <available type="FrameworkSDK" resource="net-1.1" property="net-1.1.frameworksdk.present" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.AvailableTask.ExecuteTask">
            <summary>
            Executes the task.
            </summary>
            <remarks>
            <para>
            Sets the property identified by <see cref="P:NAnt.Core.Tasks.AvailableTask.PropertyName"/> to 
            <see langword="true"/> when the resource exists and to <see langword="false"/> 
            when the resource doesn't exist.
            </para>
            </remarks>
            <exception cref="T:NAnt.Core.BuildException">The availability of the resource could not be evaluated.</exception>
        </member>
        <member name="M:NAnt.Core.Tasks.AvailableTask.Evaluate">
            <summary>
            Evaluates the availability of a resource.
            </summary>
            <returns>
            <see langword="true"/> if the resource is available; otherwise, 
            <see langword="false"/>.
            </returns>
            <exception cref="T:NAnt.Core.BuildException">The availability of the resource could not be evaluated.</exception>
        </member>
        <member name="M:NAnt.Core.Tasks.AvailableTask.CheckFile">
            <summary>
            Checks if the file specified in the <see cref="P:NAnt.Core.Tasks.AvailableTask.Resource"/> property is 
            available on the filesystem.
            </summary>
            <returns>
            <see langword="true"/> when the file exists; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.AvailableTask.CheckDirectory">
            <summary>
            Checks if the directory specified in the <see cref="P:NAnt.Core.Tasks.AvailableTask.Resource"/> 
            property is available on the filesystem.
            </summary>
            <returns>
            <see langword="true"/> when the directory exists; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.AvailableTask.CheckFramework">
            <summary>
            Checks if the framework specified in the <see cref="P:NAnt.Core.Tasks.AvailableTask.Resource"/> 
            property is available on the current system.
            </summary>
            <returns>
            <see langword="true"/> when the framework is available; otherwise,
            <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.AvailableTask.CheckFrameworkSDK">
            <summary>
            Checks if the SDK for the framework specified in the <see cref="P:NAnt.Core.Tasks.AvailableTask.Resource"/> 
            property is available on the current system.
            </summary>
            <returns>
            <see langword="true"/> when the SDK for the specified framework is 
            available; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="P:NAnt.Core.Tasks.AvailableTask.Resource">
            <summary>
            The resource which must be available.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.AvailableTask.Type">
            <summary>
            The type of resource which must be present.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.AvailableTask.PropertyName">
            <summary>
            The property that must be set if the resource is available.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.AvailableTask.ResourceType">
            <summary>
            Defines the possible resource checks.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.AvailableTask.ResourceType.File">
            <summary>
            Determines whether a given file exists.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.AvailableTask.ResourceType.Directory">
            <summary>
            Determines whether a given directory exists.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.AvailableTask.ResourceType.Framework">
            <summary>
            Determines whether a given framework is available.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.AvailableTask.ResourceType.FrameworkSDK">
            <summary>
            Determines whether a given SDK is available.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.CallTask">
             <summary>
             Calls a NAnt target in the current project.
             </summary>
             <remarks>
               <para>
               When the <see cref="T:NAnt.Core.Tasks.CallTask"/> is used to execute a target, both that 
               target and all its dependent targets will be re-executed.
               </para>
               <para>
               To avoid dependent targets from being executed more than once, two 
               options are available:
               </para>
               <list type="bullet">
                 <item>
                     <description>
                     Add an "unless" attribute with value "${<see href="../functions/target.has-executed.html">target::has-executed</see>('<c>&lt;target name&gt;</c>')}"
                     to the dependent targets.
                     </description>
                 </item>
                 <item>
                     <description>
                     Set the <see cref="P:NAnt.Core.Tasks.CallTask.CascadeDependencies"/> attribute on the 
                     <see cref="T:NAnt.Core.Tasks.CallTask"/> to <see langword="false "/> (<c>recommended</c>).
                     </description>
                 </item>
               </list>
             </remarks>
             <example>
               <para>
               Call the target "build".
               </para>
               <code>
                 <![CDATA[
             <call target="build" />
                 ]]>
               </code>
             </example>
             <example>
               <para>
               This shows how a project could 'compile' a debug and release build 
               using a common compile target.
               </para>
               <code>
                 <![CDATA[
             <project default="build">
                 <property name="debug" value="false" />
                 <target name="init">
                     <echo message="initializing" />
                 </target>
                 <target name="compile" depends="init">
                     <echo message="compiling with debug = ${debug}" />
                 </target>
                 <target name="build">
                     <property name="debug" value="false" />
                     <call target="compile" />
                     <property name="debug" value="true" />
                     <call target="compile" />
                 </target>
             </project>
                 ]]>
               </code>
               <para>
               The <see cref="P:NAnt.Core.Tasks.CallTask.CascadeDependencies"/> parameter of the 
               <see cref="T:NAnt.Core.Tasks.CallTask"/> defaults to <see langword="true"/>, 
               causing the "init" target to be executed for both
               the "debug" and "release" build.
               </para>
               <para>
               This results in the following build log:
               </para>
               <code>
             build:
               
             init:
            
                 [echo] initializing
                 
             compile:
             
                 [echo] compiling with debug = false
                 
             init:
             
                 [echo] initializing
                 
             compile:
             
                 [echo] compiling with debug = true
                 
             BUILD SUCCEEDED
               </code>
               <para>
               If the "init" should only be executed once, set the
               <see cref="P:NAnt.Core.Tasks.CallTask.CascadeDependencies"/> attribute of the <see cref="T:NAnt.Core.Tasks.CallTask"/>
               to <see langword="false"/>.
               </para>
               <para>
               The build log would then look like this:
               </para>
               <code>
             build:
               
             init:
            
                 [echo] initializing
                 
             compile:
             
                 [echo] compiling with debug = false
                 
             compile:
             
                 [echo] compiling with debug = true
                 
             BUILD SUCCEEDED
               </code>
             </example>
        </member>
        <member name="M:NAnt.Core.Tasks.CallTask.ExecuteTask">
            <summary>
            Executes the specified target.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.CallTask.Initialize">
            <summary>
            Makes sure the <see cref="T:NAnt.Core.Tasks.CallTask"/> is not calling its own 
            parent.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CallTask.TargetName">
            <summary>
            NAnt target to call.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CallTask.ForceExecute">
            <summary>
            Force an execute even if the target has already been executed. The 
            default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CallTask.CascadeDependencies">
            <summary>
            Execute the specified targets dependencies -- even if they have been 
            previously executed. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.ChooseTask">
            <summary>
              <para>
              Executes an alternate set of task or type definition depending on
              conditions that are individually set on each group.
              </para>
            </summary>
            <remarks>
              <para>
              The <see cref="T:NAnt.Core.Tasks.ChooseTask"/> selects one among a number of possible
              alternatives. It consists of a sequence of <c>&lt;when&gt;</c> elements
              followed by an optional <c>&lt;otherwise&gt;</c> element.
              </para>
              <para>
              Each <c>&lt;when&gt;</c> element has a single attribute, test, which 
              specifies an expression. The content of the <c>&lt;when&gt;</c> and 
              <c>&lt;otherwise&gt;</c> elements is a set of nested tasks.
              </para>
              <para>
              The content of the first, and only the first, <c>&lt;when&gt;</c>
              element whose test is <see langword="true"/> is executed. If no 
              <c>&lt;when&gt;</c> element is <see langword="true"/>, the 
              content of the <c>&lt;otherwise&gt;</c> element is executed.
              If no <c>&lt;when&gt;</c> element is <see langword="true"/>, and no
              <c>&lt;otherwise&gt;</c> element is present, nothing is done.
              </para>
            </remarks>
            <example>
              <para>
              Execute alternate set of tasks depending on the configuration being
              built.
              </para>
              <code>
                <![CDATA[
            <choose>
                <when test="${build.config == 'Debug'}">
                    <!-- compile app in debug configuration -->
                    ...
                </when>
                <when test="${build.config == 'Release'}">
                    <!-- compile app in release configuration -->
                    ...
                </when>
                <otherwise>
                    <fail>Build configuration '${build.config}' is not supported!</fail>
                </otherwise>
            </choose>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Define a <c>sources</c> patternset holding an alternate set of patterns
              depending on the configuration being built.
              </para>
              <code>
                <![CDATA[
            <choose>
                <when test="${build.config == 'Debug'}">
                    <patternset id="sources">
                        <include name="**/*.cs" />
                    </patternset>
                </when>
                <when test="${build.config == 'Release'}">
                    <patternset id="sources">
                        <include name="**/*.cs" />
                        <exclude name="**/Instrumentation/*.cs" />
                    </patternset>
                </when>
                <otherwise>
                    <fail>Build configuration '${build.config}' is not supported!</fail>
                </otherwise>
            </choose>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.ChooseTask.AddCondition(NAnt.Core.Tasks.ChooseTask.When)">
            <summary>
            One or more alternative sets of tasks to execute.
            </summary>
            <param name="when">The set of tasks to add.</param>
        </member>
        <member name="M:NAnt.Core.Tasks.ChooseTask.AddFallback(NAnt.Core.ElementContainer)">
            <summary>
            The set of tasks to execute if none of the <see cref="T:NAnt.Core.Tasks.ChooseTask.When"/>
            elements are <see langword="true"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ChooseTask.IsFallbackDefined">
            <summary>
            Gets a value indicating whether a fallback element is defined.
            </summary>
            <value>
            <see langword="true" /> if a fallback element is defined; otherwise,
            <see langword="false" />.
            </value>
        </member>
        <member name="T:NAnt.Core.Tasks.ChooseTask.When">
            <summary>
            Groups a set of tasks to execute when a condition is met.
            </summary>
        </member>
        <member name="T:NAnt.Core.ElementContainer">
            <summary>
            Executes embedded tasks/elements in the order in which they are defined.
            </summary>
        </member>
        <member name="M:NAnt.Core.ElementContainer.ExecuteChildTasks">
            <summary>
            Creates and executes the embedded (child XML nodes) elements.
            </summary>
        </member>
        <member name="P:NAnt.Core.ElementContainer.CustomXmlProcessing">
            <summary>
            Gets a value indicating whether the element is performing additional
            processing using the <see cref="T:System.Xml.XmlNode"/> that was use to 
            initialize the element.
            </summary>
            <value>
            <see langword="true"/>, as a <see cref="T:NAnt.Core.ElementContainer"/> is
            responsable for creating tasks from the nested build elements.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ChooseTask.When.Test">
            <summary>
            Used to test arbitrary boolean expression.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.CopyTask">
            <summary>
            Copies a file, a directory, or set of files to a new file or directory.
            </summary>
            <remarks>
              <para>
              Files are only copied if the source file is newer than the destination 
              file, or if the destination file does not exist.  However, you can 
              explicitly overwrite files with the <see cref="P:NAnt.Core.Tasks.CopyTask.Overwrite"/> attribute.
              </para>
              <para>
              Entire directory structures can be copied to a new location.  For this
              to happen, the following criteria must be met:
              </para>
              <list type="bullet">
                <item>
                  <description>
                  Everything in the fileset is included
                  </description>
                </item>
                <item>
                  <description>
                  The directory structure is not flattened
                  </description>
                </item>
                <item>
                  <description>
                  Empty directories are included
                  </description>
                </item>
                <item>
                  <description>
                  Destination directory does not exist
                  </description>
                </item>
              </list>
              <para>
              If any of these items are not met, then the files within the source
              directory will be copied over instead of the entire directory structure.
              </para>
              <para>
              When a <see cref="T:NAnt.Core.Types.FileSet"/> is used to select files or directories to
              copy, the <see cref="P:NAnt.Core.Tasks.CopyTask.ToDirectory"/> attribute must be set. Files that are
              located under the base directory of the <see cref="T:NAnt.Core.Types.FileSet"/> will
              be copied to a directory under the destination directory matching the
              path relative to the base directory of the <see cref="T:NAnt.Core.Types.FileSet"/>,
              unless the <see cref="P:NAnt.Core.Tasks.CopyTask.Flatten"/> attribute is set to
              <see langword="true"/>.
              </para>
              <para>
              Files that are not located under the the base directory of the
              <see cref="T:NAnt.Core.Types.FileSet"/> will be copied directly under to the destination 
              directory, regardless of the value of the <see cref="P:NAnt.Core.Tasks.CopyTask.Flatten"/>
              attribute.
              </para>
              <h4>Encoding</h4>
              <para>
              Unless an encoding is specified, the encoding associated with the 
              system's current ANSI code page is used.
              </para>
              <para>
              An UTF-8, little-endian Unicode, and big-endian Unicode encoded text 
              file is automatically recognized, if the file starts with the 
              appropriate byte order marks.
              </para>
              <note>
              If you employ filters in your copy operation, you should limit the copy 
              to text files. Binary files will be corrupted by the copy operation.
              </note>
            </remarks>
            <example>
              <para>
              Copy a single file while changing its encoding from "latin1" to 
              "utf-8".
              </para>
              <code>
                <![CDATA[
            <copy 
                file="myfile.txt"
                tofile="mycopy.txt"
                inputencoding="latin1"
                outputencoding="utf-8" />
                ]]>
              </code>
            </example>
            <example>
              <para>Copy a set of files to a new directory.</para>
              <code>
                <![CDATA[
            <copy todir="${build.dir}">
                <fileset basedir="bin">
                    <include name="*.dll" />
                </fileset>
            </copy>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Copy a set of files to a directory, replacing <c>@TITLE@</c> with 
              "Foo Bar" in all files.
              </para>
              <code>
                <![CDATA[
            <copy todir="../backup/dir">
                <fileset basedir="src_dir">
                    <include name="**/*" />
                </fileset>
                <filterchain>
                    <replacetokens>
                        <token key="TITLE" value="Foo Bar" />
                    </replacetokens>
                </filterchain>
            </copy>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Copy an entire directory and its contents.
              </para>
              <code>
                <![CDATA[
            <copy todir="target/dir">
              <fileset basedir="source/dir"/>
            </copy>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.#ctor">
            <summary>
            Initialize new instance of the <see cref="T:NAnt.Core.Tasks.CopyTask"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.Initialize">
            <summary>
            Checks whether the task is initialized with valid attributes.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.ExecuteTask">
            <summary>
            Executes the Copy task.
            </summary>
            <exception cref="T:NAnt.Core.BuildException">A file that has to be copied does not exist or could not be copied.</exception>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.DoFileOperations">
            <summary>
            Actually does the file copies.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.SourceFile">
            <summary>
            The file to copy.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.ToFile">
            <summary>
            The file to copy to.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.ToDirectory">
            <summary>
            The directory to copy to.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.Overwrite">
            <summary>
            Overwrite existing files even if the destination files are newer. 
            The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.Flatten">
            <summary>
            Ignore directory structure of source directory, copy all files into 
            a single directory, specified by the <see cref="P:NAnt.Core.Tasks.CopyTask.ToDirectory"/> 
            attribute. The default is <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.IncludeEmptyDirs">
            <summary>
            Copy any empty directories included in the <see cref="T:NAnt.Core.Types.FileSet"/>. 
            The default is <see langword="true"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.CopyFileSet">
            <summary>
            Used to select the files to copy. To use a <see cref="T:NAnt.Core.Types.FileSet"/>, 
            the <see cref="P:NAnt.Core.Tasks.CopyTask.ToDirectory"/> attribute must be set.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.Filters">
            <summary>
            Chain of filters used to alter the file's content as it is copied.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.InputEncoding">
            <summary>
            The encoding to use when reading files. The default is the system's
            current ANSI code page.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.OutputEncoding">
            <summary>
            The encoding to use when writing the files. The default is
            the encoding of the input file.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileCopyMap">
            <summary>
            The set of files to perform a file operation on.
            </summary>
            <remarks>
              <para>
              FileCopyMap should now be considered a readonly hashtable. Any changes to
              this property will not be taken into account during the file operation
              task. To interact with the file operation, use the
              <see cref="P:NAnt.Core.Tasks.CopyTask.OperationMap"/> property.
              </para>
              <para>
              The key of the <see cref="T:System.Collections.Hashtable"/> is the absolute path of
              the destination file and the value is a <see cref="T:NAnt.Core.Tasks.CopyTask.FileDateInfo"/>
              holding the path and last write time of the most recently updated
              source file that is selected to be copied or moved to the
              destination file.
              </para>
              <para>
              On Windows, the <see cref="T:System.Collections.Hashtable"/> is case-insensitive.
              </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.OperationMap">
            <summary>
            Gets the operation map containing all the files/directories to
            perform file operations on.
            </summary>
            <remarks>
              <para>
              The type of class for this object inherits from KeyedCollection
              and is structured so that the key of this collection contains the
              full path of the target file/location while the value contains
              the <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/> object
              with the operation details.
              </para>
              <para>
              On Windows, the <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/>
              is case-insensitive.
              </para>
            </remarks>
        </member>
        <member name="T:NAnt.Core.Tasks.CopyTask.FileDateInfo">
            <summary>
            Holds the absolute paths and last write time of a given file.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileDateInfo.#ctor(System.IO.FileSystemInfo)">
            <summary>
            Initializes a new instance of the
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileDateInfo"/> class
            for the specified <paramref name="file"/>.
            </summary>
            <param name="file">
            A <see cref="T:System.IO.FileSystemInfo"/> object containing
            the full path and last write time of the file the object represents.
            </param>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileDateInfo.#ctor(System.String,System.DateTime)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Tasks.CopyTask.FileDateInfo"/>
            class for the specified file and last write time.
            </summary>
            <param name="path">The absolute path of the file.</param>
            <param name="lastWriteTime">The last write time of the file.</param>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileDateInfo.Path">
            <summary>
            Gets the absolute path of the current file.
            </summary>
            <value>
            The absolute path of the current file.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileDateInfo.LastWriteTime">
            <summary>
            Gets the time when the current file was last written to.
            </summary>
            <value>
            The time when the current file was last written to.
            </value>
        </member>
        <member name="T:NAnt.Core.Tasks.CopyTask.FileOperation">
            <summary>
            Provides methods and properties to properly manage file operations for
            NAnt file system based tasks (such as CopyTask and MoveTask).
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperation.#ctor(System.IO.FileSystemInfo,System.IO.FileSystemInfo)">
            <summary>
            Initializes a new instance of the
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/> class with the
            source and target locations specified.
            </summary>
            <param name="source">
            A <see cref="T:System.IO.FileSystemInfo"/> object representing the file/location
            where the file operation will start.
            </param>
            <param name="target">
            A <see cref="T:System.IO.FileSystemInfo"/> object representing the file/location
            where the file operation will end.
            </param>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperation.NormalizeTargetAttributes">
            <summary>
            Normalizes the attributes of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.TargetInfo"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperation.SourceEqualsTarget">
            <summary>
            Checks to see whether or not the full path of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.SourceInfo"/>
            matches the full path of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.TargetInfo"/>.
            </summary>
            <remarks>
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.Comparer"/> is
            used to check path equality.
            </remarks>
            <returns>
            <c>true</c> if both paths match; otherwise <c>false</c>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperation.SourceIsIdenticalToTarget">
            <summary>
            Checks to see whether or not the full path of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.SourceInfo"/>
            is identical to the full path of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.TargetInfo"/>.
            </summary>
            <remarks>
            The difference between this method and SourceEqualsTarget is
            that the casing of the path is never ignored regardless of
            operating system.
            </remarks>
            <returns>
            <c>true</c> if both paths are identical; otherwise <c>false</c>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperation.UpdateSource(System.IO.FileSystemInfo)">
            <summary>
            Updates the source of a given instance based on the
            <see cref="P:System.IO.FileSystemInfo.LastWriteTime"/>.
            <remarks>
            If the LastWriteTime property of the <paramref name="newSource"/>
            is greater than the LastWriteTime property of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.SourceInfo"/>, then
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.SourceInfo"/> is
            replaced with <paramref name="newSource"/>.
            </remarks>
            </summary>
            <param name="newSource">
            The new <see cref="T:System.IO.FileSystemInfo"/> to replace
            the current <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.SourceInfo"/>
            object.
            </param>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperation.ToString">
            <summary>
            Returns a <see cref="T:System.String"/> that represents the current
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/>.
            </summary>
            <returns>
            A <see cref="T:System.String"/> that represents the current
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperation.TargetIsOutdated(System.IO.FileSystemInfo,System.IO.FileSystemInfo)">
            <summary>
            Checks to see if a given <see cref="T:System.IO.FileSystemInfo"/>
            target is considered outdated.
            </summary>
            <param name="source">
            A <see cref="T:System.IO.FileSystemInfo"/> used for comparison purposes
            against <paramref name="target"/>.
            </param>
            <param name="target">
            The <see cref="T:System.IO.FileSystemInfo"/> to check.
            </param>
            <returns>
            <c>true</c> if the target file is considered out of date; otherwise
            <c>false</c>
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperation.TargetDirectoryDoesNotExist(System.IO.DirectoryInfo,System.IO.DirectoryInfo)">
            <summary>
            Checks to see if the target directory does not exist or that
            it does match the source directory name but not string casing.
            </summary>
            <param name="source">
            Source directory to check against <paramref name="target"/>.
            </param>
            <param name="target">
            The target directory to validate.
            </param>
            <returns>
            <c>true</c> if the target directory does not exist or matches the source
            directory name but not casing; otherwise <c>false</c>
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperation.IsFileSystemType``1(System.IO.FileSystemInfo)">
            <summary>
            Checks to see whether <paramref name="item"/> is a file type or
            a directory type.
            </summary>
            <typeparam name="TFileSystemInfo">
            The FileSystemInfo type used to compare <paramref name="item"/> with.
            </typeparam>
            <param name="item">
            The object to check.
            </param>
            <returns>
            <c>true</c> if <paramref name="item"/> is the same type as
            <typeparamref name="TFileSystemInfo"/>; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileOperation.Comparer">
            <summary>
            Gets or sets the string comparer to use when comparing
            the source path to the target path.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileOperation.Source">
            <summary>
            Gets the full path of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.SourceInfo"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileOperation.SourceInfo">
            <summary>
            Gets the details of the source path.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileOperation.SourceType">
            <summary>
            Gets the type of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.SourceInfo"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileOperation.OperationType">
            <summary>
            Gets the type of the file operation an instance of
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/> represents.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileOperation.Outdated">
            <summary>
            Gets a value indicating whether
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.TargetInfo"/> is
            outdated.
            </summary>
            <value>
            <c>true</c> if
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.TargetInfo"/> is
            outdated (or simply a directory); otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileOperation.Target">
            <summary>
            Gets the full path of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.TargetInfo"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileOperation.TargetInfo">
            <summary>
            Gets the details of the target path.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.CopyTask.FileOperation.TargetType">
            <summary>
            Gets the type of
            <see cref="P:NAnt.Core.Tasks.CopyTask.FileOperation.TargetInfo"/>.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.CopyTask.FileOperationMap">
            <summary>
            A collection class used to track all of the 
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/> objects for 
            a given file operation task (such as the CopyTask or MoveTask).
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.CopyTask.FileOperationMap._stringComparer">
            <summary>
            The StringComparer used when comparing file paths.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperationMap.#ctor">
            <summary>
            Initializes a new instance of the 
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/>
            class that uses the default string comparer.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperationMap.#ctor(System.StringComparer)">
            <summary>
            Initializes a new instance of the 
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/>
            class that uses the specified string comparer.
            </summary>
            <param name="comparer">
            The string comparer to use when comparing keys in the
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/>.
            </param>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperationMap.ContainsKey(System.String)">
            <summary>
            Determines whether the 
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/> contains the 
            specified key.
            </summary>
            <param name="key">
            The key to locate in the 
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/>.
            </param>
            <returns>
            <c>true</c> if the <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/>
            contains an element with the specified key; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperationMap.CountDirectoryOperations">
            <summary>
            Counts the number of directory operations in a collection.
            </summary>
            <returns>
            The number of directory operations performed by this collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperationMap.CountFileOperations">
            <summary>
            Counts the number of file operations in a collection.
            </summary>
            <returns>
            The number of file operations performed by this collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperationMap.ConvertToHashtable">
            <summary>
            Converts the current instance of
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/> to
            the old style FileCopyMap hashtable.
            </summary>
            <returns>
            The contents of
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/> in a
            new hashtable.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperationMap.GetKeyForItem(NAnt.Core.Tasks.CopyTask.FileOperation)">
            <summary>
            Extracts the key from the specified 
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/> element.
            </summary>
            <param name="item">
            The <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/> from which to 
            extract the key.
            </param>
            <returns>
            The key for the specified 
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperationMap.InsertItem(System.Int32,NAnt.Core.Tasks.CopyTask.FileOperation)">
            <summary>
            Inserts an element into the 
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperationMap"/> at the 
            specified index.
            </summary>
            <param name="index">
            The zero-based index at which item should be inserted.
            </param>
            <param name="item">
            The <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/> to insert.
            </param>
        </member>
        <member name="M:NAnt.Core.Tasks.CopyTask.FileOperationMap.SetItem(System.Int32,NAnt.Core.Tasks.CopyTask.FileOperation)">
            <summary>
            Replaces the item at the specified index with the specified item.
            </summary>
            <param name="index">
            The zero-based index of the item to be replaced.
            </param>
            <param name="item">
            The new item.
            </param>
        </member>
        <member name="T:NAnt.Core.Tasks.CopyTask.OperationType">
            <summary>
            Used to identify the type of operation a given
            <see cref="T:NAnt.Core.Tasks.CopyTask.FileOperation"/> represent.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.CopyTask.OperationType.FileToFile">
            <summary>
            Indicates that the operation is from file to file.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.CopyTask.OperationType.FileToDirectory">
            <summary>
            Indicates that the operation is from file to directory.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.CopyTask.OperationType.DirectoryToDirectory">
            <summary>
            Indicates that the operation is from directory to directory.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.DeleteTask">
            <summary>
            Deletes a file, fileset or directory.
            </summary>
            <remarks>
              <para>
              Deletes either a single file, all files in a specified directory and 
              its sub-directories, or a set of files specified by one or more filesets.
              </para>
              <para>
              If the <see cref="P:NAnt.Core.Tasks.DeleteTask.File"/> or <see cref="P:NAnt.Core.Tasks.DeleteTask.Directory"/> attribute is 
              set then the fileset contents will be ignored. To delete the files 
              in the fileset ommit the <see cref="P:NAnt.Core.Tasks.DeleteTask.File"/> and <see cref="P:NAnt.Core.Tasks.DeleteTask.Directory"/>
              attributes in the <c>&lt;delete&gt;</c> element.
              </para>
              <para>
              If the specified file or directory does not exist, no error is 
              reported.
              </para>
              <note>
              Read-only files cannot be deleted.  Use the <see cref="T:NAnt.Core.Tasks.AttribTask"/> 
              first to remove the read-only attribute.
              </note>
            </remarks>
            <example>
              <para>Delete a single file.</para>
              <code>
                <![CDATA[
            <delete file="myfile.txt" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Delete a directory and the contents within. If the directory does not 
              exist, no error is reported.
              </para>
              <code>
                <![CDATA[
            <delete dir="${build.dir}" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Delete a set of files.
              </para>
              <code>
                <![CDATA[
            <delete>
                <fileset>
                    <include name="${basename}-??.exe" />
                    <include name="${basename}-??.pdb" />
                </fileset>
            </delete>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.DeleteTask.Initialize">
            <summary>
            Ensures the supplied attributes are valid.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.DeleteTask.File">
            <summary>
            The file to delete.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.DeleteTask.Directory">
            <summary>
            The directory to delete.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.DeleteTask.IncludeEmptyDirs">
            <summary>
            Remove any empty directories included in the <see cref="T:NAnt.Core.Types.FileSet"/>. 
            The default is <see langword="true"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.DeleteTask.DeleteFileSet">
            <summary>
            All the files in the file set will be deleted.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.DeleteTask.Verbose">
            <summary>
            Controls whether to show the name of each deleted file or directory.
            The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.DescriptionTask">
            <summary>
            An empty task that allows a build file to contain a description.
            </summary>
            <example>
              <para>Set a description.</para>
              <code>
                <![CDATA[
            <description>This is a description.</description>
                ]]>
              </code>
            </example>
        </member>
        <member name="T:NAnt.Core.Tasks.EchoTask">
            <summary>
            Writes a message to the build log or a specified file.
            </summary>
            <remarks>
              <para>
              The message can be specified using the <see cref="P:NAnt.Core.Tasks.EchoTask.Message"/> attribute
              or as inline content. If neither is included - or the message contains
              only whitespace - then an empty message will be emitted in the output.
              </para>
              <para>
              Macros in the message will be expanded.
              </para>
              <para>
              When writing to a file, the <see cref="P:NAnt.Core.Tasks.EchoTask.MessageLevel"/> attribute is
              ignored.
              </para>
              <note>
              Since NAnt 0.86, a newline will no longer be implictly added when
              writing a message to a file.
              </note>
            </remarks>
            <example>
              <para>
              Writes a message with level <see cref="F:NAnt.Core.Level.Debug"/> to the build log.
              </para>
              <code>
                <![CDATA[
            <echo message="Hello, World!" level="Debug" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Writes a two-line message to the build log using inline content.
              </para>
              <code>
                <![CDATA[
            <echo>First line
            Second line</echo>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Writes a two-line message to the build log using the <see cref="P:NAnt.Core.Tasks.EchoTask.Message"/> attribute.
              </para>
              <code>
                <![CDATA[
            <echo message='First line
            Second line</echo>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Writes a message with expanded macro to the build log.
              </para>
              <code>
                <![CDATA[
            <echo message="Base build directory = ${nant.project.basedir}" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Functionally equivalent to the previous example.
              </para>
              <code>
                <![CDATA[
            <echo>Base build directory = ${nant.project.basedir}</echo>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Writes the previous message to a file in the project directory, 
              overwriting the file if it exists.
              </para>
              <code>
                <![CDATA[
            <echo file="buildmessage.txt">Base build directory = ${nant.project.basedir}</echo>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.EchoTask.ExecuteTask">
            <summary>
            Outputs the message to the build log or the specified file.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.EchoTask.Encoding">
            <summary>
            The encoding to use when writing message to a file. The default is
            UTF-8 encoding without a Byte Order Mark (BOM).
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.EchoTask.Message">
            <summary>
            The message to output.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.EchoTask.Contents">
            <summary>
            Gets or sets the inline content that should be output.
            </summary>
            <value>
            The inline content that should be output.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.EchoTask.File">
            <summary>
            The file to write the message to.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.EchoTask.Append">
            <summary>
            Determines whether the <see cref="T:NAnt.Core.Tasks.EchoTask"/> should append to the 
            file, or overwrite it.  By default, the file will be overwritten.
            </summary>
            <value>
            <see langword="true"/> if output should be appended to the file; 
            otherwise, <see langword="false"/>. The default is 
            <see langword="false"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.EchoTask.MessageLevel">
            <summary>
            The logging level with which the message should be output. The default 
            is <see cref="F:NAnt.Core.Level.Info"/>.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.ExecTask">
            <summary>
            Executes a system command.
            </summary>
            <remarks>
              <para>
              Use of nested <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.Arguments"/> element(s)
              is advised over the <see cref="P:NAnt.Core.Tasks.ExecTask.CommandLineArguments"/> parameter, as
              it supports automatic quoting and can resolve relative to absolute
               paths.
              </para>
            </remarks>
            <example>
              <para>Ping "nant.sourceforge.net".</para>
              <code>
                <![CDATA[
            <exec program="ping">
                <arg value="nant.sourceforge.net" />
            </exec>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Execute a java application using <c>IKVM.NET</c> that requires the 
              Apache FOP jars, and a set of custom jars.
              </para>
              <code>
                <![CDATA[
                    <path id="fop-classpath">
                        <pathelement file="${fop.dist.dir}/build/fop.jar" />
                        <pathelement file="${fop.dist.dir}/lib/xercesImpl-2.2.1.jar" />
                        <pathelement file="${fop.dist.dir}/lib/avalon-framework-cvs-20020806.jar" />
                        <pathelement file="${fop.dist.dir}/lib/batik.jar" />
                    </path>
                    <exec program="ikvm.exe" useruntimeengine="true">
                        <arg value="-cp" />
                        <arg>
                            <path>
                                <pathelement dir="conf" />
                                <path refid="fop-classpath" />
                                <pathelement file="lib/mylib.jar" />
                                <pathelement file="lib/otherlib.zip" />
                            </path>
                        </arg>
                        <arg value="org.me.MyProg" />
                    </exec>
                ]]>
              </code>
              <para>
              Assuming the base directory of the build file is "c:\ikvm-test" and
              the value of the "fop.dist.dir" property is "c:\fop", then the value
              of the <c>-cp</c> argument that is passed to<c>ikvm.exe</c> is
              "c:\ikvm-test\conf;c:\fop\build\fop.jar;conf;c:\fop\lib\xercesImpl-2.2.1.jar;c:\fop\lib\avalon-framework-cvs-20020806.jar;c:\fop\lib\batik.jar;c:\ikvm-test\lib\mylib.jar;c:\ikvm-test\lib\otherlib.zip"
              on a DOS-based system.
              </para>
            </example>
        </member>
        <member name="T:NAnt.Core.Tasks.ExternalProgramBase">
            <summary>
            Provides the abstract base class for tasks that execute external applications.
            </summary>
            <remarks>
              <para>
              When a <see cref="T:NAnt.Core.Attributes.ProgramLocationAttribute"/> is applied to the
              deriving class and <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.ExeName"/> does not return an
              absolute path, then the program to execute will first be searched for
              in the location specified by <see cref="P:NAnt.Core.Attributes.ProgramLocationAttribute.LocationType"/>.
              </para>
              <para>
              If the program does not exist in that location, then the list of tool
              paths of the current target framework will be scanned in the order in
              which they are defined in the NAnt configuration file.
              </para>
            </remarks>
        </member>
        <member name="F:NAnt.Core.Tasks.ExternalProgramBase.UnknownExitCode">
            <summary>
            Defines the exit code that will be returned by <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.ExitCode"/>
            if the process could not be started, or did not exit (in time).
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.ExternalProgramBase._lockObject">
            <summary>
            Will be used to ensure thread-safe operations.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.ExternalProgramBase.ExecuteTask">
            <summary>
            Starts the external process and captures its output.
            </summary>
            <exception cref="T:NAnt.Core.BuildException">
              <para>The external process did not finish within the configured timeout.</para>
              <para>-or-</para>
              <para>The exit code of the external process indicates a failure.</para>
            </exception>
        </member>
        <member name="M:NAnt.Core.Tasks.ExternalProgramBase.PrepareProcess(System.Diagnostics.Process)">
            <summary>
            Updates the <see cref="T:System.Diagnostics.ProcessStartInfo"/> of the specified 
            <see cref="T:System.Diagnostics.Process"/>.
            </summary>
            <param name="process">The <see cref="T:System.Diagnostics.Process"/> of which the <see cref="T:System.Diagnostics.ProcessStartInfo"/> should be updated.</param>
        </member>
        <member name="M:NAnt.Core.Tasks.ExternalProgramBase.StartProcess">
            <summary>
            Starts the process and handles errors.
            </summary>
            <returns>The <see cref="T:System.Diagnostics.Process"/> that was started.</returns>
        </member>
        <member name="M:NAnt.Core.Tasks.ExternalProgramBase.StreamReaderThread_Output">
            <summary>
            Reads from the stream until the external program is ended.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.ExternalProgramBase.StreamReaderThread_Error">
            <summary>
            Reads from the stream until the external program is ended.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.ExternalProgramBase.DetermineFilePath">
            <summary>
            Determines the path of the external program that should be executed.
            </summary>
            <returns>
            A fully qualifies pathname including the program name.
            </returns>
            <exception cref="T:NAnt.Core.BuildException">The task is not available or not configured for the current framework.</exception>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.ExeName">
            <summary>
            The name of the executable that should be used to launch the 
            external program.
            </summary>
            <value>
            The name of the executable that should be used to launch the external
            program, or <see langword="null" /> if no name is specified.
            </value>
            <remarks>
            If available, the configured value in the NAnt configuration
            file will be used if no name is specified.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.ProgramFileName">
            <summary>
            Gets the filename of the external program to start.
            </summary>
            <value>
            The filename of the external program.
            </value>
            <remarks>
            Override in derived classes to explicitly set the location of the 
            external tool.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.ProgramArguments">
            <summary>
            Gets the command-line arguments for the external program.
            </summary>
            <value>
            The command-line arguments for the external program.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.Output">
            <summary>
            Gets the file to which the standard output should be redirected.
            </summary>
            <value>
            The file to which the standard output should be redirected, or 
            <see langword="null" /> if the standard output should not be
            redirected.
            </value>
            <remarks>
            The default implementation will never allow the standard output
            to be redirected to a file.  Deriving classes should override this 
            property to change this behaviour.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.OutputAppend">
            <summary>
            Gets a value indicating whether output will be appended to the 
            <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.Output"/>.
            </summary>
            <value>
            <see langword="true"/> if output should be appended to the <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.Output"/>; 
            otherwise, <see langword="false"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.BaseDirectory">
            <summary>
            Gets the working directory for the application.
            </summary>
            <value>
            The working directory for the application.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.TimeOut">
            <summary>
            The maximum amount of time the application is allowed to execute, 
            expressed in milliseconds.  Defaults to no time-out.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.Arguments">
            <summary>
            The command-line arguments for the external program.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.UseRuntimeEngine">
            <summary>
            Specifies whether the external program is a managed application
            which should be executed using a runtime engine, if configured. 
            The default is <see langword="false"/>.
            </summary>
            <value>
            <see langword="true"/> if the external program should be executed 
            using a runtime engine; otherwise, <see langword="false"/>.
            </value>
            <remarks>
              <para>
              The value of <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.UseRuntimeEngine"/> is only used from
              <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.Managed"/>, and then only if its value is set to
              <see cref="F:NAnt.Core.Types.ManagedExecution.Default"/>. In which case
              <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.Managed"/> returns <see cref="F:NAnt.Core.Types.ManagedExecution.Auto"/>
              if <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.UseRuntimeEngine"/> is <see langword="true"/>.
              </para>
              <para>
              In all other cases, the value of <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.UseRuntimeEngine"/>
              is ignored.
              </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.Managed">
            <summary>
            Specifies whether the external program should be treated as a managed
            application, possibly forcing it to be executed under the currently
            targeted version of the CLR.
            </summary>
            <value>
            A <see cref="T:NAnt.Core.Types.ManagedExecution"/> indicating how the program should
            be treated.
            </value>
            <remarks>
              <para>
              If <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.Managed"/> is set to <see cref="F:NAnt.Core.Types.ManagedExecution.Default"/>,
              which is the default value, and <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.UseRuntimeEngine"/> is
              <see langword="true"/> then <see cref="F:NAnt.Core.Types.ManagedExecution.Auto"/>
              is returned.
              </para>
              <para>
              When the changing <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.Managed"/> to <see cref="F:NAnt.Core.Types.ManagedExecution.Default"/>,
              then <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.UseRuntimeEngine"/> is set to <see langword="false"/>;
              otherwise, it is changed to <see langword="true"/>.
              </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.OutputWriter">
            <summary>
            Gets or sets the <see cref="T:System.IO.TextWriter"/> to which standard output
            messages of the external program will be written.
            </summary>
            <value>
            The <see cref="T:System.IO.TextWriter"/> to which standard output messages of 
            the external program will be written.
            </value>
            <remarks>
            By default, standard output messages wil be written to the build log
            with level <see cref="F:NAnt.Core.Level.Info"/>.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.ErrorWriter">
            <summary>
            Gets or sets the <see cref="T:System.IO.TextWriter"/> to which error output
            of the external program will be written.
            </summary>
            <value>
            The <see cref="T:System.IO.TextWriter"/> to which error output of the external 
            program will be written.
            </value>
            <remarks>
            By default, error output wil be written to the build log with level 
            <see cref="F:NAnt.Core.Level.Warning"/>.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.ExitCode">
            <summary>
            Gets the value that the process specified when it terminated.
            </summary>
            <value>
            The code that the associated process specified when it terminated, 
            or <c>-1000</c> if the process could not be started or did not 
            exit (in time).
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.ProcessId">
            <summary>
            Gets the unique identifier for the spawned application.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.Spawn">
            <summary>
            Gets or sets a value indicating whether the application should be
            spawned. If you spawn an application, its output will not be logged
            by NAnt. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ExternalProgramBase.CommandLine">
            <summary>
            Gets the command-line arguments, separated by spaces.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.ExecTask.Initialize">
            <summary>
            Performs additional checks after the task has been initialized.
            </summary>
            <exception cref="T:NAnt.Core.BuildException"><see cref="P:NAnt.Core.Tasks.ExecTask.FileName"/> does not hold a valid file name.</exception>
        </member>
        <member name="M:NAnt.Core.Tasks.ExecTask.ExecuteTask">
            <summary>
            Executes the external program.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.FileName">
            <summary>
            The program to execute without command arguments.
            </summary>
            <remarks>
            The path will not be evaluated to a full path using the project
            base directory.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.CommandLineArguments">
            <summary>
            The command-line arguments for the program.  These will be
            passed as is to the external program. When quoting is necessary,
            these must be explictly set as part of the value. Consider using
            nested <see cref="P:NAnt.Core.Tasks.ExternalProgramBase.Arguments"/> elements instead.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.EnvironmentSet">
            <summary>
            Environment variables to pass to the program.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.WorkingDirectory">
            <summary>
            The directory in which the command will be executed.
            </summary>
            <value>
            The directory in which the command will be executed. The default 
            is the project's base directory.
            </value>
            <remarks>
            <para>
            The working directory will be evaluated relative to the project's
            base directory if it is relative.
            </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.ResultProperty">
            <summary>
            <para>
            The name of a property in which the exit code of the program should 
            be stored. Only of interest if <see cref="P:NAnt.Core.Task.FailOnError"/> is 
            <see langword="false"/>.
            </para>
            <para>
            If the exit code of the program is "-1000" then the program could 
            not be started, or did not exit (in time).
            </para>
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.UseRuntimeEngine">
            <summary>
            Specifies whether the external program should be executed using a 
            runtime engine, if configured. The default is <see langword="false" />.
            </summary>
            <value>
            <see langword="true" /> if the external program should be executed 
            using a runtime engine; otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.Managed">
            <summary>
            Specifies whether the external program is a managed application
            which should be executed using a runtime engine, if configured. 
            The default is <see langword="false" />.
            </summary>
            <value>
            <see langword="true" /> if the external program should be executed 
            using a runtime engine; otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.ProgramFileName">
            <summary>
            Gets the filename of the external program to start.
            </summary>
            <value>
            The filename of the external program.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.ProgramArguments">
            <summary>
            Gets the command-line arguments for the external program.
            </summary>
            <value>
            The command-line arguments for the external program.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.BaseDirectory">
            <summary>
            The directory the program is in.
            </summary>
            <remarks>
            <value>
            The directory the program is in. The default is the project's base 
            directory.
            </value>
            <para>
            The basedir will be evaluated relative to the project's base 
            directory if it is relative.
            </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.Output">
            <summary>
            The file to which the standard output will be redirected.
            </summary>
            <remarks>
            By default, the standard output is redirected to the console.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.OutputAppend">
            <summary>
            Gets or sets a value indicating whether output should be appended 
            to the output file. The default is <see langword="false"/>.
            </summary>
            <value>
            <see langword="true"/> if output should be appended to the <see cref="P:NAnt.Core.Tasks.ExecTask.Output"/>; 
            otherwise, <see langword="false"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.Spawn">
            <summary>
            Gets or sets a value indicating whether the application should be
            spawned. If you spawn an application, its output will not be logged
            by NAnt. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.ExecTask.ProcessIdProperty">
            <summary>
            The name of a property in which the unique identifier of the spawned
            application should be stored. Only of interest if <see cref="P:NAnt.Core.Tasks.ExecTask.Spawn"/>
            is <see langword="true"/>.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.FailTask">
            <summary>
            Exits the current build by throwing a <see cref="T:NAnt.Core.BuildException"/>, 
            optionally printing additional information.
            </summary>
            <remarks>
              <para>
              The cause of the build failure can be specified using the <see cref="P:NAnt.Core.Tasks.FailTask.Message"/> 
              attribute or as inline content.
              </para>
              <para>
              Macros in the message will be expanded.
              </para>
            </remarks>
            <example>
              <para>Exits the current build without giving further information.</para>
              <code>
                <![CDATA[
            <fail />
                ]]>
              </code>
            </example>
            <example>
              <para>Exits the current build and writes a message to the build log.</para>
              <code>
                <![CDATA[
            <fail message="Something wrong here." />
                ]]>
              </code>
            </example>
            <example>
              <para>Functionally equivalent to the previous example.</para>
              <code>
                <![CDATA[
            <fail>Something wrong here.</fail>
                ]]>
              </code>
            </example>
        </member>
        <member name="P:NAnt.Core.Tasks.FailTask.Message">
            <summary>
            A message giving further information on why the build exited.
            </summary>
            <remarks>
            Inline content and <see cref="P:NAnt.Core.Tasks.FailTask.Message"/> are mutually exclusive.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.FailTask.Contents">
            <summary>
            Gets or sets the inline content that should be output in the build
            log, giving further information on why the build exited.
            </summary>
            <value>
            The inline content that should be output in the build log.
            </value>
            <remarks>
            Inline content and <see cref="P:NAnt.Core.Tasks.FailTask.Message"/> are mutually exclusive.
            </remarks>
        </member>
        <member name="T:NAnt.Core.Tasks.GetTask">
            <summary>
            Gets a particular file from a URL source.
            </summary>
            <remarks>
              <para>
              Options include verbose reporting and timestamp based fetches.
              </para>
              <para>
              Currently, only HTTP and UNC protocols are supported. FTP support may 
              be added when more pluggable protocols are added to the System.Net 
              assembly.
              </para>
              <para>
              The <see cref="P:NAnt.Core.Tasks.GetTask.UseTimeStamp"/> option enables you to control downloads 
              so that the remote file is only fetched if newer than the local copy. 
              If there is no local copy, the download always takes place. When a file 
              is downloaded, the timestamp of the downloaded file is set to the remote 
              timestamp.
              </para>
              <note>
              This timestamp facility only works on downloads using the HTTP protocol.
              </note>
            </remarks>
            <example>
              <para>
              Gets the index page of the NAnt home page, and stores it in the file 
              <c>help/index.html</c> relative to the project base directory.
              </para>
              <code>
                <![CDATA[
            <get src="http://nant.sourceforge.org/" dest="help/index.html" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Gets the index page of a secured web site using the given credentials, 
              while connecting using the specified password-protected proxy server.
              </para>
              <code>
                <![CDATA[
            <get src="http://password.protected.site/index.html" dest="secure/index.html">
                <credentials username="user" password="guess" domain="mydomain" />
                <proxy host="proxy.company.com" port="8080">
                    <credentials username="proxyuser" password="dunno" />
                </proxy>
            </get>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.GetTask.Initialize">
            <summary>
            Initializes task and ensures the supplied attributes are valid.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.GetTask.ExecuteTask">
            <summary>
            This is where the work is done 
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.GetTask.TouchFile(System.IO.FileInfo,System.DateTime)">
            <summary>
            Sets the timestamp of a given file to a specified time.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.GetTask.Source">
            <summary>
            The URL from which to retrieve a file.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.GetTask.DestinationFile">
            <summary>
            The file where to store the retrieved file.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.GetTask.HttpProxy">
            <summary>
            If inside a firewall, proxy server/port information
            Format: {proxy server name}:{port number}
            Example: proxy.mycompany.com:8080 
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.GetTask.Proxy">
            <summary>
            The network proxy to use to access the Internet resource.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.GetTask.Credentials">
            <summary>
            The network credentials used for authenticating the request with 
            the Internet resource.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.GetTask.IgnoreErrors">
            <summary>
            Log errors but don't treat as fatal. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.GetTask.UseTimeStamp">
            <summary>
            Conditionally download a file based on the timestamp of the local 
            copy. HTTP only. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.GetTask.Timeout">
            <summary>
            The length of time, in milliseconds, until the request times out.
            The default is <c>100000</c> milliseconds.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.GetTask.Certificates">
            <summary>
            The security certificates to associate with the request.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.IfTask">
            <summary>
            Checks the conditional attributes and executes the children if
            <see langword="true"/>.
            </summary>
            <remarks>
              <para>
              If no conditions are checked, all child tasks are executed. 
              </para>
              <para>
              If more than one attribute is used, they are &amp;&amp;'d. The first 
              to fail stops the check.
              </para>
              <para>
              The order of condition evaluation is, <see cref="P:NAnt.Core.Tasks.IfTask.TargetNameExists"/>, 
              <see cref="P:NAnt.Core.Tasks.IfTask.PropertyNameExists"/>, <see cref="P:NAnt.Core.Tasks.IfTask.PropertyNameTrue"/>, 
              <see cref="P:NAnt.Core.Tasks.IfTask.UpToDateFile"/>.
              </para>
              <note>
              instead of using the deprecated attributes, we advise you to use the
              following functions in combination with the <see cref="P:NAnt.Core.Tasks.IfTask.Test"/>
              attribute:
              </note>
              <list type="table">
                <listheader>
                    <term>Function</term>
                    <description>Description</description>
                </listheader>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.PropertyFunctions.Exists(System.String)"/></term>
                    <description>Checks whether the specified property exists.</description>
                </item>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.TargetFunctions.Exists(System.String)"/></term>
                    <description>Checks whether the specified target exists.</description>
                </item>
              </list>  
            </remarks>
            <example>
              <para>Tests the value of a property using expressions.</para>
              <code>
                <![CDATA[
            <if test="${build.configuration=='release'}">
                <echo>Build release configuration</echo>
            </if>
                ]]>
              </code>
            </example>
            <example>
              <para>Tests the the output of a function.</para>
              <code>
                <![CDATA[
            <if test="${not file::exists(filename) or file::get-length(filename) = 0}">
                <echo message="The version file ${filename} doesn't exist or is empty!" />
            </if>
                ]]>
              </code>
            </example>
            <example>
              <para><c>(Deprecated)</c> Check that a target exists.</para>
              <code>
                <![CDATA[
            <target name="myTarget" />
            <if targetexists="myTarget">
                <echo message="myTarget exists" />
            </if>
                ]]>
              </code>
            </example>
            <example>
              <para><c>(Deprecated)</c> Check existence of a property.</para>
              <code>
                <![CDATA[
            <if propertyexists="myProp">
                <echo message="myProp Exists. Value='${myProp}'" />
            </if>
                ]]>
              </code>
            </example>
            <example>
              <para><c>(Deprecated)</c> Check that a property value is true.</para>
              <code>
                <![CDATA[
            <if propertytrue="myProp">
                <echo message="myProp is true. Value='${myProp}'" />
            </if>
                ]]>
              </code>
            </example>
            <example>
              <para>
              <c>(Deprecated)</c> Check that a property exists and is <see langword="true"/> 
              (uses multiple conditions).
              </para>
              <code>
                <![CDATA[
            <if propertyexists="myProp" propertytrue="myProp">
                <echo message="myProp is '${myProp}'" />
            </if>
                ]]>
              </code>
              <para>which is the same as</para>
              <code>
                <![CDATA[
            <if propertyexists="myProp">
                <if propertytrue="myProp">
                    <echo message="myProp is '${myProp}'" />
                </if>
            </if>
                ]]>
              </code>
            </example>
            <example>
              <para>
              <c>(Deprecated)</c> Check file dates. If <c>myfile.dll</c> is uptodate,
              then do stuff.
              </para>
              <code>
                <![CDATA[
            <if uptodatefile="myfile.dll" comparefile="myfile.cs">
                <echo message="myfile.dll is newer/same-date as myfile.cs" />
            </if>
                ]]>
              </code>
              <para>or</para>
              <code>
                <![CDATA[
            <if uptodatefile="myfile.dll">
                <comparefiles>
                    <include name="*.cs" />
                </comparefiles>
                <echo message="myfile.dll is newer/same-date as myfile.cs" />
            </if>
                ]]>
              </code>
              <para>or</para>
              <code>
                <![CDATA[
            <if>
                <uptodatefiles>
                    <include name="myfile.dll" />
                </uptodatefiles>
                <comparefiles>
                    <include name="*.cs" />
                </comparefiles>
                <echo message="myfile.dll is newer/same-date as myfile.cs" />
            </if>
                ]]>
              </code>
            </example>
        </member>
        <member name="T:NAnt.Core.TaskContainer">
            <summary>
            Executes embedded tasks in the order in which they are defined.
            </summary>
        </member>
        <member name="M:NAnt.Core.TaskContainer.Initialize">
            <summary>
            Automatically exclude build elements that are defined on the task 
            from things that get executed, as they are evaluated normally during
            XML task initialization.
            </summary>
        </member>
        <member name="M:NAnt.Core.TaskContainer.ExecuteChildTasks">
            <summary>
            Creates and executes the embedded (child XML nodes) elements.
            </summary>
            <remarks>
            Skips any element defined by the host <see cref="T:NAnt.Core.Task"/> that has 
            a <see cref="T:NAnt.Core.Attributes.BuildElementAttribute"/> defined.
            </remarks>
        </member>
        <member name="P:NAnt.Core.TaskContainer.CustomXmlProcessing">
            <summary>
            Gets a value indicating whether the element is performing additional
            processing using the <see cref="T:System.Xml.XmlNode"/> that was use to 
            initialize the element.
            </summary>
            <value>
            <see langword="true"/>, as a <see cref="T:NAnt.Core.TaskContainer"/> is
            responsable for creating tasks from the nested build elements.
            </value>
        </member>
        <member name="P:NAnt.Core.Tasks.IfTask.UpToDateFile">
            <summary>
            The file to compare if uptodate.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.IfTask.CompareFile">
            <summary>
            The file to check against for the uptodate file.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.IfTask.CompareFiles">
            <summary>
            The <see cref="T:NAnt.Core.Types.FileSet"/> that contains the comparison files for 
            the <see cref="P:NAnt.Core.Tasks.IfTask.UpToDateFile"/>(s) check.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.IfTask.UpToDateFiles">
            <summary>
            The <see cref="T:NAnt.Core.Types.FileSet"/> that contains the uptodate files for 
            the <see cref="P:NAnt.Core.Tasks.IfTask.CompareFile"/>(s) check.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.IfTask.PropertyNameTrue">
            <summary>
            Used to test whether a property is true.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.IfTask.PropertyNameExists">
            <summary>
            Used to test whether a property exists.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.IfTask.TargetNameExists">
            <summary>
            Used to test whether a target exists.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.IfTask.Test">
            <summary>
            Used to test arbitrary boolean expression.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.IfNotTask">
            <summary>
            The opposite of the <c>if</c> task.
            </summary>
            <example>
              <para>Check that a property does not exist.</para>
              <code>
                <![CDATA[
            <ifnot propertyexists="myProp">
                <echo message="myProp does not exist."/>
            </if>
                ]]>
              </code>
              <para>Check that a property value is not true.</para>
              <code>
                <![CDATA[
            <ifnot propertytrue="myProp">
                <echo message="myProp is not true."/>
            </if>
                ]]>
              </code>
            </example>
            <example>
              <para>Check that a target does not exist.</para>
              <code>
                <![CDATA[
            <ifnot targetexists="myTarget">
                <echo message="myTarget does not exist."/>
            </if>
                ]]>
              </code>
            </example>
        </member>
        <member name="T:NAnt.Core.Tasks.IncludeTask">
            <summary>
            Includes an external build file.
            </summary>
            <remarks>
              <para>
              This task is used to break your build file into smaller chunks.  You 
              can load a partial build file and have it included into the build file.
              </para>
              <note>
              Any global (project level) tasks in the included build file are executed 
              when this task is executed.  Tasks in target elements are only executed 
              if that target is executed.
              </note>
              <note>
              The project element attributes are ignored.
              </note>
              <note>
              This task can only be in the global (project level) section of the 
              build file.
              </note>
              <note>
              This task can only include files from the file system.
              </note>
            </remarks>
            <example>
              <para>
              Include a task that fetches the project version from the 
              <c>GetProjectVersion.include</c> build file.
              </para>
              <code>
                <![CDATA[
            <include buildfile="GetProjectVersion.include" />
                ]]>
              </code>
            </example>
        </member>
        <member name="F:NAnt.Core.Tasks.IncludeTask._includedFileNames">
            <summary>
            Used to check for recursived includes.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.IncludeTask.Initialize">
            <summary>
            Verifies parameters.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.IncludeTask.BuildFileName">
            <summary>
            Build file to include.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.LoadFileTask">
            <summary>
            Load a text file into a single property.
            </summary>
            <remarks>
              <para>
              Unless an encoding is specified, the encoding associated with the 
              system's current ANSI code page is used.
              </para>
              <para>
              An UTF-8, little-endian Unicode, and big-endian Unicode encoded text 
              file is automatically recognized, if the file starts with the appropriate 
              byte order marks.
              </para>
            </remarks>
            <example>
              <para>
              Load file <c>message.txt</c> into property "message".
              </para>
              <code>
                <![CDATA[
            <loadfile
                file="message.txt"
                property="message" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Load a file using the "latin-1" encoding.
              </para>
              <code>
                <![CDATA[
            <loadfile
                file="loadfile.xml"
                property="encoded-file"
                encoding="iso-8859-1" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Load a file, replacing all <c>@NOW@</c> tokens with the current 
              date/time. 
              </para>
              <code>
                <![CDATA[
            <loadfile file="token.txt" property="token-file">
                <filterchain>
                    <replacetokens>
                        <token key="NOW" value="${datetime::now()}" />
                    </replacetokens>
                </filterchain>
            </loadfile>
                ]]>
              </code>
            </example>
        </member>
        <member name="P:NAnt.Core.Tasks.LoadFileTask.File">
            <summary>
            The file to load.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoadFileTask.Property">
            <summary>
            The name of the property to save the content to.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoadFileTask.Encoding">
            <summary>
            The encoding to use when loading the file. The default is the encoding
            associated with the system's current ANSI code page.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoadFileTask.FilterChain">
            <summary>
            The filterchain definition to use.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.LoadTasksTask">
             <summary>
             Loads tasks form a given assembly or all assemblies in a given directory
             or <see cref="T:NAnt.Core.Types.FileSet"/>.
             </summary>
            <example>
               <para>
               Load tasks from a single assembly.
               </para>
               <code>
                 <![CDATA[
             <loadtasks assembly="c:foo\NAnt.Contrib.Tasks.dll" />
                 ]]>
               </code>
             </example>
             <example>
               <para>
               Scan a single directory for task assemblies.
               </para>
               <code>
                 <![CDATA[
             <loadtasks path="c:\foo" />
                 ]]>
               </code>
             </example>
             <example>
               <para>
               Use a <see cref="P:NAnt.Core.Tasks.LoadTasksTask.TaskFileSet"/> containing both a directory and an 
               assembly.
               </para>
               <code>
                 <![CDATA[
             <loadtasks>
                <fileset>
                    <include name="C:\cvs\NAntContrib\build" />
                    <include name="C:\cvs\NAntContrib\build\NAnt.Contrib.Tasks.dll" />
                </fileset>
            </loadtasks>
                 ]]>
               </code>
             </example>
        </member>
        <member name="M:NAnt.Core.Tasks.LoadTasksTask.ExecuteTask">
            <summary>
            Executes the Load Tasks task.
            </summary>
            <exception cref="T:NAnt.Core.BuildException">Specified assembly or path does not exist.</exception>
        </member>
        <member name="M:NAnt.Core.Tasks.LoadTasksTask.Initialize">
            <summary>
            Validates the attributes.
            </summary>
            <exception cref="T:NAnt.Core.BuildException">Both <see cref="P:NAnt.Core.Tasks.LoadTasksTask.AssemblyPath"/> and <see cref="P:NAnt.Core.Tasks.LoadTasksTask.Path"/> are set.</exception>
        </member>
        <member name="P:NAnt.Core.Tasks.LoadTasksTask.AssemblyPath">
            <summary>
            An assembly to load tasks from.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoadTasksTask.Path">
            <summary>
            A directory to scan for task assemblies.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoadTasksTask.TaskFileSet">
            <summary>
            Used to select which directories or individual assemblies to scan.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.LoopTask">
            <summary>
            Loops over a set of items.
            </summary>
            <remarks>
              <para>
              Can loop over files in directory, lines in a file, etc.
              </para>
              <para>
              The property value is stored before the loop is done, and restored 
              when the loop is finished.
              </para>
              <para>
              The property is returned to its normal value once it is used. Read-only 
              parameters cannot be overridden in this loop.
              </para>
            </remarks>
            <example>
              <para>Loops over the files in <c>c:\</c>.</para>
              <code>
                <![CDATA[
            <foreach item="File" in="c:\" property="filename">
                <echo message="${filename}" />
            </foreach>
                ]]>
              </code>
            </example>
            <example>
              <para>Loops over all files in the project directory.</para>
              <code>
                <![CDATA[
            <foreach item="File" property="filename">
                <in>
                    <items>
                        <include name="**" />
                    </items>
                </in>
                <do>
                    <echo message="${filename}" />
                </do>
            </foreach>
                ]]>
              </code>
            </example>
            <example>
              <para>Loops over the folders in <c>c:\</c>.</para>
              <code>
                <![CDATA[
            <foreach item="Folder" in="c:\" property="foldername">
                <echo message="${foldername}" />
            </foreach>
                ]]>
              </code>
            </example>
            <example>
              <para>Loops over all folders in the project directory.</para>
              <code>
                <![CDATA[
            <foreach item="Folder" property="foldername">
                <in>
                    <items>
                        <include name="**" />
                    </items>
                </in>
                <do>
                    <echo message="${foldername}" />
                </do>
            </foreach>
                ]]>
              </code>
            </example>
            <example>
              <para>Loops over a list.</para>
              <code>
                <![CDATA[
            <foreach item="String" in="1 2,3" delim=" ," property="count">
                <echo message="${count}" />
            </foreach>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Loops over lines in the file <c>properties.csv</c>, where each line 
              is of the format name,value.
              </para>
              <code>
                <![CDATA[
            <foreach item="Line" in="properties.csv" delim="," property="x,y">
                <echo message="Read pair ${x}=${y}" />
            </foreach>
                ]]>
              </code>
            </example>
        </member>
        <member name="P:NAnt.Core.Tasks.LoopTask.Property">
            <summary>
            The NAnt property name(s) that should be used for the current 
            iterated item.
            </summary>
            <remarks>
            If specifying multiple properties, separate them with a comma.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.LoopTask.ItemType">
            <summary>
            The type of iteration that should be done.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoopTask.TrimType">
            <summary>
            The type of whitespace trimming that should be done. The default 
            is <see cref="F:NAnt.Core.Tasks.LoopTask.LoopTrim.None"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoopTask.Source">
            <summary>
            The source of the iteration.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoopTask.Delimiter">
            <summary>
            The deliminator char.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoopTask.InElement">
            <summary>
            Stuff to operate in. Just like the <see cref="P:NAnt.Core.Tasks.LoopTask.Source"/> 
            attribute, but supports more complicated things like a <see cref="T:NAnt.Core.Types.FileSet"/> 
            and such.
            <note>
            Please remove the <see cref="P:NAnt.Core.Tasks.LoopTask.Source"/> attribute if you 
            are using this element.
            </note>
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.LoopTask.StuffToDo">
            <summary>
            Tasks to execute for each matching item.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.LoopTask.LoopTrim.None">
            <summary>
            Do not remove any white space characters.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.LoopTask.LoopTrim.End">
            <summary>
            Remove all white space characters from the end of the current
            item.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.LoopTask.LoopTrim.Start">
            <summary>
            Remove all white space characters from the beginning of the 
            current item.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.LoopTask.LoopTrim.Both">
            <summary>
            Remove all white space characters from the beginning and end of
            the current item.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.MailTask">
            <summary>
            Sends an SMTP message.
            </summary>
            <remarks>
            <para>
            Text and text files to include in the message body may be specified as 
            well as binary attachments.
            </para>
            </remarks>
            <example>
              <para>
              Sends an email from <c>nant@sourceforge.net</c> to three recipients 
              with a subject about the attachments. The body of the message will be
              the combined contents of all <c>.txt</c> files in the base directory.
              All zip files in the base directory will be included as attachments.  
              The message will be sent using the <c>smtpserver.anywhere.com</c> SMTP 
              server.
              </para>
              <code>
                <![CDATA[
            <mail 
                from="nant@sourceforge.net" 
                tolist="recipient1@sourceforge.net" 
                cclist="recipient2@sourceforge.net" 
                bcclist="recipient3@sourceforge.net" 
                subject="Msg 7: With attachments" 
                mailhost="smtpserver.anywhere.com">
                <files>
                    <include name="*.txt" />
                </files>   
                <attachments>
                    <include name="*.zip" />
                </attachments>
            </mail>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Sends an email from a gmail account to multiple recipients. This example
              illustrates how to add a recipient's name to an email address.
              </para>
              <code>
                <![CDATA[
            <mail
                from="+xxxx+@gmail.com"
                tolist="(Rep A) recipient1@sourceforge.net;(Rep B) recipient2@sourceforge.net"
                subject="Sample Email"
                mailhost="smtp.gmail.com"
                mailport="465"
                ssl="true"
                user="+xxxx+@gmail.com"
                password="p@ssw0rd!"
                message="Email from NAnt" />
                ]]>
              </code>
              <para>
              Email addresses in any of the lists (to, cc, bcc, from) can be in one of
              the five listed formats below.
              </para>
              <list type="bullet">
              <item>
              <description>Full Name &lt;address@abcxyz.com&gt;</description>
              </item>
              <item>
              <description>&lt;address@abcxyz.com&gt; Full Name</description>
              </item>
              <item>
              <description>(Full Name) address@abcxyz.com</description>
              </item>
              <item>
              <description>address@abcxyz.com (Full Name)</description>
              </item>
              <item>
              <description>address@abcxyz.com</description>
              </item>
              </list>
              <para>
              Remember to use &amp;gt; and &amp;lt; XML entities for the angle brackets.
              </para>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.MailTask.Initialize">
            <summary>
            Initializes task and ensures the supplied attributes are valid.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.MailTask.ExecuteTask">
            <summary>
            This is where the work is done.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.MailTask.ReadFile(System.String)">
            <summary>
            Reads a text file and returns the content
            in a string.
            </summary>
            <param name="filename">The file to read content of.</param>
            <returns>
            The content of the specified file.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.MailTask.ParseAddresses(System.String)">
            <summary>
            Converts an email address or a series of email addresses from
            a <see cref="T:System.String"/> object to a new
            <see cref="T:System.Net.Mail.MailAddressCollection"/> object.
            </summary>
            <param name="addresses">
            A list of email addresses separated by a semicolon.
            </param>
            <returns>
            A new <see cref="T:System.Net.Mail.MailAddressCollection"/> object
            containing the addresses from <paramref name="addresses"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.MailTask.ConvertStringToMailAddress(System.String)">
            <summary>
            Converts a <see cref="T:System.String"/> object containing
            email address information to a 
            <see cref="T:System.Net.Mail.MailAddress"/> object.
            </summary>
            <remarks>
            <para>
            Email address information passed to this method should be in
            one of five formats.
            </para>
            <list type="bullet">
            <item>
            <description>Full Name &lt;address@abcxyz.com&gt;</description>
            </item>
            <item>
            <description>&lt;address@abcxyz.com&gt; Full Name</description>
            </item>
            <item>
            <description>(Full Name) address@abcxyz.com</description>
            </item>
            <item>
            <description>address@abcxyz.com (Full Name)</description>
            </item>
            <item>
            <description>address@abcxyz.com</description>
            </item>
            </list>
            <para>
            If the full name of the intended recipient (or sender) is provided,
            that information is included in the resulting 
            <see cref="T:System.Net.Mail.MailAddress"/> object.
            </para>
            </remarks>
            <param name="address">
            The string that contains the address to parse.
            </param>
            <returns>
            A new MailAddress object containing the information from
            <paramref name="address"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.MailTask.UnescapeXmlCodes(System.String)">
            <summary>
            Simple method that converts an XML escaped string back to its unescaped
            format.
            </summary>
            <param name="value">
            An html encoded string.
            </param>
            <returns>
            The decoded format of the html encoded string.
            </returns>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.From">
            <summary>
            Email address of sender.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.ToList">
            <summary>
            Semicolon-separated list of recipient email addresses.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.ReplyTo">
            <summary>
            Reply to email address.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.CcList">
            <summary>
            Semicolon-separated list of CC: recipient email addresses.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.BccList">
            <summary>
            Semicolon-separated list of BCC: recipient email addresses.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.Mailhost">
            <summary>
            Host name of mail server. The default is <c>localhost</c>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.Port">
            <summary>
            The port number used to connect to the mail server.
            The default is <c>25</c>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.EnableSsl">
            <summary>
            Indicates whether or not ssl should be used to
            connect to the smtp host.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.Message">
            <summary>
            Text to send in body of email message.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.Subject">
            <summary>
            Text to send in subject line of email message.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.IsBodyHtml">
            <summary>
            Indicates whether or not the body of the email is in
            html format. The default value is <c>false</c>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.UserName">
            <summary>
            The username to use when connecting to the smtp host.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.Password">
            <summary>
            The password to use when connecting to the smtp host.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.Format">
            <summary>
            Format of the message. The default is <see cref="F:NAnt.Core.Tasks.MailTask.MailFormat.Text"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.Files">
            <summary>
            Files that are transmitted as part of the body of the email message.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MailTask.Attachments">
            <summary>
            Attachments that are transmitted with the message.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.MailTask.MailFormat">
            <summary>
            Temporary enum replacement of <see cref="T:System.Web.Mail.MailFormat"/>
            to ease transition to newer property flags.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.MailTask.MailFormat.Text">
            <summary>
            Indicates the body of the email is formatted in plain text.
            </summary>
        </member>
        <member name="F:NAnt.Core.Tasks.MailTask.MailFormat.Html">
            <summary>
            Indicates the body of the email is formatted in html.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.MkDirTask">
            <summary>
            Creates a directory and any non-existent parent directory if necessary.
            </summary>
            <example>
              <para>Create the directory <c>build</c>.</para>
              <code>
                <![CDATA[
            <mkdir dir="build" />
                ]]>
              </code>
            </example>
            <example>
              <para>Create the directory tree <c>one/two/three</c>.</para>
              <code>
                <![CDATA[
            <mkdir dir="one/two/three" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.MkDirTask.ExecuteTask">
            <summary>
            Creates the directory specified by the <see cref="P:NAnt.Core.Tasks.MkDirTask.Dir"/> property.
            </summary>
            <exception cref="T:NAnt.Core.BuildException">The directory could not be created.</exception>
        </member>
        <member name="P:NAnt.Core.Tasks.MkDirTask.Dir">
            <summary>
            The directory to create.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.MoveTask">
            <summary>
            Moves a file, a directory, or set of files to a new file or directory.
            </summary>
            <remarks>
              <para>
              Files are only moved if the source file is newer than the destination
              file, or if the destination file does not exist.  However, you can
              explicitly overwrite files with the <see cref="P:NAnt.Core.Tasks.CopyTask.Overwrite"/> 
              attribute.
              </para>
              <para>
              Entire directory structures can be moved to a new location.  For this
              to happen, the following criteria must be met:
              </para>
              <list type="bullet">
                <item>
                  <description>
                  Everything in the fileset is included
                  </description>
                </item>
                <item>
                  <description>
                  The directory structure is not flattened
                  </description>
                </item>
                <item>
                  <description>
                  Empty directories are included
                  </description>
                </item>
                <item>
                  <description>
                  Destination directory does not exist
                  </description>
                </item>
              </list>
              <para>
              If any of these items are not met, then the files within the source
              directory will be moved over instead of the entire directory structure.
              </para>
              <para>
              A <see cref="T:NAnt.Core.Types.FileSet"/> can be used to select files or directories to move.
              To use a <see cref="T:NAnt.Core.Types.FileSet"/>, the <see cref="P:NAnt.Core.Tasks.CopyTask.ToDirectory"/>
              attribute must be set.
              </para>
              <h3>Encoding</h3>
              <para>
              Unless an encoding is specified, the encoding associated with the 
              system's current ANSI code page is used.
              </para>
              <para>
              An UTF-8, little-endian Unicode, and big-endian Unicode encoded text 
              file is automatically recognized, if the file starts with the 
              appropriate byte order marks.
              </para>
              <note>
              If you employ filters in your move operation, you should limit the 
              move to text files. Binary files will be corrupted by the move 
              operation.
              </note>
            </remarks>
            <example>
              <para>
              Move a single file while changing its encoding from "latin1" to 
              "utf-8".
              </para>
              <code>
                <![CDATA[
            <move
                file="myfile.txt"
                tofile="mycopy.txt"
                inputencoding="latin1"
                outputencoding="utf-8" />
                ]]>
              </code>
            </example>
            <example>
              <para>Move a set of files.</para>
              <code>
                <![CDATA[
            <move todir="${build.dir}">
                <fileset basedir="bin">
                    <include name="*.dll" />
                </fileset>
            </move>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Move a set of files to a directory, replacing <c>@TITLE@</c> with 
              "Foo Bar" in all files.
              </para>
              <code>
                <![CDATA[
            <move todir="../backup/dir">
                <fileset basedir="src_dir">
                    <include name="**/*" />
                </fileset>
                <filterchain>
                    <replacetokens>
                        <token key="TITLE" value="Foo Bar" />
                    </replacetokens>
                </filterchain>
            </move>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Move an entire directory and its contents.
              </para>
              <code>
                <![CDATA[
            <move todir="target/dir">
              <fileset basedir="source/dir"/>
            </move>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.MoveTask.DoFileOperations">
            <summary>
            Actually does the file moves.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MoveTask.SourceFile">
            <summary>
            The file to move.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MoveTask.ToFile">
            <summary>
            The file to move to.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MoveTask.ToDirectory">
            <summary>
            The directory to move to.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MoveTask.CopyFileSet">
            <summary>
            Used to select the files to move. To use a <see cref="T:NAnt.Core.Types.FileSet"/>,
            the <see cref="P:NAnt.Core.Tasks.MoveTask.ToDirectory"/> attribute must be set.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MoveTask.Flatten">
            <summary>
            Ignore directory structure of source directory, move all files into
            a single directory, specified by the <see cref="P:NAnt.Core.Tasks.MoveTask.ToDirectory"/>
            attribute. The default is <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.MoveTask.Filters">
            <summary>
            Chain of filters used to alter the file's content as it is moved.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.NAntSchemaTask">
            <summary>
            Creates an XSD File for all available tasks.
            </summary>
            <remarks>
              <para>
              This can be used in conjuntion with the command-line option to do XSD 
              Schema validation on the build file.
              </para>
            </remarks>
            <example>
              <para>Creates a <c>NAnt.xsd</c> file in the current project directory.</para>
              <code>
                <![CDATA[
            <nantschema output="NAnt.xsd" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.NAntSchemaTask.WriteSchema(System.IO.Stream,System.Type[],System.Type[],System.String)">
            <summary>
            Creates a NAnt Schema for given types
            </summary>
            <param name="stream">The output stream to save the schema to. If <see langword="null" />, writing is ignored, no exception generated.</param>
            <param name="tasks">The list of tasks to generate XML Schema for.</param>
            <param name="dataTypes">The list of datatypes to generate XML Schema for.</param>
            <param name="targetNS">The target namespace to output.</param>
            <returns>The new NAnt Schema.</returns>
        </member>
        <member name="M:NAnt.Core.Tasks.NAntSchemaTask.CreateXsdAttribute(System.String,System.Boolean)">
            <summary>
            Creates a new <see cref="T:System.Xml.Schema.XmlSchemaAttribute"/> instance.
            </summary>
            <param name="name">The name of the attribute.</param>
            <param name="required">Value indicating whether the attribute should be required.</param>
            <returns>The new <see cref="T:System.Xml.Schema.XmlSchemaAttribute"/> instance.</returns>
        </member>
        <member name="M:NAnt.Core.Tasks.NAntSchemaTask.CreateXsdSequence(System.Decimal,System.Decimal)">
            <summary>
            Creates a new <see cref="T:System.Xml.Schema.XmlSchemaSequence"/> instance.
            </summary>
            <param name="min">The minimum value to allow for this choice</param>
            <param name="max">The maximum value to allow, Decimal.MaxValue sets it to 'unbound'</param>
            <returns>The new <see cref="T:System.Xml.Schema.XmlSchemaSequence"/> instance.</returns>
        </member>
        <member name="P:NAnt.Core.Tasks.NAntSchemaTask.OutputFile">
            <summary>
            The name of the output file to which the XSD should be written.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.NAntSchemaTask.TargetNamespace">
            <summary>
            The target namespace for the output. Defaults to "http://tempuri.org/nant-donotuse.xsd"
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.NAntSchemaTask.ForType">
            <summary>
            The <see cref="T:System.Type"/> for which an XSD should be created. If not
            specified, an XSD will be created for all available tasks.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.NAntSchemaTask.NAntSchemaGenerator.#ctor(System.Type[],System.Type[],System.String)">
            <summary>
            Creates a new instance of the <see cref="T:NAnt.Core.Tasks.NAntSchemaTask.NAntSchemaGenerator"/>
            class.
            </summary>
            <param name="tasks">Tasks for which a schema should be generated.</param>
            <param name="dataTypes">Data Types for which a schema should be generated.</param>
            <param name="targetNS">The namespace to use.
            <example> http://tempuri.org/nant.xsd </example>
            </param>
        </member>
        <member name="T:NAnt.Core.Tasks.NAntTask">
            <summary>
            Runs NAnt on a supplied build file, or a set of build files.
            </summary>
            <remarks>
              <para>
              By default, all the properties of the current project will be available
              in the new project. Alternatively, you can set <see cref="P:NAnt.Core.Tasks.NAntTask.InheritAll"/>
              to <see langword="false"/> to not copy any properties to the new 
              project.
              </para>
              <para>
              You can also set properties in the new project from the old project by 
              using nested property tags. These properties are always passed to the 
              new project regardless of the setting of <see cref="P:NAnt.Core.Tasks.NAntTask.InheritAll"/>.
              This allows you to parameterize your subprojects.
              </para>
              <para>
              References to data types can also be passed to the new project, but by
              default they are not. If you set the <see cref="P:NAnt.Core.Tasks.NAntTask.InheritRefs"/> to 
              <see langword="true"/>, all references will be copied.
              </para>
            </remarks>
            <example>
              <para>
              Build a project located in a different directory if the <c>debug</c> 
              property is not <see langword="true"/>.
              </para>
              <code>
                <![CDATA[
            <nant buildfile="${src.dir}/Extras/BuildServer/BuildServer.build" unless="${debug}" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Build a project while adding a set of properties to that project.
              </para>
              <code>
                <![CDATA[
            <nant buildfile="${src.dir}/Extras/BuildServer/BuildServer.build">
                <properties>
                    <property name="build.dir" value="c:/buildserver" />
                    <property name="build.debug" value="false" />
                    <property name="lib.dir" value="c:/shared/lib" readonly="true" />
                </properties>
            </nant>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Build all projects named <c>default.build</c> located anywhere under 
              the project base directory.
              </para>
              <code>
                <![CDATA[
            <nant>
                <buildfiles>
                    <include name="**/default.build" />
                    <!-- avoid recursive execution of current build file -->
                    <exclude name="${project::get-buildfile-path()}" />
                </buildfiles>
            </nant>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.NAntTask.Initialize">
            <summary>
            Validates the <see cref="T:NAnt.Core.Tasks.NAntTask"/> element.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.NAntTask.BuildFile">
            <summary>
            The build file to build.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.NAntTask.DefaultTarget">
            <summary>
            The target to execute. To specify more than one target seperate 
            targets with a space. Targets are executed in order if possible. 
            The default is to use target specified in the project's default 
            attribute.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.NAntTask.BuildFiles">
            <summary>
            Used to specify a set of build files to process.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.NAntTask.InheritAll">
            <summary>
            Specifies whether current property values should be inherited by 
            the executed project. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.NAntTask.InheritRefs">
            <summary>
            Specifies whether all references will be copied to the new project. 
            The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.NAntTask.OverrideProperties">
            <summary>
            Specifies a collection of properties that should be created in the
            executed project.  Note, existing properties with identical names 
            that are not read-only will be overwritten.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.PropertyTask">
            <summary>
            Sets a property in the current project.
            </summary>
            <remarks>
              <note>NAnt uses a number of predefined properties.</note>
            </remarks>
            <example>
              <para>
              Define a <c>debug</c> property with value <see langword="true" />.
              </para>
              <code>
                <![CDATA[
            <property name="debug" value="true" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Use the user-defined <c>debug</c> property.
              </para>
              <code>
                <![CDATA[
            <property name="trace" value="${debug}" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Define a read-only property. This is just like passing in the param 
              on the command line.
              </para>
              <code>
                <![CDATA[
            <property name="do_not_touch_ME" value="hammer" readonly="true" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Define a property, but do not overwrite the value if the property already exists (eg. it was specified on the command line).
              </para>
              <code>
                <![CDATA[
            <project name="property-example">
              <property name="debug" value="true" overwrite="false" />
              <echo message="debug: ${debug}" />
            </project>
                ]]>
              </code>
              <para>
              Executing this build file with the command line option <c>-D:debug=false</c>,
              would cause the value specified on the command line to remain unaltered.
              </para>
              <code>
                <![CDATA[
            [echo] debug: false
                ]]>
              </code>
            </example>
        </member>
        <member name="P:NAnt.Core.Tasks.PropertyTask.PropertyName">
            <summary>
            The name of the NAnt property to set.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.PropertyTask.Value">
            <summary>
            The value to assign to the NAnt property.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.PropertyTask.ReadOnly">
            <summary>
            Specifies whether the property is read-only or not. 
            The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.PropertyTask.Dynamic">
            <summary>
            Specifies whether references to other properties should not be 
            expanded when the value of the property is set, but expanded when
            the property is actually used.  By default, properties will be
            expanded when set.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.PropertyTask.Overwrite">
            <summary>
            Specifies whether the value of a property should be overwritten if
            the property already exists (unless the property is read-only). 
            The default is <see langword="true" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.RegexTask">
            <summary>
            Sets project properties based on the evaluatuion of a regular expression.
            </summary>
            <remarks>
            <para>
            The <see cref="P:NAnt.Core.Tasks.RegexTask.Pattern"/> attribute must contain one or more 
            <see href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpgenref/html/cpcongroupingconstructs.asp">
            named grouping constructs</see>, which represents the names of the 
            properties to be set. These named grouping constructs can be enclosed 
            by angle brackets (?&lt;name&gt;) or single quotes (?'name').
            </para>
            <note>
            In the build file, use the XML element <![CDATA[&lt;]]> to specify &lt;, 
            and <![CDATA[&gt;]]> to specify &gt;.
            </note>
            <note>
            The named grouping construct must not contain any punctuation and it 
            cannot begin with a number.
            </note>
            </remarks>
            <example>
              <para>
              Find the last word in the given string and stores it in the property 
              <c>lastword</c>.
              </para>
              <code>
                <![CDATA[
            <regex pattern="(?'lastword'\w+)$" input="This is a test sentence" />
            <echo message="${lastword}" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Split the full filename and extension of a filename.
              </para>
              <code>
                <![CDATA[
            <regex pattern="^(?'filename'.*)\.(?'extension'\w+)$" input="d:\Temp\SomeDir\SomeDir\bla.xml" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Split the path and the filename. (This checks for <c>/</c> or <c>\</c> 
              as the path separator).
              </para>
              <code>
                <![CDATA[
            <regex pattern="^(?'path'.*(\\|/)|(/|\\))(?'file'.*)$" input="d:\Temp\SomeDir\SomeDir\bla.xml" />
                ]]>
              </code>
              <para>
              Results in path=<c>d:\Temp\SomeDir\SomeDir\</c> and file=<c>bla.xml</c>.
              </para>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.RegexTask.ExecuteTask">
            <summary>
            Executes the task.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.RegexTask.Pattern">
            <summary>
            Represents the regular expression to be evalued.
            </summary>
            <value>
            The regular expression to be evalued.
            </value>
            <remarks>
            The pattern must contain one or more named constructs, which may 
            not contain any punctuation and cannot begin with a number.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.RegexTask.Options">
            <summary>
            A comma separated list of options to pass to the regex engine. The
            default is <see cref="F:System.Text.RegularExpressions.RegexOptions.None"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.RegexTask.Input">
            <summary>
            Represents the input for the regular expression.
            </summary>
            <value>
            The input for the regular expression.
            </value>
        </member>
        <member name="T:NAnt.Core.Tasks.SetEnvTask">
            <summary>
            Sets an environment variable or a whole collection of them. Use an empty 
            <see cref="P:NAnt.Core.Tasks.SetEnvTask.LiteralValue"/> attribute to clear a variable.
            </summary>
            <remarks>
              <note>
              Variables will be set for the current NAnt process and all child 
              processes that NAnt spawns (compilers, shell tools, etc). If the 
              intention is to only set a variable for a single child process, then
              using the <see cref="T:NAnt.Core.Tasks.ExecTask"/> and its nested <see cref="P:NAnt.Core.Tasks.ExecTask.EnvironmentSet"/> 
              element might be a better option. 
              </note>
              <note>
              Expansion of inline environment variables is performed using the syntax 
              of the current platform. So on Windows platforms using the string %PATH% 
              in the <see cref="P:NAnt.Core.Tasks.SetEnvTask.LiteralValue"/> attribute will result in the value of 
              the PATH variable being expanded in place before the variable is set.
              </note>
            </remarks>
            <example>
              <para>Set the MONO_PATH environment variable on a *nix platform.</para>
              <code>
                <![CDATA[
                <setenv name=="MONO_PATH" value="/home/jimbob/dev/foo:%MONO_PATH%"/>
                ]]>
              </code>
            </example>
            <example>
              <para>Set a collection of environment variables. Note the nested variable used to set var3.</para>
              <code>
                <![CDATA[
                <setenv>
                        <variable name="var1" value="value2" />
                        <variable name="var2" value="value2" />
                        <variable name="var3" value="value3:%var2%" />
                </setenv>
                ]]>
              </code>
            </example>
            <example>
              <para>Set environment variables using nested path elements.</para>
              <code>
                <![CDATA[
                <path id="build.path">
                       <pathelement dir="c:/windows" />
                       <pathelement dir="c:/cygwin/usr/local/bin" />
                   </path>
                <setenv>         
                        <variable name="build_path" >
                               <path refid="build.path" />
                        </variable>
                        <variable name="path2">
                           <path>
                               <pathelement dir="c:/windows" />
                               <pathelement dir="c:/cygwin/usr/local/bin" />
                           </path>
                        </variable>
                </setenv>    
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.SetEnvTask.Initialize">
            <summary>
            Checks whether the task is initialized with valid attributes.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.SetEnvTask.ExecuteTask">
            <summary>
            Set the environment variables
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.SetEnvTask.SetSingleEnvironmentVariable(System.String,System.String)">
            <summary>
            Do the actual work here.
            </summary>
            <param name="name">The name of the environment variable.</param>
            <param name="value">The value of the environment variable.</param>
        </member>
        <member name="P:NAnt.Core.Tasks.SetEnvTask.EnvName">
            <summary>
            The name of a single Environment variable to set
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.SetEnvTask.LiteralValue">
            <summary>
            The literal value for the environment variable.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.SetEnvTask.File">
            <summary>
            The value for a file-based environment variable. NAnt will convert 
            it to an absolute filename.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.SetEnvTask.Directory">
            <summary>
            The value for a directory-based environment variable. NAnt will 
            convert it to an absolute path.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.SetEnvTask.Path">
            <summary>
            The value for a PATH like environment variable. You can use 
            <c>:</c> or <c>;</c> as path separators and NAnt will convert it to 
            the platform's local conventions.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.SleepTask">
            <summary>
            A task for sleeping a specified period of time, useful when a build or deployment process
            requires an interval between tasks.
            </summary>
            <example>
              <para>Sleep 1 hour, 2 minutes, 3 seconds and 4 milliseconds.</para>
              <code>
                <![CDATA[
            <sleep hours="1" minutes="2" seconds="3" milliseconds="4" />
                ]]>
              </code>
            </example>
            <example>
              <para>Sleep 123 milliseconds.</para>
              <code>
                <![CDATA[
            <sleep milliseconds="123" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.SleepTask.Initialize">
            <summary>
             Verify parameters.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.SleepTask.GetSleepTime">
            <summary>
            Return time to sleep.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.SleepTask.DoSleep(System.Int32)">
            <summary>
            Sleeps for the specified number of milliseconds.
            </summary>
            <param name="millis">Number of milliseconds to sleep.</param>
        </member>
        <member name="P:NAnt.Core.Tasks.SleepTask.Hours">
            <summary>
            Hours to add to the sleep time.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.SleepTask.Minutes">
            <summary>
            Minutes to add to the sleep time.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.SleepTask.Seconds">
            <summary>
            Seconds to add to the sleep time.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.SleepTask.Milliseconds">
            <summary>
            Milliseconds to add to the sleep time.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.StyleTask">
            <summary>
            Processes a document via XSLT.
            </summary>
            <example>
              <para>Create a report in HTML.</para>
              <code>
                <![CDATA[
            <style style="report.xsl" in="data.xml" out="report.html" />
                ]]>
              </code>
            </example>
            <example>
              <para>Create a report in HTML, with a param.</para>
              <code>
                <![CDATA[
            <style style="report.xsl" in="data.xml" out="report.html">
                <parameters>
                    <parameter name="reportType" namespaceuri="" value="Plain" />
                </parameters>
            </style>
                ]]>
              </code>
            </example>
            <example>
              <para>Create a report in HTML, with a expanded param.</para>
              <code>
                <![CDATA[
            <style style="report.xsl" in="data.xml" out="report.html">
                <parameters>
                    <parameter name="reportType" namespaceuri="" value="${report.type}" />
                </parameters>
            </style>
                ]]>
              </code>
            </example>
            <example>
              <para>Create some code based on a directory of templates.</para>
              <code>
                <![CDATA[
            <style style="CodeGenerator.xsl" extension="java">
                <infiles>
                    <include name="*.xml" />
                </infiles>
                <parameters>
                    <parameter name="reportType" namespaceuri="" value="Plain" if="${report.plain}" />
                </parameters>
            <style>
                ]]>
              </code>
            </example>
            <example>
              <para>Create a report in HTML, with an extension object.</para>
              <code>
                <![CDATA[
            <style style="report.xsl" in="data.xml" out="report.html">
                <extensionobjects>
                    <extensionobject namespaceuri="urn:Formatter" typename="XsltExtensionObjects.Formatter" assembly="XsltExtensionObjects.dll" />
                </extensionobjects>
            </style>
                ]]>
              </code>
            </example>
        </member>
        <member name="P:NAnt.Core.Tasks.StyleTask.DestDir">
            <summary>
            Directory in which to store the results. The default is the project
            base directory.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.StyleTask.Extension">
            <summary>
            Desired file extension to be used for the targets. The default is 
            <c>html</c>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.StyleTask.XsltFile">
            <summary>
            URI or path that points to the stylesheet to use. If given as path, it can
            be relative to the project's basedir or absolute.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.StyleTask.SrcFile">
            <summary>
            Specifies a single XML document to be styled. Should be used with 
            the <see cref="P:NAnt.Core.Tasks.StyleTask.OutputFile"/> attribute.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.StyleTask.OutputFile">
            <summary>
            Specifies the output name for the styled result from the <see cref="P:NAnt.Core.Tasks.StyleTask.SrcFile"/> 
            attribute.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.StyleTask.InFiles">
            <summary>
            Specifies a group of input files to which to apply the stylesheet.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.StyleTask.Parameters">
            <summary>
            XSLT parameters to be passed to the XSLT transformation.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.StyleTask.ExtensionObjects">
            <summary>
            XSLT extension objects to be passed to the XSLT transformation.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.StyleTask.Proxy">
            <summary>
            The network proxy to use to access the Internet resource.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.SysInfoTask">
            <summary>
            Sets properties with system information.
            </summary>
            <remarks>
              <para>Sets a number of properties with information about the system environment.  The intent of this task is for nightly build logs to have a record of system information so that the build was performed on.</para>
              <list type="table">
                <listheader>
                  <term>Property</term>
                  <description>Value</description>
                </listheader>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.clr.version</term>
                  <description>Common Language Runtime version number.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.env.*</term>
                  <description>Environment variables (e.g., &lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.env.PATH).</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os.platform</term>
                  <description>Operating system platform ID.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os.version</term>
                  <description>Operating system version.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os</term>
                  <description>Operating system version string.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os.folder.applicationdata</term>
                  <description>The directory that serves as a common repository for application-specific data for the current roaming user.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os.folder.commonapplicationdata</term>
                  <description>The directory that serves as a common repository for application-specific data that is used by all users.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os.folder.commonprogramfiles</term>
                  <description>The directory for components that are shared across applications.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os.folder.desktopdirectory</term>
                  <description>The directory used to physically store file objects on the desktop. Do not confuse this directory with the desktop folder itself, which is a virtual folder.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os.folder.programfiles</term>
                  <description>The Program Files directory.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os.folder.system</term>
                  <description>The System directory.</description>
                </item>
                <item>
                  <term>&lt;<see cref="P:NAnt.Core.Tasks.SysInfoTask.Prefix"/>&gt;.os.folder.temp</term>
                  <description>The temporary directory.</description>
                </item>
              </list>
              <para>
              When the name of an environment variable is not a valid property name,
              the task will fail. In that case, set <see cref="P:NAnt.Core.Task.FailOnError"/> to 
              <see langword="true"/> to allow that environment variable to be 
              skipped.
              </para>
              <note>
              we advise you to use the following functions instead:
              </note>
              <list type="table">
                <listheader>
                    <term>Function</term>
                    <description>Description</description>
                </listheader>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetOperatingSystem"/></term>
                    <description>Gets a <see cref="T:System.OperatingSystem"/> object that identifies this operating system.</description>
                </item>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetFolderPath(System.Environment.SpecialFolder)"/></term>
                    <description>Gets the path to a system special folder.</description>
                </item>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetVariable(System.String)"/></term>
                    <description>Returns the value of a environment variable.</description>
                </item>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.PathFunctions.GetTempPath"/></term>
                    <description>Gets the path to the temporary directory.</description>
                </item>
                <item>
                    <term><see cref="M:NAnt.Core.Functions.EnvironmentFunctions.GetVersion"/></term>
                    <description>Gets the Common Language Runtime version.</description>
                </item>
              </list>  
            </remarks>
            <example>
              <para>Register the properties with the default property prefix.</para>
              <code>
                <![CDATA[
            <sysinfo />
                ]]>
              </code>
            </example>
            <example>
              <para>Register the properties without a prefix.</para>
              <code>
                <![CDATA[
            <sysinfo prefix="" />
                ]]>
              </code>
            </example>
            <example>
              <para>Register properties and display a summary.</para>
              <code>
                <![CDATA[
            <sysinfo verbose="true" />
                ]]>
              </code>
            </example>
        </member>
        <member name="P:NAnt.Core.Tasks.SysInfoTask.Prefix">
            <summary>
            The string to prefix the property names with. The default is "sys.".
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.TouchTask">
            <summary>
            Touches a file or set of files -- corresponds to the Unix touch command.  
            </summary>
            <remarks>
            <para>
            If the file specified does not exist, the task will create it.
            </para>
            </remarks>
            <example>
              <para>Touch the <c>Main.cs</c> file.  The current time is used.</para>
              <code>
                <![CDATA[
            <touch file="Main.cs" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Touch all executable files in the project base directory and its 
              subdirectories.
              </para>
              <code>
                <![CDATA[
            <touch>
                <fileset>
                    <include name="**/*.exe" />
                    <include name="**/*.dll" />
                </fileset>
            </touch>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.TouchTask.Initialize">
            <summary>
            Ensures the supplied attributes are valid.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.TouchTask.File">
            <summary>
            The file to touch.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.TouchTask.Millis">
            <summary>
            Specifies the new modification time of the file(s) in milliseconds 
            since midnight Jan 1 1970.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.TouchTask.Datetime">
            <summary>
            Specifies the new modification time of the file in the format 
            MM/DD/YYYY HH:MM:SS.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.TouchTask.TouchFileSet">
            <summary>
            Used to select files that should be touched.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.TryCatchTask">
            <summary>
            Executes a set of tasks, and optionally catches a build exception to
            allow recovery or rollback steps to be taken, or to define some steps
            to be taken regardless if the tasks succeed or fail, or both.
            </summary>
            <remarks>
              <para>
              The tasks defined in the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.TryBlock"/>&gt;</c> block
              will be executed in turn, as they normally would in a target.
              </para>
              <para>
              If a <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock"/>&gt;</c> block is defined, the 
              tasks in that block will be executed in turn only if one of the tasks 
              in the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.TryBlock"/>&gt;</c> block fails. This 
              failure will then be suppressed by the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock"/>&gt;</c>
              block.
              </para>
              <para>
              The message associated with the failure can also be caught in a
              property for use within the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock"/>&gt;</c>
              block.  The original contents of the property will be restored upon 
              exiting the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock"/>&gt;</c> block.
              </para>
              <para>
              If a <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.FinallyBlock"/>&gt;</c> block is defined, the 
              tasks in that block will be executed after the tasks in both the 
              <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.TryBlock"/>&gt;</c> and <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock"/>&gt;</c>
              blocks have been executed, regardless of whether any task fails in 
              either block.
              </para>
            </remarks>
            <example>
              <code>
                <![CDATA[
            <trycatch>
                <try>
                    <echo message="In try" />
                    <fail message="Failing!" />
                </try>
                <catch>
                    <echo message="In catch" />
                </catch>
                <finally>
                    <echo message="Finally done" />
                </finally>
            </trycatch>
                ]]>
              </code>
              <para>
              The output of this example will be:
              </para>
              <code>
            In try
            In catch
            Finally done
              </code>
              <para>
              The failure in the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.TryBlock"/>&gt;</c> block will 
              not cause the build to fail.
              </para>
            </example>
            <example>
              <code>
                <![CDATA[
            <trycatch>
                <try>
                    <echo message="In try" />
                    <fail message="Just because..." />
                </try>
                <catch property="failure">
                    <echo message="Caught failure: ${failure}" />
                    <fail message="Bad catch" />
                </catch>
                <finally>
                    <echo message="Finally done" />
                </finally>
            </trycatch>
                ]]>
              </code>
              <para>
              The output of this example will be:
              </para>
              <code>
            In try
            Caught failure: Just because...
            Finally done
            Build failed: Bad catch
              </code>
              <para>
              Like the above, the failure in the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.TryBlock"/>&gt;</c>
              block does not cause the build to fail.  The failure in the 
              <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock"/>&gt;</c> block does, however.
              Note that the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.FinallyBlock"/>&gt;</c> block is 
              executed even though the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock"/>&gt;</c>
              block failed.
              </para>
            </example>
            <example>
              <code>
                <![CDATA[
            <trycatch>
                <try>
                    <echo message="In try" />
                    <fail message="yet again" />
                </try>
                <catch property="failure">
                    <echo message="Caught failure ${failure}" />
                    <fail message="Bad catch" />
                </catch>
                <finally>
                    <echo message="Finally done ${failure}" />
                </finally>
            </trycatch>
                ]]>
              </code>
              <para>
              The output of this example will be:
              </para>
              <code>
            In try
            Caught failure yet again
            Build failed: Property 'failure' has not been set.
              </code>
              <para>
              The <see cref="T:NAnt.Core.Tasks.EchoTask"/> in the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.FinallyBlock"/>&gt;</c>
              block failed because the "failure" property was not defined 
              after exiting the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock"/>&gt;</c> block.  
              Note that the failure in the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.FinallyBlock"/>&gt;</c> 
              block has eclipsed the failure in the <c>&lt;<see cref="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock"/>&gt;</c>
              block.
              </para>
            </example>
            <example>
              <code>
                <![CDATA[
            <trycatch>
                <try>
                    <property name="temp.file" value="${path::get-temp-file-name()}" />
                    <do-stuff to="${temp.file}" />
                    <fail message="Oops..." />
                </try>
                <finally>
                    <echo message="Cleaning up..." />
                    <if test="${property::exists('temp.file')}">
                        <delete file="${temp.file}" />
                    </if>
                </finally>
            </trycatch>
                ]]>
              </code>
              <para>
              A more concrete example, that will always clean up the generated
              temporary file after it has been created.
              </para>
            </example>
        </member>
        <member name="P:NAnt.Core.Tasks.TryCatchTask.TryBlock">
            <summary>
            The tasks in this block will be executed as a normal part of
            the build script.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.TryCatchTask.CatchBlock">
            <summary>
            The tasks in this block will be executed if any task in the try
            block fails.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.TryCatchTask.FinallyBlock">
            <summary>
            The tasks in this block will always be executed, regardless of
            what happens in the try and catch blocks.
            </summary>
            <remarks>
            Note that any failure in any of the tasks in this block will
            prevent any subsequent tasks from executing.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Tasks.TryCatchTask.CatchElement.Property">
            <summary>
            Defines the name of the property to save the message describing
            the failure that has been caught.
            </summary>
            <remarks>
            <para>
            The failure message is only available in the context of the catch
            block.  If you wish to preserve the message, you will need to save
            it into another property.
            </para>
            <para>
            Readonly properties cannot be overridden by this mechanism.
            </para>
            </remarks>
        </member>
        <member name="T:NAnt.Core.Tasks.TStampTask">
            <summary>
            Sets properties with the current date and time.
            </summary>
            <remarks>
              <para>
              By default the <see cref="T:NAnt.Core.Tasks.TStampTask"/> displays the current date 
              and time and sets the following properties:
              </para>
              <list type="bullet">
                <item><description>tstamp.date to yyyyMMdd</description></item>
                <item><description>tstamp.time to HHmm</description></item>
                <item><description>tstamp.now using the default DateTime.ToString() method</description></item>
              </list>
              <para>
              To set an additional property with a custom date/time use the 
              <see cref="P:NAnt.Core.Tasks.TStampTask.Property"/> and <see cref="P:NAnt.Core.Tasks.TStampTask.Pattern"/> attributes.  
              To set a number of additional properties with the exact same date and 
              time use the <see cref="P:NAnt.Core.Tasks.TStampTask.Formatters"/> nested element (see example).
              </para>
              <para>
              The date and time string displayed by the <see cref="T:NAnt.Core.Tasks.TStampTask"/> 
              uses the computer's default long date and time string format.  You 
              might consider setting these to the 
              <see href="http://www.cl.cam.ac.uk/~mgk25/iso-time.html">ISO 8601 standard 
              for date and time notation</see>.
              </para>
            </remarks>
            <example>
              <para>Set the <c>build.date</c> property.</para>
              <code>
                <![CDATA[
            <tstamp property="build.date" pattern="yyyyMMdd" verbose="true" />
                ]]>
              </code>
            </example>
            <example>
              <para>Set a number of properties for Ant like compatibility.</para>
              <code>
                <![CDATA[
            <tstamp verbose="true">
                <formatter property="TODAY" pattern="dd MMM yyyy"/>
                <formatter property="DSTAMP" pattern="yyyyMMdd" unless="${date.not.needed}" />
                <formatter property="TSTAMP" pattern="HHmm" if="${need.hours}" />
            </tstamp>
                ]]>
              </code>
            </example>
        </member>
        <member name="P:NAnt.Core.Tasks.TStampTask.Property">
            <summary>
            The property to receive the date/time string in the given pattern.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.TStampTask.Pattern">
            <summary>The date/time pattern to be used.</summary>
            <remarks>
              <para>The following table lists the standard format characters for each standard pattern. The format characters are case-sensitive; for example, 'g' and 'G' represent slightly different patterns.</para>
              <list type="table">
                <listheader>
                  <description>Format Character</description>
                  <description>Description Example Format Pattern (en-US)</description>
                </listheader>
                <item><description>d</description><description>MM/dd/yyyy</description></item>
                <item><description>D</description><description>dddd, dd MMMM yyyy</description></item>
                <item><description>f</description><description>dddd, dd MMMM yyyy HH:mm</description></item>
                <item><description>F</description><description>dddd, dd MMMM yyyy HH:mm:ss</description></item>
                <item><description>g</description><description>MM/dd/yyyy HH:mm</description></item>
                <item><description>G</description><description>MM/dd/yyyy HH:mm:ss</description></item>
                <item><description>m, M</description><description>MMMM dd</description></item>
                <item><description>r, R</description><description>ddd, dd MMM yyyy HH':'mm':'ss 'GMT'</description></item>
                <item><description>s</description><description>yyyy'-'MM'-'dd'T'HH':'mm':'ss</description></item>
                <item><description>t</description><description>HH:mm</description></item>
                <item><description>T</description><description>HH:mm:ss</description></item>
                <item><description>u</description><description>yyyy'-'MM'-'dd HH':'mm':'ss'Z'</description></item>
                <item><description>U</description><description>dddd, dd MMMM yyyy HH:mm:ss</description></item>
                <item><description>y, Y</description><description>yyyy MMMM</description></item>
              </list>
              <para>The following table lists the patterns that can be combined to construct custom patterns. The patterns are case-sensitive; for example, "MM" is recognized, but "mm" is not. If the custom pattern contains white-space characters or characters enclosed in single quotation marks, the output string will also contain those characters. Characters not defined as part of a format pattern or as format characters are reproduced literally.</para>
              <list type="table">
                <listheader>
                  <description>Format</description>
                  <description>Pattern Description</description>
                </listheader>
                <item><description>d</description><description>The day of the month. Single-digit days will not have a leading zero.</description></item>
                <item><description>dd</description><description>The day of the month. Single-digit days will have a leading zero.</description></item>
                <item><description>ddd</description><description>The abbreviated name of the day of the week.</description></item>
                <item><description>dddd</description><description>The full name of the day of the week.</description></item>
                <item><description>M</description><description>The numeric month. Single-digit months will not have a leading zero.</description></item>
                <item><description>MM</description><description>The numeric month. Single-digit months will have a leading zero.</description></item>
                <item><description>MMM</description><description>The abbreviated name of the month.</description></item>
                <item><description>MMMM</description><description>The full name of the month.</description></item>
                <item><description>y</description><description>The year without the century. If the year without the century is less than 10, the year is displayed with no leading zero.</description></item>
                <item><description>yy</description><description>The year without the century. If the year without the century is less than 10, the year is displayed with a leading zero.</description></item>
                <item><description>yyyy</description><description>The year in four digits, including the century.</description></item>
                <item><description>gg</description><description>The period or era. This pattern is ignored if the date to be formatted does not have an associated period or era string.</description></item>
                <item><description>h</description><description>The hour in a 12-hour clock. Single-digit hours will not have a leading zero.</description></item>
                <item><description>hh</description><description>The hour in a 12-hour clock. Single-digit hours will have a leading zero.</description></item>
                <item><description>H</description><description>The hour in a 24-hour clock. Single-digit hours will not have a leading zero.</description></item>
                <item><description>HH</description><description>The hour in a 24-hour clock. Single-digit hours will have a leading zero.</description></item>
                <item><description>m</description><description>The minute. Single-digit minutes will not have a leading zero.</description></item>
                <item><description>mm</description><description>The minute. Single-digit minutes will have a leading zero.</description></item>
                <item><description>s</description><description>The second. Single-digit seconds will not have a leading zero.</description></item>
                <item><description>ss</description><description>The second. Single-digit seconds will have a leading zero.</description></item>
                <item><description>f</description><description>The fraction of a second in single-digit precision. The remaining digits are truncated.</description></item>
                <item><description>ff</description><description>The fraction of a second in double-digit precision. The remaining digits are truncated.</description></item>
                <item><description>fff</description><description>The fraction of a second in three-digit precision. The remaining digits are truncated.</description></item>
                <item><description>ffff</description><description>The fraction of a second in four-digit precision. The remaining digits are truncated.</description></item>
                <item><description>fffff</description><description>The fraction of a second in five-digit precision. The remaining digits are truncated. </description></item>
                <item><description>ffffff</description><description>The fraction of a second in six-digit precision. The remaining digits are truncated. </description></item>
                <item><description>fffffff</description><description>The fraction of a second in seven-digit precision. The remaining digits are truncated. </description></item>
                <item><description>t</description><description>The first character in the AM/PM designator.</description></item>
                <item><description>tt</description><description>The AM/PM designator. </description></item>
                <item><description>z</description><description>The time zone offset ("+" or "-" followed by the hour only). Single-digit hours will not have a leading zero. For example, Pacific Standard Time is "-8".</description></item>
                <item><description>zz</description><description>The time zone offset ("+" or "-" followed by the hour only). Single-digit hours will have a leading zero. For example, Pacific Standard Time is "-08".</description></item>
                <item><description>zzz</description><description>The full time zone offset ("+" or "-" followed by the hour and minutes). Single-digit hours and minutes will have leading zeros. For example, Pacific Standard Time is "-08:00".</description></item>
                <item><description>:</description><description>The default time separator.</description></item>
                <item><description>/</description><description>The default date separator.</description></item>
                <item><description>\ c</description><description>Pattern Where c is any character. Displays the character literally. To display the backslash character, use "\\". </description></item>
              </list>
            </remarks>
        </member>
        <member name="T:NAnt.Core.Tasks.UpToDateTask">
            <summary>
            Check modification dates on groups of files.
            </summary>
            <remarks>
            If all <see cref="P:NAnt.Core.Tasks.UpToDateTask.TargetFiles"/> are same or newer than all <see cref="P:NAnt.Core.Tasks.UpToDateTask.SourceFiles"/>, the specified property is set to <see langword="true"/>, otherwise it
            is set to <see langword="false"/>.
            </remarks>
            <example>
              <para>
              Check file dates. If <c>myfile.dll</c> is same or newer than <c>myfile.cs</c>, then set <c>myfile.dll.uptodate</c> property 
              to either <see langword="true"/> or <see langword="false"/>.
              </para>
              <code>
                <![CDATA[
            <uptodate property="myfile.dll.uptodate">
                <sourcefiles>
                    <include name="myfile.cs" />
                </sourcefiles>
                <targetfiles>
                    <include name="myfile.dll" />
                </targetfiles>
            </uptodate>
                ]]>
              </code>
            </example>
        </member>
        <member name="P:NAnt.Core.Tasks.UpToDateTask.PropertyName">
            <summary>
            Property that will be set to <see langword="true" /> or <see langword="false" /> depending on the 
            result of the date check.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.UpToDateTask.SourceFiles">
            <summary>
            The <see cref="T:NAnt.Core.Types.FileSet"/> that contains list of source files. 
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.UpToDateTask.TargetFiles">
            <summary>
            The <see cref="T:NAnt.Core.Types.FileSet"/> that contains list of target files. 
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.XmlPeekTask">
            <summary>
            Extracts text from an XML file at the location specified by an XPath 
            expression.
            </summary>
            <remarks>
            <para>
            If the XPath expression specifies multiple nodes the node index is used 
            to determine which of the nodes' text is returned.
            </para>
            </remarks>
            <example>
              <para>
              The example provided assumes that the following XML file (App.config)
              exists in the current build directory.
              </para>
              <code>
                <![CDATA[
            <?xml version="1.0" encoding="utf-8" ?>
            <configuration xmlns="http://www.gordic.cz/shared/project-config/v_1.0.0.0">
                <appSettings>
                    <add key="server" value="testhost.somecompany.com" />
                </appSettings>
            </configuration>
                ]]>
              </code>
            </example>
            <example>
              <para>
              The example will read the server value from the above
              configuration file.
              </para>
              <code>
                <![CDATA[
            <xmlpeek
                file="App.config"
                xpath="/x:configuration/x:appSettings/x:add[@key = 'server']/@value"
                property="configuration.server">
                <namespaces>
                    <namespace prefix="x" uri="http://www.gordic.cz/shared/project-config/v_1.0.0.0" />
                </namespaces>
            </xmlpeek>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.XmlPeekTask.ExecuteTask">
            <summary>
            Executes the XML peek task.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.XmlPeekTask.LoadDocument(System.String)">
            <summary>
            Loads an XML document from a file on disk.
            </summary>
            <param name="fileName">The file name of the file to load the XML document from.</param>
            <returns>
            A <see cref="T:System.Xml.XmlDocument">document</see> containing
            the document object representing the file.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.XmlPeekTask.GetNodeContents(System.String,System.Xml.XmlDocument,System.Int32)">
            <summary>
            Gets the contents of the node specified by the XPath expression.
            </summary>
            <param name="xpath">The XPath expression used to determine which nodes to choose from.</param>
            <param name="document">The XML document to select the nodes from.</param>
            <param name="nodeIndex">The node index in the case where multiple nodes satisfy the expression.</param>
            <returns>
            The contents of the node specified by the XPath expression.
            </returns>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPeekTask.XmlFile">
            <summary>
            The name of the file that contains the XML document
            that is going to be peeked at.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPeekTask.NodeIndex">
            <summary>
            The index of the node that gets its text returned when the query 
            returns multiple nodes.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPeekTask.Property">
            <summary>
            The property that receives the text representation of the XML inside 
            the node returned from the XPath expression.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPeekTask.XPath">
            <summary>
            The XPath expression used to select which node to read.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPeekTask.Namespaces">
            <summary>
            Namespace definitions to resolve prefixes in the XPath expression.
            </summary>
        </member>
        <member name="T:NAnt.Core.Tasks.XmlPokeTask">
            <summary>
            Replaces text in an XML file at the location specified by an XPath 
            expression.
            </summary>
            <remarks>
            <para>
            The location specified by the XPath expression must exist, it will
            not create the parent elements for you. However, provided you have
            a root element you could use a series of the tasks to build the
            XML file up if necessary.
            </para>
            </remarks>
            <example>
              <para>
              Change the <c>server</c> setting in the configuration from <c>testhost.somecompany.com</c> 
              to <c>productionhost.somecompany.com</c>.
              </para>
              <para>XML file:</para>
              <code>
                <![CDATA[
            <?xml version="1.0" encoding="utf-8" ?>
            <configuration>
                <appSettings>
                    <add key="server" value="testhost.somecompany.com" />
                </appSettings>
            </configuration>
                ]]>
              </code>
              <para>Build fragment:</para>
              <code>
                <![CDATA[
            <xmlpoke
                file="App.config"
                xpath="/configuration/appSettings/add[@key = 'server']/@value"
                value="productionhost.somecompany.com" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Modify the <c>noNamespaceSchemaLocation</c> in an XML file.
              </para>
              <para>XML file:</para>
              <code>
                <![CDATA[
            <?xml version="1.0" encoding="utf-8" ?>
            <Commands xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Path Value">
            </Commands>
                ]]>
              </code>
              <para>Build fragment:</para>
              <code>
                <![CDATA[
            <xmlpoke file="test.xml" xpath="/Commands/@xsi:noNamespaceSchemaLocation" value="d:\Commands.xsd">
                <namespaces>
                    <namespace prefix="xsi" uri="http://www.w3.org/2001/XMLSchema-instance" />
                </namespaces>
            </xmlpoke>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Tasks.XmlPokeTask.ExecuteTask">
            <summary>
            Executes the XML poke task.
            </summary>
        </member>
        <member name="M:NAnt.Core.Tasks.XmlPokeTask.LoadDocument(System.String,System.Boolean)">
            <summary>
            Loads an XML document from a file on disk.
            </summary>
            <param name="fileName">
            The file name of the file to load the XML document from.
            </param>
            <param name="preserveWhitespace">
            Value for XmlDocument.PreserveWhitespace that is set before the xml is loaded.
            </param>
            <returns>
            An <see cref="T:System.Xml.XmlDocument" /> containing
            the document object model representing the file.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.XmlPokeTask.SelectNodes(System.String,System.Xml.XmlDocument,System.Xml.XmlNamespaceManager)">
            <summary>
            Given an XML document and an expression, returns a list of nodes
            which match the expression criteria.
            </summary>
            <param name="xpath">
            The XPath expression used to select the nodes.
            </param>
            <param name="document">
            The XML document that is searched.
            </param>
            <param name="nsMgr">
            An <see cref="T:System.Xml.XmlNamespaceManager"/> to use for resolving namespaces 
            for prefixes in the XPath expression.
            </param>
            <returns>
            An <see cref="T:System.Xml.XmlNodeList"/> containing references to the nodes 
            that matched the XPath expression.
            </returns>
        </member>
        <member name="M:NAnt.Core.Tasks.XmlPokeTask.UpdateNodes(System.Xml.XmlNodeList,System.String)">
            <summary>
            Given a node list, replaces the XML within those nodes.
            </summary>
            <param name="nodes">
            The list of nodes to replace the contents of.
            </param>
            <param name="value">
            The text to replace the contents with.
            </param>
        </member>
        <member name="M:NAnt.Core.Tasks.XmlPokeTask.SaveDocument(System.Xml.XmlDocument,System.String)">
            <summary>
            Saves the XML document to a file.
            </summary>
            <param name="document">The XML document to be saved.</param>
            <param name="fileName">The file name to save the XML document under.</param>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPokeTask.XmlFile">
            <summary>
            The name of the file that contains the XML document that is going 
            to be poked.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPokeTask.XPath">
            <summary>
            The XPath expression used to select which nodes are to be modified.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPokeTask.Value">
            <summary>
            The value that replaces the contents of the selected nodes.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPokeTask.Namespaces">
            <summary>
            Namespace definitions to resolve prefixes in the XPath expression.
            </summary>
        </member>
        <member name="P:NAnt.Core.Tasks.XmlPokeTask.PreserveWhitespace">
            <summary>
            If <see langword="true" /> then the whitespace in the resulting
            document will be preserved; otherwise the whitespace will be removed.
            The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.Argument">
            <summary>
            Represents a command-line argument.
            </summary>
            <remarks>
              <para>
              When passed to an external application, the argument will be quoted
              when appropriate. This does not apply to the <see cref="P:NAnt.Core.Types.Argument.Line"/>
              parameter, which is always passed as is.
              </para>
            </remarks>
            <example>
              <para>
              A single command-line argument containing a space character.
              </para>
              <code>
                <![CDATA[
            <arg value="-l -a" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              Two separate command-line arguments.
              </para>
              <code>
                <![CDATA[
            <arg line="-l -a" />
                ]]>
              </code>
            </example>
            <example>
              <para>
              A single command-line argument with the value <c>\dir;\dir2;\dir3</c>
              on DOS-based systems and <c>/dir:/dir2:/dir3</c> on Unix-like systems.
              </para>
              <code>
                <![CDATA[
            <arg path="/dir;/dir2:\dir3" />
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Types.Argument.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.Argument"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.Argument.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.Argument"/> class
            with the specified command-line argument.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.Argument.#ctor(System.IO.FileInfo)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.Argument"/> class
            with the given file.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.Argument.#ctor(NAnt.Core.Types.PathSet)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.Argument"/> class
            with the given path.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.Argument.ToString">
            <summary>
            Returns the argument as a <see cref="T:System.String"/>.
            </summary>
            <returns>
            The argument as a <see cref="T:System.String"/>.
            </returns>
            <remarks>
            File and individual path elements will be quoted if necessary.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Types.Argument.QuoteArgument(System.String)">
            <summary>
            Quotes a command line argument if it contains a single quote or a
            space.
            </summary>
            <param name="argument">The command line argument.</param>
            <returns>
            A quoted command line argument if <paramref name="argument" /> 
            contains a single quote or a space; otherwise, 
            <paramref name="argument" />.
            </returns>
        </member>
        <member name="P:NAnt.Core.Types.Argument.Value">
            <summary>
            A single command-line argument; can contain space characters.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Argument.File">
            <summary>
            The name of a file as a single command-line argument; will be 
            replaced with the absolute filename of the file.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Argument.Directory">
            <summary>
            The value for a directory-based command-line argument; will be
            replaced with the absolute path of the directory.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Argument.Path">
            <summary>
            The value for a PATH-like command-line argument; you can use 
            <c>:</c> or <c>;</c> as path separators and NAnt will convert it 
            to the platform's local conventions, while resolving references to 
            environment variables.
            </summary>
            <remarks>
            Individual parts will be replaced with the absolute path, resolved
            relative to the project base directory.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Types.Argument.PathSet">
            <summary>
            Sets a single command-line argument and treats it like a PATH - ensures 
            the right separator for the local platform is used.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Argument.Line">
            <summary>
            List of command-line arguments; will be passed to the executable
            as is.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Argument.IfDefined">
            <summary>
            Indicates if the argument should be passed to the external program. 
            If <see langword="true" /> then the argument will be passed; 
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Argument.UnlessDefined">
            <summary>
            Indicates if the argument should not be passed to the external 
            program. If <see langword="false" /> then the argument will be 
            passed; otherwise, skipped. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Argument.StringValue">
            <summary>
            Gets string value corresponding with the argument.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.ArgumentCollection">
            <summary>
            Contains a collection of <see cref="T:NAnt.Core.Types.Argument"/> elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.ArgumentCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.#ctor(NAnt.Core.Types.ArgumentCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.ArgumentCollection"/> class
            with the specified <see cref="T:NAnt.Core.Types.ArgumentCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.#ctor(NAnt.Core.Types.Argument[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.ArgumentCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.Types.Argument"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.Add(NAnt.Core.Types.Argument)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Types.Argument"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Argument"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.AddRange(NAnt.Core.Types.Argument[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.Argument"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Types.Argument"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.AddRange(NAnt.Core.Types.ArgumentCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.ArgumentCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Types.ArgumentCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.Contains(NAnt.Core.Types.Argument)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.Argument"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Argument"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.Contains(System.String)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.Argument"/> with the specified
            value is in the collection.
            </summary>
            <param name="value">The argument value to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if a <see cref="T:NAnt.Core.Types.Argument"/> with value 
            <paramref name="value"/> is found in the collection; otherwise, 
            <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.CopyTo(NAnt.Core.Types.Argument[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.IndexOf(NAnt.Core.Types.Argument)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Types.Argument"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Argument"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Types.Argument"/>. If the <see cref="T:NAnt.Core.Types.Argument"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.Insert(System.Int32,NAnt.Core.Types.Argument)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Types.Argument"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Types.Argument"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Types.ArgumentEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentCollection.Remove(NAnt.Core.Types.Argument)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Argument"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Types.ArgumentCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="P:NAnt.Core.Types.ArgumentCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.Types.Argument"/> with the specified value.
            </summary>
            <param name="value">The value of the <see cref="T:NAnt.Core.Types.Argument"/> to get.</param>
        </member>
        <member name="T:NAnt.Core.Types.ArgumentEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Types.Argument"/> elements of a <see cref="T:NAnt.Core.Types.ArgumentCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentEnumerator.#ctor(NAnt.Core.Types.ArgumentCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.ArgumentEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Types.ArgumentCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.ArgumentEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.ArgumentEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Types.Credential">
            <summary>
            Provides credentials for password-based authentication schemes.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.Credential.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.Credential"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.Credential.GetCredential">
            <summary>
            Returns a <see cref="T:System.Net.NetworkCredential"/> instance representing
            the current <see cref="T:NAnt.Core.Types.Credential"/>.
            </summary>
            <returns>
            A <see cref="T:System.Net.NetworkCredential"/> instance representing the current 
            <see cref="T:NAnt.Core.Types.Credential"/>, or <see langword="null"/> if the 
            credentials should not be used to provide authentication information
            to the external resource.
            </returns>
        </member>
        <member name="P:NAnt.Core.Types.Credential.Domain">
            <summary>
            The domain or computer name that verifies the credentials.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Credential.Password">
            <summary>
            The password for the user name associated with the credentials.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Credential.UserName">
            <summary>
            The user name associated with the credentials. 
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Credential.IfDefined">
            <summary>
            Indicates if the credentials should be used to provide authentication
            information to the external resource. If <see langword="true" /> then 
            the credentials will be passed; otherwise, not. The default is 
            <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Credential.UnlessDefined">
            <summary>
            Indicates if the credentials should not be used to provide authentication
            information to the external resource. If <see langword="false" /> then the 
            credentials will be passed; otherwise, not. The default is 
            <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.DirSet">
            <summary>
            A specialized <see cref="T:NAnt.Core.Types.FileSet"/> used for specifying a set of 
            directories.
            </summary>
            <remarks>
            Hint for supporting tasks that the included directories instead of 
            files should be used.
            </remarks>
        </member>
        <member name="T:NAnt.Core.Types.FileSet">
            <summary>
            Filesets are groups of files.  These files can be found in a directory 
            tree starting in a base directory and are matched by patterns taken 
            from a number of patterns.  Filesets can appear inside tasks that support 
            this feature or at the project level, i.e., as children of <c>&lt;project&gt;</c>.
            </summary>
            <remarks>
            <h3>Patterns</h3>
            <para>
            As described earlier, patterns are used for the inclusion and exclusion. 
            These patterns look very much like the patterns used in DOS and UNIX:
            </para>
            <list type="bullet">
                <item>
                    <description>
                        <para>'<c>*</c>' matches zero or more characters</para>
                        <para>For example:</para>
                        <para>
                        <c>*.cs</c> matches <c>.cs</c>, <c>x.cs</c> and <c>FooBar.cs</c>, 
                        but not <c>FooBar.xml</c> (does not end with <c>.cs</c>).
                        </para>
                    </description>
                </item>
                <item>
                    <description>
                        <para>'<c>?</c>' matches one character</para>
                        <para>For example:</para>
                        <para>
                        <c>?.cs</c> matches <c>x.cs</c>, <c>A.cs</c>, but not 
                        <c>.cs</c> or <c>xyz.cs</c> (both don't have one character
                        before <c>.cs</c>).
                        </para>
                    </description>
                </item>
            </list>
            <para>
            Combinations of <c>*</c>'s and <c>?</c>'s are allowed.
            </para>
            <para>
            Matching is done per-directory. This means that first the first directory 
            in the pattern is matched against the first directory in the path to match. 
            Then the second directory is matched, and so on. For example, when we have 
            the pattern <c>/?abc/*/*.cs</c> and the path <c>/xabc/foobar/test.cs</c>, 
            the first <c>?abc</c> is matched with <c>xabc</c>, then <c>*</c> is matched 
            with <c>foobar</c>, and finally <c>*.cs</c> is matched with <c>test.cs</c>. 
            They all match, so the path matches the pattern.
            </para>
            <para>
            To make things a bit more flexible, we added one extra feature, which makes 
            it possible to match multiple directory levels. This can be used to match a 
            complete directory tree, or a file anywhere in the directory tree. To do this, 
            <c>**</c> must be used as the name of a directory. When <c>**</c> is used as 
            the name of a directory in the pattern, it matches zero or more directories. 
            For example: <c>/test/**</c> matches all files/directories under <c>/test/</c>, 
            such as <c>/test/x.cs</c>, or <c>/test/foo/bar/xyz.html</c>, but not <c>/xyz.xml</c>.
            </para>
            <para>
            There is one "shorthand" - if a pattern ends with <c>/</c> or <c>\</c>, then 
            <c>**</c> is appended. For example, <c>mypackage/test/</c> is interpreted as 
            if it were <c>mypackage/test/**</c>.
            </para>
            <h3>Case-Sensitivity</h3>
            <para>
            By default, pattern matching is case-sensitive on Unix and case-insensitive
            on other platforms. The <see cref="P:NAnt.Core.Types.FileSet.CaseSensitive"/> parameter can be used
            to override this.
            </para>
            <h3>Default Excludes</h3>
            <para>
            There are a set of definitions that are excluded by default from all 
            tasks that use filesets. They are:
            </para>
            <list type="bullet">
                <item><description>**/.svn</description></item>
                <item><description>**/.svn/**</description></item>
                <item><description>**/_svn</description></item>
                <item><description>**/_svn/**</description></item>
                <item><description>**/.git</description></item>
                <item><description>**/.git/**</description></item>
                <item><description>**/.git* (eg. .gitignore)</description></item>
                <item><description>**/.hg</description></item>
                <item><description>**/.hg/**</description></item>
                <item><description>**/.hg* (eg. .hgignore)</description></item>
                <item><description>**/SCCS</description></item>
                <item><description>**/SCCS/**</description></item>
                <item><description>**/vssver.scc</description></item>
                <item><description>**/vssver2.scc</description></item>
                <item><description>**/_vti_cnf/**</description></item>
                <item><description>**/*~</description></item>
                <item><description>**/#*#</description></item>
                <item><description>**/.#*</description></item>
                <item><description>**/%*%</description></item>
                <item><description>**/CVS</description></item>
                <item><description>**/CVS/**</description></item>
                <item><description>**/.cvsignore</description></item>
            </list>
            <para>
            If you do not want these default excludes applied, you may disable them 
            by setting <see cref="P:NAnt.Core.Types.FileSet.DefaultExcludes"/> to <see langword="false"/>.
            </para>
            </remarks>
            <example>
            <list type="table">
                <listheader>
                    <term>Pattern</term>
                    <description>Match</description>
                </listheader>
                <item>
                    <term><c>**/CVS/*</c></term>
                    <description>
                        <para>
                        Matches all files in <c>CVS</c> directories that can be 
                        located anywhere in the directory tree.
                        </para>
                        <para>Matches:</para>
                        <list type="bullet">
                            <item>
                                <description>CVS/Repository</description>
                            </item>
                            <item>
                                <description>org/apache/CVS/Entries</description>
                            </item>
                            <item>
                                <description>org/apache/jakarta/tools/ant/CVS/Entries</description>
                            </item>
                        </list>
                        <para>But not:</para>
                        <list type="bullet">
                            <item>
                                <description>org/apache/CVS/foo/bar/Entries (<c>foo/bar/</c> part does not match)</description>
                            </item>
                        </list>
                    </description>
                </item>
                <item>
                    <term><c>org/apache/jakarta/**</c></term>
                    <description>
                        <para>
                        Matches all files in the <c>org/apache/jakarta</c> directory 
                        tree.
                        </para>
                        <para>Matches:</para>
                        <list type="bullet">
                            <item>
                                <description>org/apache/jakarta/tools/ant/docs/index.html</description>
                            </item>
                            <item>
                                <description>org/apache/jakarta/test.xml</description>
                            </item>
                        </list>
                        <para>But not:</para>
                        <list type="bullet">
                            <item>
                                <description>org/apache/xyz.java (<c>jakarta/</c> part is missing)</description>
                            </item>
                        </list>
                    </description>
                </item>
                <item>
                    <term><c>org/apache/**/CVS/*</c></term>
                    <description>
                        <para>
                        Matches all files in <c>CVS</c> directories that are located 
                        anywhere in the directory tree under <c>org/apache</c>.
                        </para>
                        <para>Matches:</para>
                        <list type="bullet">
                            <item>
                                <description>org/apache/CVS/Entries</description>
                            </item>
                            <item>
                                <description>org/apache/jakarta/tools/ant/CVS/Entries</description>
                            </item>
                        </list>
                        <para>But not:</para>
                        <list type="bullet">
                            <item>
                                <description>org/apache/CVS/foo/bar/Entries (<c>foo/bar/</c> part does not match)</description>
                            </item>
                        </list>
                    </description>
                </item>
                <item>
                    <term><c>**/test/**</c></term>
                    <description>
                        <para>
                        Matches all files that have a <c>test</c> element in their 
                        path, including <c>test</c> as a filename.
                        </para>
                    </description>
                </item>
            </list>
            </example>
            <seealso cref="T:NAnt.Core.Types.PatternSet"/>
        </member>
        <member name="M:NAnt.Core.Types.FileSet.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.FileSet"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.FileSet.#ctor(NAnt.Core.Types.FileSet)">
            <summary>
            copy constructor
            </summary>
            <param name="fs"></param>
        </member>
        <member name="M:NAnt.Core.Types.FileSet.Clone">
            <summary>
            Creates a shallow copy of the <see cref="T:NAnt.Core.Types.FileSet"/>.
            </summary>
            <returns>
            A shallow copy of the <see cref="T:NAnt.Core.Types.FileSet"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.FileSet.AddPatternSet(NAnt.Core.Types.PatternSet)">
            <summary>
            Adds a nested set of patterns, or references a standalone patternset.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.FileSet.CopyTo(NAnt.Core.Types.FileSet)">
            <summary>
            Copies all instance data of the <see cref="T:NAnt.Core.Types.FileSet"/> to a given
            <see cref="T:NAnt.Core.Types.FileSet"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.FileSet.FindMoreRecentLastWriteTime(System.String,System.DateTime)">
            <summary>
            Determines if a file has a more recent last write time than the 
            given time, or no longer exists.
            </summary>
            <param name="fileName">A file to check the last write time against.</param>
            <param name="targetLastWriteTime">The datetime to compare against.</param>
            <returns>
            The name of the file that has a last write time greater than 
            <paramref name="targetLastWriteTime" /> or that no longer exists; 
            otherwise, <see langword="null" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.FileSet.FindMoreRecentLastWriteTime(System.Collections.Specialized.StringCollection,System.DateTime)">
            <summary>
            Determines if one of the given files has a more recent last write 
            time than the given time. If one of the given files no longer exists,
            the target will be considered out-of-date.
            </summary>
            <param name="fileNames">A collection of filenames to check the last write time against.</param>
            <param name="targetLastWriteTime">The datetime to compare against.</param>
            <returns>
            The name of the first file that has a last write time greater than 
            <paramref name="targetLastWriteTime" />; otherwise, null.
            </returns>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.CaseSensitive">
            <summary>
            Indicates whether include and exclude patterns must be treated in a
            case-sensitive way. The default is <see langword="true" /> on Unix;
            otherwise, <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.FailOnEmpty">
            <summary>
            When set to <see langword="true"/>, causes the fileset element to 
            throw a <see cref="T:NAnt.Core.ValidationException"/> when no files match the 
            includes and excludes criteria. The default is <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.DefaultExcludes">
            <summary>
            Indicates whether default excludes should be used or not. 
            The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.BaseDirectory">
            <summary>
            The base of the directory of this fileset. The default is the project 
            base directory.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Includes">
            <summary>
            Gets the collection of include patterns.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Excludes">
            <summary>
            Gets the collection of exclude patterns.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.AsIs">
            <summary>
            Gets the collection of files that will be added to the 
            <see cref="T:NAnt.Core.Types.FileSet"/> without pattern matching or checking if the 
            file exists.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.FileNames">
            <summary>
            Gets the collection of file names that match the fileset.
            </summary>
            <value>
            A collection that contains the file names that match the 
            <see cref="T:NAnt.Core.Types.FileSet"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.DirectoryNames">
            <summary>
            Gets the collection of directory names that match the fileset.
            </summary>
            <value>
            A collection that contains the directory names that match the 
            <see cref="T:NAnt.Core.Types.FileSet"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.ScannedDirectories">
            <summary>
            Gets the collection of directory names that were scanned for files.
            </summary>
            <value>
            A collection that contains the directory names that were scanned for
            files.
            </value>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.SetIncludes">
            <summary>
            The items to include in the fileset.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.IncludeElements">
            <summary>
            The items to include in the fileset.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.SetExcludes">
            <summary>
            The items to exclude from the fileset.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.ExcludeElements">
            <summary>
            The items to exclude from the fileset.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.SetIncludesList">
            <summary>
            The files from which a list of patterns or files to include should 
            be obtained.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.IncludesFiles">
            <summary>
            The files from which a list of patterns or files to include should
            be obtained.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.ExcludesFiles">
            <summary>
            The files from which a list of patterns or files to exclude should
            be obtained.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.MostRecentLastWriteTimeFile">
            <summary>
            Determines the most recently modified file in the fileset (by LastWriteTime of the <see cref="T:System.IO.FileInfo"/>).
            </summary>
            <returns>
            The <see cref="T:System.IO.FileInfo"/> of the file that has the newest (closest to present) last write time.
            </returns>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.IsEverythingIncluded">
            <summary>
            Indicates whether or not every file and directory is included in
            the fileset list.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Exclude.Pattern">
            <summary>
            The pattern or file name to exclude.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Exclude.IfDefined">
            <summary>
            If <see langword="true" /> then the pattern will be excluded; 
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Exclude.UnlessDefined">
            <summary>
            Opposite of <see cref="P:NAnt.Core.Types.FileSet.Exclude.IfDefined"/>. If <see langword="false"/> 
            then the pattern will be excluded; otherwise, skipped. The default 
            is <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Include.AsIs">
            <summary>
            If <see langword="true"/> then the file name will be added to 
            the <see cref="T:NAnt.Core.Types.FileSet"/> without pattern matching or checking 
            if the file exists.  The default is <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Include.FromPath">
            <summary>
            If <see langword="true" /> then the file will be searched for 
            on the path. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Include.Pattern">
            <summary>
            The pattern or file name to include.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Include.IfDefined">
            <summary>
            If <see langword="true" /> then the pattern will be included; 
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.Include.UnlessDefined">
            <summary>
            Opposite of <see cref="P:NAnt.Core.Types.FileSet.Include.IfDefined"/>. If <see langword="false"/> 
            then the pattern will be included; otherwise, skipped. The default 
            is <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.ExcludesFile.Patterns">
            <summary>
            Gets the list of patterns in <see cref="P:NAnt.Core.Types.FileSet.ExcludesFile.PatternFile"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.ExcludesFile.IfDefined">
            <summary>
            If <see langword="true" /> then the patterns will be excluded; 
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.ExcludesFile.UnlessDefined">
            <summary>
            Opposite of <see cref="P:NAnt.Core.Types.FileSet.ExcludesFile.IfDefined"/>. If <see langword="false"/> 
            then the patterns will be excluded; otherwise, skipped. The default 
            is <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.ExcludesFile.PatternFile">
            <summary>
            The name of a file; each line of this file is taken to be a 
            pattern.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.IncludesFile.AsIs">
            <summary>
            If <see langword="true"/> then the patterns in the include file 
            will be added to the <see cref="T:NAnt.Core.Types.FileSet"/> without pattern 
            matching or checking if the file exists.  The default is 
            <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.IncludesFile.FromPath">
            <summary>
            If <see langword="true" /> then the patterns in the include file
            will be searched for on the path. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.IncludesFile.IfDefined">
            <summary>
            If <see langword="true" /> then the patterns will be included;
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FileSet.IncludesFile.UnlessDefined">
            <summary>
            Opposite of <see cref="P:NAnt.Core.Types.FileSet.IncludesFile.IfDefined"/>. If <see langword="false"/> 
            then the patterns will be included; otherwise, skipped. The default 
            is <see langword="false"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.DirSet.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.DirSet"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.DirSet.#ctor(NAnt.Core.Types.FileSet)">
            <summary>
            Copy constructor for <see cref="T:NAnt.Core.Types.FileSet"/>. Required in order to 
            assign references of <see cref="T:NAnt.Core.Types.FileSet"/> type where 
            <see cref="T:NAnt.Core.Types.DirSet"/> is used.
            </summary>
            <param name="fs">A <see cref="T:NAnt.Core.Types.FileSet"/> instance to create a <see cref="T:NAnt.Core.Types.DirSet"/> from.</param>
        </member>
        <member name="T:NAnt.Core.Types.EnvironmentVariable">
            <summary>
            Represents an environment variable.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariable.#ctor(System.String,System.String)">
            <summary>
            Initializes a <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> instance with the
            specified name and value.
            </summary>
            <param name="name">The name of the environment variable.</param>
            <param name="value">The value of the environment variable.</param>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariable.#ctor">
            <summary>
            Initializes a <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> instance.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariable.VariableName">
            <summary>
            The name of the environment variable.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariable.LiteralValue">
            <summary>
            The literal value for the environment variable.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariable.File">
            <summary>
            The value for a file-based environment variable. NAnt will convert 
            it to an absolute filename.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariable.Directory">
            <summary>
            The value for a directory-based environment variable. NAnt will 
            convert it to an absolute path.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariable.Path">
            <summary>
            The value for a PATH like environment variable. You can use 
            <c>:</c> or <c>;</c> as path separators and NAnt will convert it to 
            the platform's local conventions.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariable.PathSet">
            <summary>
            Sets a single environment variable and treats it like a PATH - 
            ensures the right separator for the local platform is used.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariable.Value">
            <summary>
            Gets the value of the environment variable.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariable.IfDefined">
            <summary>
            Indicates if the environment variable should be passed to the 
            external program.  If <see langword="true" /> then the environment
            variable will be passed;  otherwise, skipped. The default is 
            <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariable.UnlessDefined">
            <summary>
            Indicates if the environment variable should not be passed to the 
            external program.  If <see langword="false" /> then the environment
            variable will be passed;  otherwise, skipped. The default is 
            <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.EnvironmentSet">
            <summary>
            A set of environment variables.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentSet.Options">
            <summary>
            Environment variable to pass to a program.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentSet.EnvironmentVariables">
            <summary>
            Environment variable to pass to a program.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.EnvironmentVariableCollection">
            <summary>
            Contains a collection of <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.EnvironmentVariableCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.#ctor(NAnt.Core.Types.EnvironmentVariableCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.EnvironmentVariableCollection"/> class
            with the specified <see cref="T:NAnt.Core.Types.EnvironmentVariableCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.#ctor(NAnt.Core.Types.EnvironmentVariable[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.EnvironmentVariableCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.Add(NAnt.Core.Types.EnvironmentVariable)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.AddRange(NAnt.Core.Types.EnvironmentVariable[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.AddRange(NAnt.Core.Types.EnvironmentVariableCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.EnvironmentVariableCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Types.EnvironmentVariableCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.Contains(NAnt.Core.Types.EnvironmentVariable)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.Contains(System.String)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> with the specified
            value is in the collection.
            </summary>
            <param name="value">The argument value to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if a <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> with value 
            <paramref name="value"/> is found in the collection; otherwise, 
            <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.CopyTo(NAnt.Core.Types.EnvironmentVariable[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.IndexOf(NAnt.Core.Types.EnvironmentVariable)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Types.EnvironmentVariable"/>. If the <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.Insert(System.Int32,NAnt.Core.Types.EnvironmentVariable)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Types.EnvironmentVariableEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableCollection.Remove(NAnt.Core.Types.EnvironmentVariable)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariableCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariableCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> with the specified name.
            </summary>
            <param name="name">The name of the <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> to get.</param>
        </member>
        <member name="T:NAnt.Core.Types.EnvironmentVariableEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Types.EnvironmentVariable"/> elements of a <see cref="T:NAnt.Core.Types.EnvironmentVariableCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableEnumerator.#ctor(NAnt.Core.Types.EnvironmentVariableCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.EnvironmentVariableEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Types.EnvironmentVariableCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.EnvironmentVariableEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.EnvironmentVariableEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="P:NAnt.Core.Types.Formatter.Property">
            <summary>
            The name of the NAnt property to set.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Formatter.Pattern">
            <summary>
            The string pattern to use to format the property.
            </summary>       
        </member>
        <member name="P:NAnt.Core.Types.Formatter.IfDefined">
            <summary>
            Indicates if the formatter should be used to format the timestamp.
            If <see langword="true" /> then the formatter will be used; 
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Formatter.UnlessDefined">
            <summary>
            Indicates if the formatter should be not used to format the 
            timestamp. If <see langword="false" /> then the formatter will be 
            used; otherwise, skipped. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.FormatterCollection">
            <summary>
            Contains a collection of <see cref="T:NAnt.Core.Types.Formatter"/> elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.FormatterCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.#ctor(NAnt.Core.Types.FormatterCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.FormatterCollection"/> class
            with the specified <see cref="T:NAnt.Core.Types.FormatterCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.#ctor(NAnt.Core.Types.Formatter[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.FormatterCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.Types.Formatter"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.Add(NAnt.Core.Types.Formatter)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Types.Formatter"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Formatter"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.AddRange(NAnt.Core.Types.Formatter[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.Formatter"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Types.Formatter"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.AddRange(NAnt.Core.Types.FormatterCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.FormatterCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Types.FormatterCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.Contains(NAnt.Core.Types.Formatter)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.Formatter"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Formatter"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.CopyTo(NAnt.Core.Types.Formatter[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.IndexOf(NAnt.Core.Types.Formatter)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Types.Formatter"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Formatter"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Types.Formatter"/>. If the <see cref="T:NAnt.Core.Types.Formatter"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.Insert(System.Int32,NAnt.Core.Types.Formatter)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Types.Formatter"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Types.Formatter"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Types.FormatterEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.FormatterCollection.Remove(NAnt.Core.Types.Formatter)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Formatter"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Types.FormatterCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="T:NAnt.Core.Types.FormatterEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Types.Formatter"/> elements of a <see cref="T:NAnt.Core.Types.FormatterCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.FormatterEnumerator.#ctor(NAnt.Core.Types.FormatterCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.FormatterEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Types.FormatterCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Types.FormatterEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.FormatterEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.FormatterEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Types.ManagedExecution">
            <summary>
            Specifies the execution mode for managed applications.
            </summary>
            <remarks>
              <para>
              For backward compatibility, the following string values can also be
              used in build files:
              </para>
              <list type="table">
                <listheader>
                  <term>Value</term>
                  <description>Corresponding field</description>
                </listheader>
                <item>
                  <term>"true"</term>
                  <description><see cref="F:NAnt.Core.Types.ManagedExecution.Auto"/></description>
                </item>
                <item>
                  <term>"false"</term>
                  <description><see cref="F:NAnt.Core.Types.ManagedExecution.Default"/></description>
                </item>
              </list>
              <para>
              Even if set to <see cref="F:NAnt.Core.Types.ManagedExecution.Default"/>, the operating system can still
              run the program as a managed application.
              </para>
              <para>On Linux this can be done through <b>binfmt_misc</b>, while on
              Windows installing the .NET Framework redistributable caused managed
              applications to run on the MS CLR by default.
              </para>
            </remarks>
        </member>
        <member name="F:NAnt.Core.Types.ManagedExecution.Default">
            <summary>
            Do not threat the program as a managed application.
            </summary>
        </member>
        <member name="F:NAnt.Core.Types.ManagedExecution.Auto">
            <summary>
            Leave it up to the CLR to determine which specific version of
            the CLR will be used to run the application.
            </summary>
        </member>
        <member name="F:NAnt.Core.Types.ManagedExecution.Strict">
            <summary>
            Forces an application to run against the currently targeted
            version of a given CLR.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.ManagedExecutionConverter">
            <summary>
            Specialized <see cref="T:System.ComponentModel.EnumConverter"/> that also supports 
            case-insensitive conversion of "true" to 
            <see cref="F:NAnt.Core.Types.ManagedExecution.Auto"/> and "false" to
            <see cref="F:NAnt.Core.Types.ManagedExecution.Default"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.ManagedExecutionConverter.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.ManagedExecutionConverter"/>
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.ManagedExecutionConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
            <summary>
            Converts the given object to the type of this converter, using the 
            specified context and culture information.
            </summary>
            <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext"/> that provides a format context.</param>
            <param name="culture">A <see cref="T:System.Globalization.CultureInfo"/> object. If a <see langword="null"/> is passed, the current culture is assumed.</param>
            <param name="value">The <see cref="T:System.Object"/> to convert.</param>
            <returns>
            An <see cref="T:System.Object"/> that represents the converted value.
            </returns>
        </member>
        <member name="T:NAnt.Core.Types.Option">
            <summary>
            Represents an option.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.Option.#ctor(System.String,System.String)">
            <summary>
            name, value constructor
            </summary>
            <param name="name"></param>
            <param name="value"></param>
        </member>
        <member name="M:NAnt.Core.Types.Option.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Option.OptionName">
            <summary>
            Name of the option.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Option.Value">
            <summary>
            Value of the option. The default is <see langword="null" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Option.IfDefined">
            <summary>
            Indicates if the option should be passed to the task. 
            If <see langword="true" /> then the option will be passed; 
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Option.UnlessDefined">
            <summary>
            Indicates if the option should not be passed to the task.
            If <see langword="false" /> then the option will be passed; 
            otherwise, skipped. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.OptionCollection">
            <summary>
            Contains a collection of <see cref="T:NAnt.Core.Types.Option"/> elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.OptionCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.#ctor(NAnt.Core.Types.OptionCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.OptionCollection"/> class
            with the specified <see cref="T:NAnt.Core.Types.OptionCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.#ctor(NAnt.Core.Types.Option[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.OptionCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.Types.Option"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.Add(NAnt.Core.Types.Option)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Types.Option"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Option"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.AddRange(NAnt.Core.Types.Option[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.Option"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Types.Option"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.AddRange(NAnt.Core.Types.OptionCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.OptionCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Types.OptionCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.Contains(NAnt.Core.Types.Option)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.Option"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Option"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.Contains(System.String)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.Option"/> for the specified 
            task is in the collection.
            </summary>
            <param name="taskName">The name of task for which the <see cref="T:NAnt.Core.Types.Option"/> should be located in the collection.</param> 
            <returns>
            <see langword="true"/> if a <see cref="T:NAnt.Core.Types.Option"/> for the specified 
            task is found in the collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.CopyTo(NAnt.Core.Types.Option[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.IndexOf(NAnt.Core.Types.Option)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Types.Option"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Option"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Types.Option"/>. If the <see cref="T:NAnt.Core.Types.Option"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.Insert(System.Int32,NAnt.Core.Types.Option)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Types.Option"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Types.Option"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Types.OptionEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.OptionCollection.Remove(NAnt.Core.Types.Option)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Option"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Types.OptionCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="P:NAnt.Core.Types.OptionCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.Types.Option"/> with the specified name.
            </summary>
            <param name="name">The name of the option that should be located in the collection.</param> 
        </member>
        <member name="T:NAnt.Core.Types.OptionEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Types.Option"/> elements of a <see cref="T:NAnt.Core.Types.OptionCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.OptionEnumerator.#ctor(NAnt.Core.Types.OptionCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.OptionEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Types.OptionCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Types.OptionEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.OptionEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.OptionEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Types.PathElement">
            <summary>
            Represents a nested path element.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PathElement.File">
            <summary>
            The name of a file to add to the path. Will be replaced with 
            the absolute path of the file.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PathElement.Directory">
            <summary>
            The name of a directory to add to the path. Will be replaced with 
            the absolute path of the directory.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PathElement.Path">
            <summary>
            A string that will be treated as a path-like string. You can use
            <c>:</c> or <c>;</c> as path separators and NAnt will convert it 
            to the platform's local conventions, while resolving references
            to environment variables.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PathElement.IfDefined">
            <summary>
            If <see langword="true" /> then the entry will be added to the
            path; otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PathElement.UnlessDefined">
            <summary>
            Opposite of <see cref="P:NAnt.Core.Types.PathElement.IfDefined"/>. If <see langword="false"/> 
            then the entry will be added to the path; otherwise, skipped. 
            The default is <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PathElement.Parts">
            <summary>
            Gets the parts of a path represented by this element.
            </summary>
            <value>
            A <see cref="T:System.Collections.Specialized.StringCollection"/> containing the parts of a path 
            represented by this element.
            </value>
        </member>
        <member name="T:NAnt.Core.Types.PathSet">
            <summary>
            <para>
            Paths are groups of files and/or directories that need to be passed as a single
            unit. The order in which parts of the path are specified in the build file is 
            retained, and duplicate parts are automatically suppressed.
            </para>
            </summary>
            <example>
              <para>
              Define a global <c>&lt;path&gt;</c> that can be referenced by other
              tasks or types.
              </para>
              <code>
                <![CDATA[
                    <path id="includes-path">
                        <pathelement path="%INCLUDE%" />
                        <pathelement dir="${build.dir}/include" />
                    </path>
                ]]>
              </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Types.PathSet.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.PathSet"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.PathSet.#ctor(NAnt.Core.Project,System.String)">
            <summary>
            Invoked by <see cref="T:NAnt.Core.Element.AttributeConfigurator"/> for build 
            attributes with an underlying <see cref="T:NAnt.Core.Types.PathSet"/> type.
            </summary>
            <param name="project">The <see cref="T:NAnt.Core.Project"/> to be used to resolve relative paths.</param>
            <param name="path">The string representing a path.</param>
        </member>
        <member name="M:NAnt.Core.Types.PathSet.ToString">
            <summary>
            Returns a textual representation of the path, which can be used as
            PATH environment variable definition.
            </summary>
            <returns>
            A textual representation of the path.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.PathSet.AddPath(NAnt.Core.Types.PathSet)">
            <summary>
            Defines a set of path elements to add to the current path.
            </summary>
            <param name="path">The <see cref="T:NAnt.Core.Types.PathSet"/> to add.</param>
        </member>
        <member name="M:NAnt.Core.Types.PathSet.AddPathElement(NAnt.Core.Types.PathElement)">
            <summary>
            Defines a path element to add to the current path.
            </summary>
            <param name="pathElement">The <see cref="T:NAnt.Core.Types.PathElement"/> to add.</param>
        </member>
        <member name="M:NAnt.Core.Types.PathSet.GetElements">
            <summary>
            Returns all path elements defined by this path object.
            </summary>
            <returns>
            A list of path elements.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.PathSet.TranslatePath(NAnt.Core.Project,System.String)">
            <summary>
            Splits a PATH (with ; or : as separators) into its parts, while 
            resolving references to environment variables.
            </summary>
            <param name="project">The <see cref="T:NAnt.Core.Project"/> to be used to resolve relative paths.</param>
            <param name="source">The path to translate.</param>
            <returns>
            A PATH split up its parts, with references to environment variables
            resolved and duplicate entries removed.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.Pattern.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.Pattern"/> class.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Pattern.PatternName">
            <summary>
            The name pattern to include/exclude.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Pattern.IfDefined">
            <summary>
            If <see langword="true" /> then the pattern will be used; 
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Pattern.UnlessDefined">
            <summary>
            If <see langword="false" /> then the pattern will be used;
            otherwise, skipped. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.PatternCollection">
            <summary>
            Contains a collection of <see cref="T:NAnt.Core.Types.Pattern"/> elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.PatternCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.Clear">
            <summary>
            Removes all items from the <see cref="T:NAnt.Core.Types.PatternCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.Add(NAnt.Core.Types.Pattern)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Types.Pattern"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Pattern"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.AddRange(NAnt.Core.Types.Pattern[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.Pattern"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Types.Pattern"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.AddRange(NAnt.Core.Types.PatternCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.PatternCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Types.PatternCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.Contains(NAnt.Core.Types.Pattern)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.Pattern"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Pattern"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.CopyTo(NAnt.Core.Types.Pattern[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array,
            starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.IndexOf(NAnt.Core.Types.Pattern)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Types.Pattern"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Pattern"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Types.Pattern"/>. If the <see cref="T:NAnt.Core.Types.Pattern"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.Insert(System.Int32,NAnt.Core.Types.Pattern)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Types.Pattern"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Types.Pattern"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Types.PatternEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.PatternCollection.Remove(NAnt.Core.Types.Pattern)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.Pattern"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Types.PatternCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="T:NAnt.Core.Types.PatternEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Types.Pattern"/> elements of a <see cref="T:NAnt.Core.Types.PatternCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.PatternEnumerator.#ctor(NAnt.Core.Types.PatternCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.PatternEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Types.PatternCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Types.PatternEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.PatternEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PatternEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="P:NAnt.Core.Types.PatternEnumerator.System#Collections#IEnumerator#Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Types.PatternSet">
            <summary>
            A set of patterns, mostly used to include or exclude certain files.
            </summary>
            <remarks>
              <para>
              The individual patterns support <c>if</c> and <c>unless</c> attributes
              to specify that the element should only be used if or unless a given
              condition is met.
              </para>
              <para>
              The <see cref="P:NAnt.Core.Types.PatternSet.IncludesFile"/> and <see cref="P:NAnt.Core.Types.PatternSet.ExcludesFile"/>
              elements load patterns from a file. When the file is a relative path,
              it will be resolved relative to the project base directory in which
              the patternset is defined. Each line of this file is taken to be a
              pattern.
              </para>
              <para>
              The number sign (#) as the first non-blank character in a line denotes
              that all text following it is a comment:
              </para>
              <code>
                <![CDATA[
                   EventLog.cs
                   # requires Mono.Posix
                   SysLogEventLogImpl.cs
                   # uses the win32 eventlog API
                   Win32EventLogImpl.cs
                ]]>
              </code>
              <para>
              Patterns can be grouped to sets, and later be referenced by their
              <see cref="P:NAnt.Core.DataTypeBase.ID"/>.
              </para>
              <para>
              When used as a standalone element (global type), any properties that
              are referenced will be resolved when the definition is processed, not
              when it actually used. Passing a reference to a nested build file 
              will not cause the properties to be re-evaluated.
              </para>
              <para>
              To improve reuse of globally defined patternsets, avoid referencing
              any properties altogether.
              </para>
            </remarks>
            <example>
              <para>
              Define a set of patterns that matches all .cs files that do not contain
              the text <c>Test</c> in their name.
              </para>
              <code>
                <![CDATA[
                    <patternset id="non.test.sources">
                        <include name="**/*.cs" />
                        <exclude name="**/*Test*" />
                    </patternset>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Define two sets. One holding C# sources, and one holding VB sources.
              Both sets only include test sources when the <c>test</c> property is
              set. A third set combines both C# and VB sources.
              </para>
              <code>
                <![CDATA[
                    <patternset id="cs.sources">
                        <include name="src/**/*.cs" />
                        <include name="test/**/*.cs" if=${property::exist('test')}" />
                    </patternset>
                    
                    <patternset id="vb.sources">
                        <include name="src/**/*.vb" />
                        <include name="test/**/*.vb" if=${property::exist('test')}" />
                    </patternset>
                    
                    <patternset id="all.sources">
                        <patternset refid="cs.sources" />
                        <patternset refid="vb.sources" />
                    </patternset>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Define a set from patterns in a file.
              </para>
              <code>
                <![CDATA[
                    <patternset id="sources">
                        <includesfile name="test.sources" />
                        <includesfile name="non.test.sources" />
                    </patternset>
                ]]>
              </code>
            </example>
            <example>
              <para>
              Defines a patternset with patterns that are loaded from an external
              file, and shows the behavior when that patternset is passed as a
              reference to a nested build script.
              </para>
              <para>
              External file "c:\foo\build\service.lst" holding patterns
              of source files to include for the Foo.Service assembly:
              </para>
              <code>
                <![CDATA[
                    AssemblyInfo.cs
                    *Channel.cs
                    ServiceFactory.cs]]></code>
              <para>
              Main build script located in "c:\foo\default.build":
              </para>
              <code>
                <![CDATA[
                    <project name="main" default="build">
                        <property name="build.debug" value="true" />
                    
                        <patternset id="service.sources">
                            <include name="TraceListener.cs" if="${build.debug}" />
                            <includesfile name="build/service.lst" />
                        </patternset>
                        
                        <property name="build.debug" value="false" />
                        
                        <target name="build">
                            <nant buildfile="service/default.build" inheritrefs="true" />
                        </target>
                    </project>]]></code>
              <para>
              Nested build script located in "c:\foo\services\default.build"
              which uses the patternset to feed sources files to the C# compiler:
              </para>
              <code>
                <![CDATA[
                    <project name="service" default="build">
                        <target name="build">
                            <csc output="../bin/Foo.Service.dll" target="library">
                                <fileset basedir="src">
                                    <patternset refid="service.sources" />
                                </fileset>
                            </csc>
                        </target>
                    </project>]]></code>
              <para>
              At the time when the patternset is used in the "service"
              build script, the following source files in "c:\foo\services\src"
              match the defined patterns:
              </para>
              <code>
                <![CDATA[
                    AssemblyInfo.cs
                    MsmqChannel.cs
                    SmtpChannel.cs
                    ServiceFactory.cs
                    TraceListener.cs]]></code>
              <para>
              You should have observed that:
              </para>
              <list type="bullet">
                <item>
                    <description>
                    although the patternset is used from the "service"
                    build script, the path to the external file is resolved relative
                    to the base directory of the "main" build script in
                    which the patternset is defined.
                    </description>
                </item>
                <item>
                    <description>
                    the "TraceListener.cs" file is included, even though 
                    the "build.debug" property was changed to <b>false</b>
                    after the patternset was defined (but before it was passed to
                    the nested build, and used).
                    </description>
                </item>
              </list>
            </example>
            <seealso cref="T:NAnt.Core.Types.FileSet"/>
        </member>
        <member name="M:NAnt.Core.Types.PatternSet.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.PatternSet"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.PatternSet.Append(NAnt.Core.Types.PatternSet)">
            <summary>
            Adds a nested set of patterns, or references other standalone 
            patternset.
            </summary>
            <param name="patternSet">The <see cref="T:NAnt.Core.Types.PatternSet"/> to add.</param>
        </member>
        <member name="P:NAnt.Core.Types.PatternSet.Include">
            <summary>
            Defines a single pattern for files to include.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PatternSet.IncludesFile">
            <summary>
            Loads multiple patterns of files to include from a given file, set
            using the <see cref="P:NAnt.Core.Types.Pattern.PatternName"/> parameter.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PatternSet.Exclude">
            <summary>
            Defines a single pattern for files to exclude.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.PatternSet.ExcludesFile">
            <summary>
            Loads multiple patterns of files to exclude from a given file, set
            using the <see cref="P:NAnt.Core.Types.Pattern.PatternName"/> parameter.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.Proxy">
            <summary>
            Contains HTTP proxy settings used to process requests to Internet 
            resources.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.Proxy.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.Proxy"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.Proxy.GetWebProxy">
            <summary>
            Gets a <see cref="T:System.Net.WebProxy"/> instance representing the current
            <see cref="T:NAnt.Core.Types.Proxy"/>.
            </summary>
            <returns>
            A <see cref="T:System.Net.WebProxy"/> instance representing the current 
            <see cref="T:NAnt.Core.Types.Proxy"/>, or <see langword="GlobalProxySelection.Select"/> 
            if this proxy should not be used to connect to the external resource.
            </returns>
        </member>
        <member name="P:NAnt.Core.Types.Proxy.Host">
            <summary>
            The name of the proxy host. 
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Proxy.Port">
            <summary>
            The port number on <see cref="P:NAnt.Core.Types.Proxy.Host"/> to use. 
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Proxy.BypassOnLocal">
            <summary>
            Specifies whether to bypass the proxy server for local addresses.
            The default is <see langword="false" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Proxy.Credentials">
            <summary>
            The credentials to submit to the proxy server for authentication.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Proxy.IfDefined">
            <summary>
            Indicates if the proxy should be used to connect to the external 
            resource. If <see langword="true" /> then the proxy will be used; 
            otherwise, not. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Proxy.UnlessDefined">
            <summary>
            Indicates if the proxy should not be used to connect to the external
            resource. If <see langword="false" /> then the proxy will be used;
            otherwise, not. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.RawXml">
            <summary>
            Represents an element of which the XML is processed by its parent task 
            or type.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.RawXml.Xml">
            <summary>
            Gets the XML that this element represents.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.RawXml.CustomXmlProcessing">
            <summary>
            Gets a value indicating whether the element is performing additional
            processing using the <see cref="T:System.Xml.XmlNode"/> that was use to 
            initialize the element.
            </summary>
            <value>
            <see langword="true"/>, as the XML that represents this build 
            element is processed by the containing task or type.
            </value>
        </member>
        <member name="T:NAnt.Core.Types.Token">
            <summary>
            ReplaceTokens filter token.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Token.Key">
            <summary>
            Token to be replaced.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Token.Value">
            <summary>
            New value of token.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Token.IfDefined">
            <summary>
            Indicates if the token should be used to replace values. 
            If <see langword="true" /> then the token will be used; 
            otherwise, not. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.Token.UnlessDefined">
            <summary>
            Indicates if the token should not be used to replace values.
            If <see langword="false" /> then the token will be used;
            otherwise, not. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.XmlNamespace">
            <summary>
            Represents an XML namespace.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XmlNamespace.Prefix">
            <summary>
            The prefix to associate with the namespace.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XmlNamespace.Uri">
            <summary>
            The associated XML namespace URI.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XmlNamespace.IfDefined">
            <summary>
            Indicates if the namespace should be added to the <see cref="T:System.Xml.XmlNamespaceManager"/>.
            If <see langword="true"/> then the namespace will be added; 
            otherwise, skipped. The default is <see langword="true"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XmlNamespace.UnlessDefined">
            <summary>
            Indicates if the namespace should not be added to the <see cref="T:System.Xml.XmlNamespaceManager"/>.
            list. If <see langword="false"/> then the parameter will be 
            added; otherwise, skipped. The default is <see langword="false"/>.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.XmlNamespaceCollection">
            <summary>
            Contains a collection of <see cref="T:NAnt.Core.Types.XmlNamespace"/> elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XmlNamespaceCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.#ctor(NAnt.Core.Types.XmlNamespaceCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XmlNamespaceCollection"/> class
            with the specified <see cref="T:NAnt.Core.Types.XmlNamespaceCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.#ctor(NAnt.Core.Types.XmlNamespace[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XmlNamespaceCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.Types.XmlNamespace"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.Add(NAnt.Core.Types.XmlNamespace)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Types.XmlNamespace"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XmlNamespace"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.AddRange(NAnt.Core.Types.XmlNamespace[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.XmlNamespace"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Types.XmlNamespace"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.AddRange(NAnt.Core.Types.XmlNamespaceCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.XmlNamespaceCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Types.XmlNamespaceCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.Contains(NAnt.Core.Types.XmlNamespace)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.XmlNamespace"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XmlNamespace"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.Contains(System.String)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.XmlNamespace"/> with the specified
            value is in the collection.
            </summary>
            <param name="value">The argument value to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if a <see cref="T:NAnt.Core.Types.XmlNamespace"/> with 
            value <paramref name="value"/> is found in the collection; otherwise, 
            <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.CopyTo(NAnt.Core.Types.XmlNamespace[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.IndexOf(NAnt.Core.Types.XmlNamespace)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Types.XmlNamespace"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XmlNamespace"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Types.XmlNamespace"/>. If the <see cref="T:NAnt.Core.Types.XmlNamespace"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.Insert(System.Int32,NAnt.Core.Types.XmlNamespace)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Types.XmlNamespace"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Types.XmlNamespace"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Types.XmlNamespaceEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceCollection.Remove(NAnt.Core.Types.XmlNamespace)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XmlNamespace"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Types.XmlNamespaceCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="P:NAnt.Core.Types.XmlNamespaceCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.Types.XmlNamespace"/> with the specified prefix.
            </summary>
            <param name="value">The prefix of the <see cref="T:NAnt.Core.Types.XmlNamespace"/> to get.</param>
        </member>
        <member name="T:NAnt.Core.Types.XmlNamespaceEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Types.XmlNamespace"/> elements of a <see cref="T:NAnt.Core.Types.XmlNamespaceCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceEnumerator.#ctor(NAnt.Core.Types.XmlNamespaceCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XmlNamespaceEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Types.XmlNamespaceCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XmlNamespaceEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XmlNamespaceEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Types.XsltExtensionObject">
            <summary>
            Represents an XSLT extension object. The object should have a default
            parameterless constructor and the return value should be one of the 
            four basic XPath data types of number, string, Boolean or node set.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObject.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> 
            class.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XsltExtensionObject.NamespaceUri">
            <summary>
            The namespace URI to associate with the extension object.
            </summary>
            <value>
            The namespace URI to associate with the extension object, or 
            <see cref="F:System.String.Empty"/> if not set.
            </value>
        </member>
        <member name="P:NAnt.Core.Types.XsltExtensionObject.TypeName">
            <summary>
            The full type name of the XSLT extension object.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XsltExtensionObject.AssemblyPath">
            <summary>
            The assembly which contains the XSLT extension object.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XsltExtensionObject.IfDefined">
            <summary>
            Indicates if the extension object should be added to the XSLT argument
            list. If <see langword="true" /> then the extension object will be
            added; otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XsltExtensionObject.UnlessDefined">
            <summary>
            Indicates if the extension object should not be added to the XSLT argument
            list. If <see langword="false" /> then the extension object will be 
            added; otherwise, skipped. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.XsltExtensionObjectCollection">
            <summary>
            Contains a collection of <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.#ctor">
            <summary>
            Initializes a new instance of the
            <see cref="T:NAnt.Core.Types.XsltExtensionObjectCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.#ctor(NAnt.Core.Types.XsltExtensionObjectCollection)">
            <summary>
            Initializes a new instance of the
            <see cref="T:NAnt.Core.Types.XsltExtensionObjectCollection"/> class with the
            specified <see cref="T:NAnt.Core.Types.XsltExtensionObjectCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.#ctor(NAnt.Core.Types.XsltExtensionObject[])">
            <summary>
            Initializes a new instance of the
            <see cref="T:NAnt.Core.Types.XsltExtensionObjectCollection"/> class with the
            specified array of <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.Add(NAnt.Core.Types.XsltExtensionObject)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> to be added
            to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.AddRange(NAnt.Core.Types.XsltExtensionObject[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> array to the
            end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Types.XsltExtensionObject"/>
            elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.AddRange(NAnt.Core.Types.XsltExtensionObjectCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.XsltExtensionObjectCollection"/>
            to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Types.XsltExtensionObjectCollection"/>
            to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.Contains(NAnt.Core.Types.XsltExtensionObject)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> is in the
            collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> to locate
            in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.Contains(System.String)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> with the
            specified value is in the collection.
            </summary>
            <param name="value">The argument value to locate in the
            collection.</param> 
            <returns>
            <see langword="true"/> if a <see cref="T:NAnt.Core.Types.XsltExtensionObject"/>
            with value <paramref name="value"/> is found in the collection;
            otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.CopyTo(NAnt.Core.Types.XsltExtensionObject[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array,
            starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the
            destination of the elements copied from the collection. The array
            must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/>
            at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.IndexOf(NAnt.Core.Types.XsltExtensionObject)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Types.XsltExtensionObject"/>
            object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> object for
            which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Types.XsltExtensionObject"/>. If the
            <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> is not currently a member of the
            collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.Insert(System.Int32,NAnt.Core.Types.XsltExtensionObject)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> into the collection at
            the specified index.
            </summary>
            <param name="index">The zero-based index at which
            <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> to
            insert.</param>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Types.XsltExtensionObjectEnumerator"/> for the entire
            collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectCollection.Remove(NAnt.Core.Types.XsltExtensionObject)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> to remove
            from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Types.XsltExtensionObjectCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get
            or set.</param>
        </member>
        <member name="P:NAnt.Core.Types.XsltExtensionObjectCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> with the specified name.
            </summary>
            <param name="value">The name of the <see cref="T:NAnt.Core.Types.XsltExtensionObject"/>
            to get.</param>
        </member>
        <member name="T:NAnt.Core.Types.XsltExtensionObjectEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Types.XsltExtensionObject"/> elements of a
            <see cref="T:NAnt.Core.Types.XsltExtensionObjectCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectEnumerator.#ctor(NAnt.Core.Types.XsltExtensionObjectCollection)">
            <summary>
            Initializes a new instance of the
            <see cref="T:NAnt.Core.Types.XsltExtensionObjectEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Types.XsltExtensionObjectCollection"/>.
            </summary>
            <param name="arguments">The collection that should be
            enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltExtensionObjectEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XsltExtensionObjectEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Types.XsltParameter">
            <summary>
            Represents an XSLT parameter.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameter.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XsltParameter"/> 
            class.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XsltParameter.ParameterName">
            <summary>
            The name of the XSLT parameter.
            </summary>
            <value>
            The name of the XSLT parameter, or <see cref="F:System.String.Empty"/> if 
            not set.
            </value>
        </member>
        <member name="P:NAnt.Core.Types.XsltParameter.NamespaceUri">
            <summary>
            The namespace URI to associate with the parameter.
            </summary>
            <value>
            The namespace URI to associate with the parameter, or 
            <see cref="F:System.String.Empty"/> if not set.
            </value>
        </member>
        <member name="P:NAnt.Core.Types.XsltParameter.Value">
            <summary>
            The value of the XSLT parameter.
            </summary>
            <value>
            The value of the XSLT parameter, or <see cref="F:System.String.Empty"/> if 
            not set.
            </value>
        </member>
        <member name="P:NAnt.Core.Types.XsltParameter.IfDefined">
            <summary>
            Indicates if the parameter should be added to the XSLT argument list.
            If <see langword="true" /> then the parameter will be added; 
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XsltParameter.UnlessDefined">
            <summary>
            Indicates if the parameter should not be added to the XSLT argument
            list. If <see langword="false" /> then the parameter will be 
            added; otherwise, skipped. The default is <see langword="false" />.
            </summary>
        </member>
        <member name="T:NAnt.Core.Types.XsltParameterCollection">
            <summary>
            Contains a collection of <see cref="T:NAnt.Core.Types.XsltParameter"/> elements.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XsltParameterCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.#ctor(NAnt.Core.Types.XsltParameterCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XsltParameterCollection"/> class
            with the specified <see cref="T:NAnt.Core.Types.XsltParameterCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.#ctor(NAnt.Core.Types.XsltParameter[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XsltParameterCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.Types.XsltParameter"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.Add(NAnt.Core.Types.XsltParameter)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Types.XsltParameter"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltParameter"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.AddRange(NAnt.Core.Types.XsltParameter[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.XsltParameter"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Types.XsltParameter"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.AddRange(NAnt.Core.Types.XsltParameterCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Types.XsltParameterCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Types.XsltParameterCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.Contains(NAnt.Core.Types.XsltParameter)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.XsltParameter"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltParameter"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.Contains(System.String)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Types.XsltParameter"/> with the specified
            value is in the collection.
            </summary>
            <param name="value">The argument value to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if a <see cref="T:NAnt.Core.Types.XsltParameter"/> with 
            value <paramref name="value"/> is found in the collection; otherwise, 
            <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.CopyTo(NAnt.Core.Types.XsltParameter[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.IndexOf(NAnt.Core.Types.XsltParameter)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Types.XsltParameter"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltParameter"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Types.XsltParameter"/>. If the <see cref="T:NAnt.Core.Types.XsltParameter"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.Insert(System.Int32,NAnt.Core.Types.XsltParameter)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Types.XsltParameter"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltParameter"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Types.XsltParameterEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterCollection.Remove(NAnt.Core.Types.XsltParameter)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Types.XsltParameter"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Types.XsltParameterCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="P:NAnt.Core.Types.XsltParameterCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.Types.XsltParameter"/> with the specified name.
            </summary>
            <param name="value">The name of the <see cref="T:NAnt.Core.Types.XsltParameter"/> to get.</param>
        </member>
        <member name="T:NAnt.Core.Types.XsltParameterEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Types.XsltParameter"/> elements of a <see cref="T:NAnt.Core.Types.XsltParameterCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterEnumerator.#ctor(NAnt.Core.Types.XsltParameterCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Types.XsltParameterEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Types.XsltParameterCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Types.XsltParameterEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Types.XsltParameterEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Util.AssemblyResolver">
            <summary> 
            Resolves assemblies by caching assemblies that were loaded.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.AssemblyResolver.#ctor">
            <summary> 
            Initializes an instanse of the <see cref="T:NAnt.Core.Util.AssemblyResolver"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.AssemblyResolver.#ctor(NAnt.Core.Task)">
            <summary> 
            Initializes an instanse of the <see cref="T:NAnt.Core.Util.AssemblyResolver"/> 
            class in the context of the given <see cref="T:NAnt.Core.Task"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.AssemblyResolver.Attach">
            <summary> 
            Installs the assembly resolver by hooking up to the 
            <see cref="E:System.AppDomain.AssemblyResolve"/> event.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.AssemblyResolver.Detach">
            <summary> 
            Uninstalls the assembly resolver.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.AssemblyResolver.AssemblyResolve(System.Object,System.ResolveEventArgs)">
            <summary> 
            Resolves an assembly not found by the system using the assembly 
            cache.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="args">A <see cref="T:System.ResolveEventArgs"/> that contains the event data.</param>
            <returns>
            The loaded assembly, or <see langword="null"/> if not found.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.AssemblyResolver.AssemblyLoad(System.Object,System.AssemblyLoadEventArgs)">
            <summary>
            Occurs when an assembly is loaded. The loaded assembly is added 
            to the assembly cache.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="args">An <see cref="T:System.AssemblyLoadEventArgs"/> that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.Util.AssemblyResolver.Log(NAnt.Core.Level,System.String,System.Object[])">
            <summary>
            Logs a message with the given priority.
            </summary>
            <param name="messageLevel">The message priority at which the specified message is to be logged.</param>
            <param name="message">The message to log, containing zero or more format items.</param>
            <param name="args">An <see cref="T:System.Object"/> array containing zero or more objects to format.</param>
            <remarks>
            The actual logging is delegated to the <see cref="T:NAnt.Core.Task"/> in which 
            the <see cref="T:NAnt.Core.Util.AssemblyResolver"/> is executing 
            </remarks>
        </member>
        <member name="F:NAnt.Core.Util.AssemblyResolver._assemblyCache">
            <summary>
            Holds the loaded assemblies.
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.AssemblyResolver._task">
            <summary>
            Holds the <see cref="T:NAnt.Core.Task"/> in which the <see cref="T:NAnt.Core.Util.AssemblyResolver"/> 
            is executing.
            </summary>
            <value>
            The <see cref="T:NAnt.Core.Task"/> in which the <see cref="T:NAnt.Core.Util.AssemblyResolver"/> 
            is executing or <see langword="null"/> if the <see cref="T:NAnt.Core.Util.AssemblyResolver"/>
            is not executing in the context of a <see cref="T:NAnt.Core.Task"/>.
            </value>
        </member>
        <member name="T:NAnt.Core.Util.CommandLineArgument">
            <summary>
            Represents a valid command-line argument.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgument.Finish(System.Object)">
            <summary>
            Sets the value of the argument on the specified object.
            </summary>
            <param name="destination">The object on which the value of the argument should be set.</param>
            <exception cref="T:NAnt.Core.Util.CommandLineArgumentException">The argument is required and no value was specified.</exception>
            <exception cref="T:System.NotSupportedException">
            <para>
            The matching property is collection-based, but is not initialized 
            and cannot be written to.
            </para>
            <para>-or-</para>
            <para>
            The matching property is collection-based, but has no strongly-typed
            Add method.
            </para>
            <para>-or-</para>
            <para>
            The matching property is collection-based, but the signature of the 
            Add method is not supported.
            </para>
            </exception>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgument.SetValue(System.String)">
            <summary>
            Assigns the specified value to the argument.
            </summary>
            <param name="value">The value that should be assigned to the argument.</param>
            <exception cref="T:NAnt.Core.Util.CommandLineArgumentException">
            <para>Duplicate argument.</para>
            <para>-or-</para>
            <para>Invalid value.</para>
            </exception>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgument.IsNameValueCollectionType(System.Type)">
            <summary>
            Indicates whether the specified <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> is a 
            <see cref="T:System.Collections.Specialized.NameValueCollection"/>.
            </summary>
            <value>
            <see langword="true"/> if <paramref name="type"/> can be assigned
            to <see cref="T:System.Collections.Specialized.NameValueCollection"/>; otherwise, <see langword="false"/>.
            </value>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgument.IsCollectionType(System.Type)">
            <summary>
            Indicates whether the specified <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> is collection-based.
            </summary>
            <value>
            <see langword="true"/> if <paramref name="type"/> can be assigned
            to <see cref="T:System.Collections.ICollection"/> and is not backed by a <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/>
            that can be assigned to <see cref="T:System.Collections.Specialized.NameValueCollection"/>; 
            otherwise, <see langword="false"/>.
            </value>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgument.IsArrayType(System.Type)">
            <summary>
            Indicates whether the specified <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> is an array.
            </summary>
            <value>
            <see langword="true"/> if <paramref name="type"/> is an array;
            otherwise, <see langword="false"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.Property">
            <summary>
            Gets the property that backs the argument.
            </summary>
            <value>
            The property that backs the arguments.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.ValueType">
            <summary>
            Gets the underlying <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> of the argument.
            </summary>
            <value>
            The underlying <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> of the argument.
            </value>
            <remarks>
            If the <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> of the argument is a collection type,
            this property will returns the underlying type of that collection.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.LongName">
            <summary>
            Gets the long name of the argument.
            </summary>
            <value>The long name of the argument.</value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.ShortName">
            <summary>
            Gets the short name of the argument.
            </summary>
            <value>The short name of the argument.</value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.Description">
            <summary>
            Gets the description of the argument.
            </summary>
            <value>The description of the argument.</value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.IsRequired">
            <summary>
            Gets a value indicating whether the argument is required.
            </summary>
            <value>
            <see langword="true" /> if the argument is required; otherwise, 
            <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.SeenValue">
            <summary>
            Gets a value indicating whether a mathing command-line argument 
            was already found.
            </summary>
            <value>
            <see langword="true" /> if a matching command-line argument was 
            already found; otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.AllowMultiple">
            <summary>
            Gets a value indicating whether the argument can be specified multiple
            times.
            </summary>
            <value>
            <see langword="true" /> if the argument may be specified multiple 
            times; otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.Unique">
            <summary>
            Gets a value indicating whether the argument can only be specified once
            with a certain value.
            </summary>
            <value>
            <see langword="true" /> if the argument should always have a unique 
            value; otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.Type">
            <summary>
            Gets the <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> of the property to which the argument
            is applied.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> of the property to which the argument is
            applied.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.IsCollection">
            <summary>
            Gets a value indicating whether the argument is collection-based.
            </summary>
            <value>
            <see langword="true"/> if the argument is backed by a <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> 
            that can be assigned to <see cref="T:System.Collections.ICollection"/> and is not backed 
            by a <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/> that can be assigned to 
            <see cref="T:System.Collections.Specialized.NameValueCollection"/>; otherwise, <see langword="false"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.IsNameValueCollection">
            <summary>
            Gets a value indicating whether the argument is a set of name/value
            pairs.
            </summary>
            <value>
            <see langword="true"/> if the argument is backed by a <see cref="P:NAnt.Core.Util.CommandLineArgument.Type"/>
            that can be assigned to <see cref="T:System.Collections.Specialized.NameValueCollection"/>; otherwise, 
            <see langword="false"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.IsArray">
            <summary>
            Gets a value indicating whether the argument is array-based.
            </summary>
            <value>
            <see langword="true" /> if the argument is backed by an array; 
            otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.IsDefault">
            <summary>
            Gets a value indicating whether the argument is the default argument.
            </summary>
            <value>
            <see langword="true" /> if the argument is the default argument; 
            otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgument.IsExclusive">
            <summary>
            Gets a value indicating whether the argument cannot be combined with
            other arguments.
            </summary>
            <value>
            <see langword="true" /> if the argument cannot be combined with other 
            arguments; otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="T:NAnt.Core.Util.CommandLineArgumentAttribute">
            <summary>
            Allows control of command line parsing.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentAttribute.#ctor(NAnt.Core.Util.CommandLineArgumentTypes)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentAttribute"/> class
            with the specified argument type.
            </summary>
            <param name="argumentType">Specifies the checking to be done on the argument.</param>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgumentAttribute.Type">
            <summary>
            Gets or sets the checking to be done on the argument.
            </summary>
            <value>The checking that should be done on the argument.</value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgumentAttribute.Name">
            <summary>
            Gets or sets the long name of the argument.
            </summary>
            <value>The long name of the argument.</value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgumentAttribute.ShortName">
            <summary>
            Gets or sets the short name of the argument.
            </summary>
            <value>The short name of the argument.</value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgumentAttribute.Description">
            <summary>
            Gets or sets the description of the argument.
            </summary>
            <value>The description of the argument.</value>
        </member>
        <member name="T:NAnt.Core.Util.CommandLineArgumentCollection">
            <summary>
            Contains a strongly typed collection of <see cref="T:NAnt.Core.Util.CommandLineArgument"/> objects.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.#ctor(NAnt.Core.Util.CommandLineArgumentCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentCollection"/> class
            with the specified <see cref="T:NAnt.Core.Util.CommandLineArgumentCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.#ctor(NAnt.Core.Util.CommandLineArgument[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.Util.CommandLineArgument"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.Add(NAnt.Core.Util.CommandLineArgument)">
            <summary>
            Adds a <see cref="T:NAnt.Core.Util.CommandLineArgument"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Util.CommandLineArgument"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.AddRange(NAnt.Core.Util.CommandLineArgument[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Util.CommandLineArgument"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.Util.CommandLineArgument"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.AddRange(NAnt.Core.Util.CommandLineArgumentCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.Util.CommandLineArgumentCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.Util.CommandLineArgumentCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.Contains(NAnt.Core.Util.CommandLineArgument)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.Util.CommandLineArgument"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Util.CommandLineArgument"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.CopyTo(NAnt.Core.Util.CommandLineArgument[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.IndexOf(NAnt.Core.Util.CommandLineArgument)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.Util.CommandLineArgument"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Util.CommandLineArgument"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.Util.CommandLineArgument"/>. If the <see cref="T:NAnt.Core.Util.CommandLineArgument"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.Insert(System.Int32,NAnt.Core.Util.CommandLineArgument)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.Util.CommandLineArgument"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.Util.CommandLineArgument"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.Util.CommandLineArgumentEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentCollection.Remove(NAnt.Core.Util.CommandLineArgument)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.Util.CommandLineArgument"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgumentCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgumentCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.Util.CommandLineArgument"/> with the specified name.
            </summary>
            <param name="name">The name of the <see cref="T:NAnt.Core.Util.CommandLineArgument"/> to get.</param>
        </member>
        <member name="T:NAnt.Core.Util.CommandLineArgumentEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.Util.CommandLineArgument"/> elements of a <see cref="T:NAnt.Core.Util.CommandLineArgumentCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentEnumerator.#ctor(NAnt.Core.Util.CommandLineArgumentCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.Util.CommandLineArgumentCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineArgumentEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.Util.CommandLineArgumentException">
            <summary>
            The exception that is thrown when one of the command-line arguments provided 
            is not valid.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentException.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentException"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentException"/> class
            with a descriptive message.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentException"/> class
            with a descriptive message and an inner exception.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
            <param name="innerException">A nested exception that is the cause of the current exception.</param>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineArgumentException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentException"/> class 
            with serialized data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
            <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
        </member>
        <member name="T:NAnt.Core.Util.CommandLineArgumentTypes">
            <summary>
            Used to control parsing of command-line arguments.
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.CommandLineArgumentTypes.Required">
            <summary>
            Indicates that this field is required. An error will be displayed
            if it is not present when parsing arguments.
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.CommandLineArgumentTypes.Unique">
            <summary>
            Only valid in conjunction with Multiple.
            Duplicate values will result in an error.
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.CommandLineArgumentTypes.Multiple">
            <summary>
            Inidicates that the argument may be specified more than once.
            Only valid if the argument is a collection
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.CommandLineArgumentTypes.Exclusive">
            <summary>
            Inidicates that if this argument is specified, no other arguments may be specified.
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.CommandLineArgumentTypes.AtMostOnce">
            <summary>
            The default type for non-collection arguments.
            The argument is not required, but an error will be reported if it is specified more than once.
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.CommandLineArgumentTypes.MultipleUnique">
            <summary>
            The default type for collection arguments.
            The argument is permitted to occur multiple times, but duplicate 
            values will cause an error to be reported.
            </summary>
        </member>
        <member name="T:NAnt.Core.Util.CommandLineParser">
            <summary>
            Commandline parser.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineParser.#ctor(System.Type,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineParser"/> class
            using possible arguments deducted from the specific <see cref="T:System.Type"/>.
            </summary>
            <param name="argumentSpecification">The <see cref="T:System.Type"/> from which the possible command-line arguments should be retrieved.</param>
            <param name="supportsResponseFile">A <see cref="T:System.Boolean"/> value indicating whether or not a response file is able to be used. </param>
            <exception cref="T:System.ArgumentNullException"><paramref name="argumentSpecification"/> is a null reference.</exception>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineParser.Parse(System.String[],System.Object)">
            <summary>
            Parses an argument list.
            </summary>
            <param name="args">The arguments to parse.</param>
            <param name="destination">The destination object on which properties will be set corresponding to the specified arguments.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="destination"/> is a null reference.</exception>
            <exception cref="T:System.ArgumentException">The <see cref="T:System.Type"/> of <paramref name="destination"/> does not match the argument specification that was used to initialize the parser.</exception>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineParser.ParseArguments(System.String,System.Char[])">
            <summary>
            Splits a string and removes any empty strings from the 
            result. Same functionality as the 
            public string[] Split(char[] separator, StringSplitOptions options) 
            method in .Net 2.0. Replace with that call when 2.0 is standard.
            </summary>
            <param name="sourceString"></param>
            <param name="delimiters"></param>
            <returns>the array of strings</returns>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineParser.ProcessResponseFile(System.String)">
            <summary>
            Read a response file and parse the arguments as usual.
            </summary>
            <param name="file">The response file to load arguments</param>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineParser.ParseArgumentList(System.String[])">
            <summary>
            Parse the argument list using the 
            </summary>
            <param name="args"></param>
        </member>
        <member name="M:NAnt.Core.Util.CommandLineParser.GetCommandLineAttribute(System.Reflection.PropertyInfo)">
            <summary>
            Returns the <see cref="T:NAnt.Core.Util.CommandLineArgumentAttribute"/> that's applied 
            on the specified property.
            </summary>
            <param name="propertyInfo">The property of which applied <see cref="T:NAnt.Core.Util.CommandLineArgumentAttribute"/> should be returned.</param>
            <returns>
            The <see cref="T:NAnt.Core.Util.CommandLineArgumentAttribute"/> that's applied to the 
            <paramref name="propertyInfo"/>, or a null reference if none was applied.
            </returns>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineParser.LogoBanner">
            <summary>
            Gets a logo banner using version and copyright attributes defined on the 
            <see cref="M:System.Reflection.Assembly.GetEntryAssembly"/> or the 
            <see cref="M:System.Reflection.Assembly.GetCallingAssembly"/>.
            </summary>
            <value>
            A logo banner.
            </value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineParser.Usage">
            <summary>
            Gets the usage instructions.
            </summary>
            <value>The usage instructions.</value>
        </member>
        <member name="P:NAnt.Core.Util.CommandLineParser.NoArgs">
            <summary>
            Gets a value indicating whether no arguments were specified on the
            command line.
            </summary>
        </member>
        <member name="T:NAnt.Core.Util.DefaultCommandLineArgumentAttribute">
            <summary>
            Marks a command-line option as being the default option.  When the name of 
            a command-line argument is not specified, this option will be assumed.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.DefaultCommandLineArgumentAttribute.#ctor(NAnt.Core.Util.CommandLineArgumentTypes)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.CommandLineArgumentAttribute"/> class
            with the specified argument type.
            </summary>
            <param name="argumentType">Specifies the checking to be done on the argument.</param>
        </member>
        <member name="T:NAnt.Core.Util.FileUtils">
            <summary>
            Provides modified version for Copy and Move from the File class that 
            allow for filter chain processing.
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.FileUtils._bufferSize">
            <summary>
            Constant buffer size for copy/move functions.
            </summary>
            <remarks>Default value is 8k</remarks>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.CopyFile(System.String,System.String,NAnt.Core.Filters.FilterChain,System.Text.Encoding,System.Text.Encoding)">
            <summary>
            Copies a file filtering its content through the filter chain.
            </summary>
            <param name="sourceFileName">
            The file to copy
            </param>
            <param name="destFileName">
            The file to copy to
            </param>
            <param name="filterChain">
            Chain of filters to apply when copying, or <see langword="null" /> is no
            filters should be applied.
            </param>
            <param name="inputEncoding">
            The encoding used to read the soure file.
            </param>
            <param name="outputEncoding">
            The encoding used to write the destination file.
            </param>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.MoveFile(System.String,System.String,NAnt.Core.Filters.FilterChain,System.Text.Encoding,System.Text.Encoding)">
            <summary>
            Moves a file filtering its content through the filter chain.
            </summary>
            <param name="sourceFileName">
            The file to move.
            </param>
            <param name="destFileName">
            The file to move move to.
            </param>
            <param name="filterChain">
            Chain of filters to apply when moving, or <see langword="null" /> is no
            filters should be applied.
            </param>
            <param name="inputEncoding">
            The encoding used to read the soure file.
            </param>
            <param name="outputEncoding">
            The encoding used to write the destination file.
            </param>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.CopyDirectory(System.String,System.String,NAnt.Core.Filters.FilterChain,System.Text.Encoding,System.Text.Encoding)">
            <summary>
            Copies a directory while filtering its file content through the filter chain.
            </summary>
            <param name="sourceDirectory">
            Source directory to copy from.
            </param>
            <param name="destDirectory">
            Destination directory to copy to.
            </param>
            <param name="filterChain">
            Chain of filters to apply when copying, or <see langword="null" /> is no
            filters should be applied.
            </param>
            <param name="inputEncoding">
            The encoding used to read the soure file.
            </param>
            <param name="outputEncoding">
            The encoding used to write the destination file.
            </param>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.MoveDirectory(System.String,System.String,NAnt.Core.Filters.FilterChain,System.Text.Encoding,System.Text.Encoding)">
            <summary>
            Moves a directory while filtering its file content through the filter chain.
            </summary>
            <param name="sourceDirectory">
            Source directory to move from.
            </param>
            <param name="destDirectory">
            Destination directory to move to.
            </param>
            <param name="filterChain">
            Chain of filters to apply when copying, or <see langword="null" /> is no
            filters should be applied.
            </param>
            <param name="inputEncoding">
            The encoding used to read the soure file.
            </param>
            <param name="outputEncoding">
            The encoding used to write the destination file.
            </param>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.GetTempDirectoryName">
            <summary>
            Generates a new temporary directory name based on the system's
            temporary path.
            </summary>
            <returns>
            The temp directory name.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.ReadFile(System.String,NAnt.Core.Filters.FilterChain,System.Text.Encoding)">
            <summary>
            Reads a file filtering its content through the filter chain.
            </summary>
            <param name="fileName">The file to read.</param>
            <param name="filterChain">Chain of filters to apply when reading, or <see langword="null" /> is no filters should be applied.</param>
            <param name="inputEncoding">The encoding used to read the file.</param>
            <remarks>
            If <paramref name="inputEncoding" /> is <see langword="null" />,
            then the system's ANSI code page will be used to read the file.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.GetTempDirectory">
            <summary>
            Returns a uniquely named empty temporary directory on disk.
            </summary>
            <value>
            A <see cref="T:System.IO.DirectoryInfo"/> representing the temporary directory.
            </value>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.CombinePaths(System.String,System.String)">
            <summary>
            Combines two path strings.
            </summary>
            <param name="path1">The first path.</param>
            <param name="path2">The second path.</param>
            <returns>
            A string containing the combined paths. If one of the specified 
            paths is a zero-length string, this method returns the other path. 
            If <paramref name="path2"/> contains an absolute path, this method 
            returns <paramref name="path2"/>.
            </returns>
            <remarks>
              <para>On *nix, processing is delegated to <see cref="M:System.IO.Path.Combine(System.String,System.String)"/>.</para>
              <para>
              On Windows, this method normalized the paths to avoid running into
              the 260 character limit of a path and converts forward slashes in 
              both <paramref name="path1"/> and <paramref name="path2"/> to 
              the platform's directory separator character.
              </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.GetFullPath(System.String)">
            <summary>
            Returns Absolute Path (Fix for 260 Char Limit of Path.GetFullPath(...))
            </summary>
            <param name="path">The file or directory for which to obtain absolute path information.</param>
            <returns>Path Resolved</returns>
            <exception cref="T:System.ArgumentException">path is a zero-length string, contains only white space or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars"/>.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="path"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.GetHomeDirectory">
            <summary>
            Returns the home directory of the current user.
            </summary>
            <returns>
            The home directory of the current user.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.FileUtils.ResolveFile(System.String[],System.String,System.Boolean)">
            <summary>
            Scans a list of directories for the specified filename.
            </summary>
            <param name="directories">The list of directories to search.</param>
            <param name="fileName">The name of the file to look for.</param>
            <param name="recursive">Specifies whether the directory should be searched recursively.</param>
            <remarks>
            The directories are scanned in the order in which they are defined.
            </remarks>
            <returns>
            The absolute path to the specified file, or null if the file was
            not found.
            </returns>
        </member>
        <member name="T:NAnt.Core.Util.GacCache">
            <summary>
            Helper class for determining whether assemblies are located in the 
            Global Assembly Cache.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.GacCache.#ctor(NAnt.Core.Project)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.GacCache"/> class in 
            the context of the given <see cref="P:NAnt.Core.Util.GacCache.Project"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.GacCache.IsAssemblyInGac(System.String)">
            <summary>
            Determines whether an assembly is installed in the Global
            Assembly Cache given its file name or path.
            </summary>
            <param name="assemblyFile">The name or path of the file that contains the manifest of the assembly.</param>
            <returns>
            <see langword="true"/> if <paramref name="assemblyFile"/> is 
            installed in the Global Assembly Cache; otherwise, 
            <see langword="false"/>.
            </returns>
            <remarks>
            <para>
            To determine whether the specified assembly is installed in the 
            Global Assembly Cache, the assembly is loaded into a separate
            <see cref="T:System.AppDomain"/>.
            </para>
            <para>
            If the family of the current runtime framework does not match the
            family of the current target framework, this method will return
            <see langword="false"/> for all assemblies as there's no way to
            determine whether a given assembly is in the Global Assembly Cache
            for another framework family than the family of the current runtime
            framework.
            </para>
            </remarks>
        </member>
        <member name="F:NAnt.Core.Util.GacCache._domain">
            <summary>
            Holds the <see cref="T:System.AppDomain"/> in which assemblies will be loaded
            to determine whether they are in the Global Assembly Cache.
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.GacCache._project">
            <summary>
            Holds the <see cref="P:NAnt.Core.Util.GacCache.Project"/> context of the <see cref="T:NAnt.Core.Util.GacCache"/>.
            </summary>
        </member>
        <member name="F:NAnt.Core.Util.GacCache._gacQueryCache">
            <summary>
            Holds a list of assembly files for which already has been determined 
            whether they are located in the Global Assembly Cache.
            </summary>
            <remarks>
            <para>
            The key of the <see cref="T:System.Collections.Hashtable"/> is the full path to the 
            assembly file and the value is a <see cref="T:System.Boolean"/> indicating 
            whether the assembly is located in the Global Assembly Cache.
            </para>
            </remarks>
        </member>
        <member name="F:NAnt.Core.Util.GacCache._disposed">
            <summary>
            Holds a value indicating whether the object has been disposed.
            </summary>
        </member>
        <member name="P:NAnt.Core.Util.GacCache.Project">
            <summary>
            Gets the <see cref="P:NAnt.Core.Util.GacCache.Project"/> context of the <see cref="T:NAnt.Core.Util.GacCache"/>.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.Util.GacCache.Project"/> context of the <see cref="T:NAnt.Core.Util.GacCache"/>.
            </value>
        </member>
        <member name="M:NAnt.Core.Util.GacCache.GacResolver.InitializeLifetimeService">
            <summary>
            Obtains a lifetime service object to control the lifetime policy for 
            this instance.
            </summary>
            <returns>
            An object of type <see cref="T:System.Runtime.Remoting.Lifetime.ILease"/> used to control the lifetime 
            policy for this instance. This is the current lifetime service object 
            for this instance if one exists; otherwise, a new lifetime service 
            object initialized with a lease that will never time out.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.GacCache.GacResolver.IsAssemblyInGac(System.String)">
            <summary>
            Determines whether an assembly is installed in the Global
            Assembly Cache given its file name or path.
            </summary>
            <param name="assemblyFile">The name or path of the file that contains the manifest of the assembly.</param>
            <returns>
            <see langword="true" /> if <paramref name="assemblyFile" /> is 
            installed in the Global Assembly Cache; otherwise, 
            <see langword="false" />.
            </returns>
        </member>
        <member name="T:NAnt.Core.Util.ReflectionUtils">
            <summary>
            Provides a set of helper methods related to reflection.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.ReflectionUtils.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.ReflectionUtils"/> class.
            </summary>
            <remarks>
            Uses a private access modifier to prevent instantiation of this class.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Util.ReflectionUtils.GetTypeFromString(System.String,System.Boolean)">
            <summary>
            Loads the type specified in the type string with assembly qualified name.
            </summary>
            <param name="typeName">The assembly qualified name of the type to load.</param>
            <param name="throwOnError">Flag set to <see langword="true"/> to throw an exception if the type cannot be loaded.</param>
            <exception cref="T:System.TypeLoadException">
                <paramref name="throwOnError"/> is <see langword="true"/> and 
                an error is encountered while loading the <see cref="T:System.Type"/>, or 
                <paramref name="typeName"/> is not an assembly qualified name.
            </exception>
            <remarks>
            If the <see cref="T:System.Type"/> cannot be instantiated from the assembly
            qualified type name, then we'll try to instantiate the type using its
            simple type name from an already loaded assembly with an assembly 
            name mathing the assembly in the assembly qualified type name.
            </remarks>
            <returns>
            The type loaded or <see langword="null"/> if it could not be loaded.
            </returns>
        </member>
        <member name="T:NAnt.Core.Util.ResourceUtils">
            <summary>
            Provides resource support to NAnt assemblies. This class cannot
            be inherited from.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.ResourceUtils.#ctor">
            <summary>
            Prevents the <see cref="T:NAnt.Core.Util.ResourceUtils"/> class from being 
            instantiated explicitly.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.ResourceUtils.RegisterSharedAssembly(System.Reflection.Assembly)">
            <summary>
            Registers the assembly to be used as the fallback if resources
            aren't found in the local satellite assembly.
            </summary>
            <param name="assembly">
            A <see cref="T:System.Reflection.Assembly" /> that represents the
            assembly to register.
            </param>
            <example>
            The following example shows how to register a shared satellite
            assembly.
            <code>
            <![CDATA[
            Assembly sharedAssembly = Assembly.Load("MyResources.dll");
            ResourceUtils.RegisterSharedAssembly(sharedAssembly);
            ]]>
            </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Util.ResourceUtils.GetString(System.String)">
            <summary>
            Returns the value of the specified string resource.
            </summary>
            <param name="name">
            A <see cref="T:System.String" /> that contains the name of the
            resource to get.
            </param>
            <returns>
            A <see cref="T:System.String" /> that contains the value of the
            resource localized for the current culture.
            </returns>
            <remarks>
            The returned resource is localized for the cultural settings of the
            current <see cref="T:System.Threading.Thread" />.
            <note>
            The <c>GetString</c> method is thread-safe.
            </note>
            </remarks>
            <example>
            The following example demonstrates the <c>GetString</c> method using
            the cultural settings of the current <see cref="T:System.Threading.Thread" />.
            <code>
            <![CDATA[
            string localizedString = ResourceUtils.GetString("String_HelloWorld");
            ]]>
            </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Util.ResourceUtils.GetString(System.String,System.Globalization.CultureInfo)">
             <summary>
             Returns the value of the specified string resource localized for
             the specified culture.
             </summary>
             <param name="name"></param>
             <param name="culture"></param>
             <returns>
             A <see cref="T:System.String" /> that contains the value of the
             resource localized for the specified culture. 
            </returns>
             <remarks>
             <note>
             The <c>GetString</c> method is thread-safe.
             </note>
             </remarks>
             <example>
             The following example demonstrates the <c>GetString</c> method using
             a specific culture.
             <code>
             <![CDATA[
             CultureInfo culture = CultureInfo.CreateSpecificCulture("en-US");
             string localizedString = ResourceUtils.GetString("String_HelloWorld", culture);
             ]]>
             </code>
             </example>
        </member>
        <member name="M:NAnt.Core.Util.ResourceUtils.GetString(System.String,System.Globalization.CultureInfo,System.Reflection.Assembly)">
            <summary>
            Returns the value of the specified string resource localized for
            the specified culture for the specified assembly.
            </summary>
            <param name="name">
            A <see cref="T:System.String" /> that contains the name of the
            resource to get.
            </param>
            <param name="culture">
            A <see cref="T:System.Globalization.CultureInfo" /> that represents
            the culture for which the resource is localized.
            </param>
            <param name="assembly">
            A <see cref="T:System.Reflection.Assembly" />
            </param>
            <returns>
            A <see cref="T:System.String" /> that contains the value of the
            resource localized for the specified culture.
            </returns>
            <remarks>
            <note>
            The <c>GetString</c> method is thread-safe.
            </note>
            </remarks>
            <example>
            The following example demonstrates the <c>GetString</c> method using
            specific culture and assembly.
            <code>
            <![CDATA[
            CultureInfo culture = CultureInfo.CreateSpecificCulture("en-US");
            Assembly assembly = Assembly.GetCallingAssembly();
            string localizedString = ResourceUtils.GetString("String_HelloWorld", culture, assembly);
            ]]>
            </code>
            </example>
        </member>
        <member name="M:NAnt.Core.Util.ResourceUtils.RegisterAssembly(System.Reflection.Assembly)">
            <summary>
            Registers the specified assembly.
            </summary>
            <param name="assembly">
            A <see cref="T:System.Reflection.Assembly" /> that represents the
            assembly to register.
            </param>
        </member>
        <member name="M:NAnt.Core.Util.ResourceUtils.GetResourceName(System.String)">
            <summary>
            Determines the manifest resource name of the resource holding the
            localized strings.
            </summary>
            <param name="assemblyName">The name of the assembly.</param>
            <returns>
            The manifest resource name of the resource holding the localized
            strings for the specified assembly.
            </returns>
            <remarks>
            The manifest resource name of the resource holding the localized
            strings should match the name of the assembly, minus <c>Tasks</c>
            suffix.
            </remarks>
        </member>
        <member name="T:NAnt.Core.Util.StringUtils">
            <summary>
            Groups a set of useful <see cref="T:System.String"/> manipulation and validation 
            methods.
            </summary>
        </member>
        <member name="M:NAnt.Core.Util.StringUtils.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Util.StringUtils"/> class.
            </summary>
            <remarks>
            Prevents instantiation of the <see cref="T:NAnt.Core.Util.StringUtils"/> class.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Util.StringUtils.EndsWith(System.String,System.Char)">
            <summary>
            Determines whether the last character of the given <see cref="T:System.String"/>
            matches the specified character.
            </summary>
            <param name="value">The string.</param>
            <param name="c">The character.</param>
            <returns>
            <see langword="true"/> if the last character of <paramref name="value"/>
            matches <paramref name="c"/>; otherwise, <see langword="false"/>.
            </returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:NAnt.Core.Util.StringUtils.IsNullOrEmpty(System.String)">
            <summary>
            Indicates whether or not the specified <see cref="T:System.String"/> is 
            <see langword="null"/> or an <see cref="F:System.String.Empty"/> string.
            </summary>
            <param name="value">The value to check.</param>
            <returns>
            <see langword="true"/> if <paramref name="value"/> is <see langword="null"/>
            or an empty string (""); otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.StringUtils.ConvertEmptyToNull(System.String)">
            <summary>
            Converts an empty string ("") to <see langword="null" />.
            </summary>
            <param name="value">The value to convert.</param>
            <returns>
            <see langword="null" /> if <paramref name="value" /> is an empty 
            string ("") or <see langword="null" />; otherwise, <paramref name="value" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.StringUtils.ConvertNullToEmpty(System.String)">
            <summary>
            Converts <see langword="null" /> to an empty string.
            </summary>
            <param name="value">The value to convert.</param>
            <returns>
            An empty string if <paramref name="value" /> is <see langword="null" />;
            otherwise, <paramref name="value" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Util.StringUtils.Join(System.String,System.Collections.Specialized.StringCollection)">
            <summary>
            Concatenates a specified separator <see cref="T:System.String"/> between each 
            element of a specified <see cref="T:System.Collections.Specialized.StringCollection"/>, yielding a 
            single concatenated string.
            </summary>
            <param name="separator">A <see cref="T:System.String"/>.</param>
            <param name="value">A <see cref="T:System.Collections.Specialized.StringCollection"/>.</param>
            <returns>
            A <see cref="T:System.String"/> consisting of the elements of <paramref name="value"/> 
            interspersed with the separator string.
            </returns>
            <remarks>
            <para>
            For example if <paramref name="separator"/> is ", " and the elements 
            of <paramref name="value"/> are "apple", "orange", "grape", and "pear", 
            <see cref="M:NAnt.Core.Util.StringUtils.Join(System.String,System.Collections.Specialized.StringCollection)"/> returns "apple, orange, 
            grape, pear".
            </para>
            <para>
            If <paramref name="separator"/> is <see langword="null"/>, an empty 
            string (<see cref="F:System.String.Empty"/>) is used instead.
            </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.Util.StringUtils.Clone(System.Collections.Specialized.StringCollection)">
            <summary>
            Creates a shallow copy of the specified <see cref="T:System.Collections.Specialized.StringCollection"/>.
            </summary>
            <param name="stringCollection">The <see cref="T:System.Collections.Specialized.StringCollection"/> that should be copied.</param>
            <returns>
            A shallow copy of the specified <see cref="T:System.Collections.Specialized.StringCollection"/>.
            </returns>
        </member>
        <member name="T:NAnt.Core.BuildException">
            <summary>
            Thrown whenever an error occurs during the build.
            </summary>
        </member>
        <member name="F:NAnt.Core.BuildException._location">
            <summary>
            The location of the exception in the build document (xml file).
            </summary>
        </member>
        <member name="M:NAnt.Core.BuildException.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildException"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.BuildException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildException"/> class 
            with a descriptive message.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
        </member>
        <member name="M:NAnt.Core.BuildException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildException"/> class
            with the specified descriptive message and inner exception.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
            <param name="innerException">A nested exception that is the cause of the current exception.</param>
        </member>
        <member name="M:NAnt.Core.BuildException.#ctor(System.String,NAnt.Core.Location)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildException"/> class
            with a descriptive message and the location in the build file that 
            caused the exception.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
            <param name="location">The location in the build file where the exception occured.</param>
        </member>
        <member name="M:NAnt.Core.BuildException.#ctor(System.String,NAnt.Core.Location,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildException"/> class
            with a descriptive message, the location in the build file and an 
            instance of the exception that is the cause of the current exception.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
            <param name="location">The location in the build file where the exception occured.</param>
            <param name="innerException">A nested exception that is the cause of the current exception.</param>
        </member>
        <member name="M:NAnt.Core.BuildException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildException"/> class 
            with serialized data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
            <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
        </member>
        <member name="M:NAnt.Core.BuildException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serializes this object into the <see cref="T:System.Runtime.Serialization.SerializationInfo"/> provided.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
            <param name="context">The destination for this serialization.</param>
        </member>
        <member name="M:NAnt.Core.BuildException.ToString">
            <summary>
            Creates and returns a string representation of the current 
            exception.
            </summary>
            <returns>
            A string representation of the current exception.
            </returns>
        </member>
        <member name="P:NAnt.Core.BuildException.RawMessage">
            <summary>
            Gets the raw message as specified when the exception was 
            constructed.
            </summary>
            <value>
            The raw message as specified when the exception was 
            constructed.
            </value>
        </member>
        <member name="P:NAnt.Core.BuildException.Location">
            <summary>
            Gets the location in the build file of the element from which the
            exception originated.
            </summary>
            <value>
            The location in the build file of the element from which the
            exception originated.
            </value>
        </member>
        <member name="P:NAnt.Core.BuildException.Message">
            <summary>
            Gets a message that describes the current exception.
            </summary>
            <value>
            The error message that explains the reason for the exception.
            </value>
            <remarks>
            Adds location information to the message, if available.
            </remarks>
        </member>
        <member name="T:NAnt.Core.CommandLineOptions">
            <summary>
            Represents the set of command-line options supported by NAnt.
            </summary>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.TargetFramework">
            <summary>
            Gets or sets the target framework to use (overrides 
            NAnt.exe.config settings)
            </summary>
            <value>
            The framework that should be used.
            </value>
            <remarks>
            For a list of possible frameworks, see NAnt.exe.config, possible
            values include "net-1.0", "net-1.1", etc.
            </remarks>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.DefaultFramework">
            <summary>
            Gets or sets the target framework to use (overrides 
            NAnt.exe.config settings)
            </summary>
            <value>
            The framework that should be used.
            </value>
            <remarks>
            For a list of possible frameworks, see NAnt.exe.config, possible
            values include "net-1.0", "net-1.1", etc.
            </remarks>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.BuildFile">
            <summary>
            Gets or sets the buildfile that should be executed.
            </summary>
            <value>
            The buildfile that should be executed.
            </value>
            <remarks>
            Can be both a file or an URI.
            </remarks>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.Pause">
            <summary>
            Pauses before program ends.
            </summary>
            <value>
            <see langword="true" /> for pausing on program end; 
            otherwise, <see langword="false" />. The default is <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.Verbose">
            <summary>
            Gets or sets a value indicating whether more information should be
            displayed during the build process.
            </summary>
            <value>
            <see langword="true" /> if more information should be displayed; 
            otherwise, <see langword="false" />. The default is <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.Debug">
            <summary>
            Gets or sets a value indicating whether debug information should be
            displayed during the build process.
            </summary>
            <value>
            <see langword="true" /> if debug information should be displayed; 
            otherwise, <see langword="false" />. The default is <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.Quiet">
            <summary>
            Gets or sets a value indicating whether only error and debug debug messages should be
            displayed during the build process.
            </summary>
            <value>
            <see langword="true" /> if only error or warning messages should be 
            displayed; otherwise, <see langword="false" />. The default is
            <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.EmacsMode">
            <summary>
            Gets or sets a value indicating whether to produce emacs (and other
            editor) friendly output.
            </summary>
            <value>
            <see langword="true" /> if output is to be unadorned so that emacs 
            and other editors can parse files names, etc. The default is
            <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.FindInParent">
            <summary>
            Gets a value indicating whether parent directories should be searched
            for a buildfile.
            </summary>
            <value>
            <see langword="true" /> if parent directories should be searched for 
            a build file; otherwise, <see langword="false" />. The default is
            <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.IndentationLevel">
            <summary>
            Gets or sets the indentation level of the build output.
            </summary>
            <value>
            The indentation level of the build output. The default is <c>0</c>.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.Properties">
            <summary>
            Gets or sets the list of properties that should be set.
            </summary>
            <value>
            The list of properties that should be set.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.LoggerType">
            <summary>
            Gets or sets the <see cref="T:System.Type"/> of logger to add to the list
            of listeners.
            </summary>
            <value>
            The <see cref="T:System.Type"/> of logger to add to the list of
            listeners.
            </value>
            <remarks>
            The <see cref="P:NAnt.Core.CommandLineOptions.LoggerType"/> should derive from <see cref="T:NAnt.Core.IBuildLogger"/>.
            </remarks>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.LogFile">
            <summary>
            Gets or sets the name of the file to log output to.
            </summary>
            <value>
            The name of the file to log output to.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.Listeners">
            <summary>
            Gets a collection containing fully qualified type names of classes 
            implementating <see cref="T:NAnt.Core.IBuildListener"/> that should be added 
            to the project as listeners.
            </summary>
            <value>
            A collection of fully qualified type names that should be added as 
            listeners to the <see cref="T:NAnt.Core.Project"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.ExtensionAssemblies">
            <summary>
            Gets a collection of assemblies to load extensions from.
            </summary>
            <value>
            A collection of assemblies to load extensions from.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.ShowProjectHelp">
            <summary>
            Gets or sets a value indicating whether <see cref="T:NAnt.Core.Project"/> help 
            should be printed.
            </summary>
            <value>
            <see langword="true"/> if <see cref="T:NAnt.Core.Project"/> help should be 
            printed; otherwise, <see langword="false"/>. The default is
            <see langword="false"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.NoLogo">
            <summary>
            Gets or sets a value indicating whether the logo banner should be
            printed.
            </summary>
            <value>
            <see langword="true" /> if the logo banner should be printed; otherwise, 
            <see langword="false" />. The default is <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.ShowHelp">
            <summary>
            Gets or sets a value indicating whether the NAnt help should be
            printed.
            </summary>
            <value>
            <see langword="true" /> if NAnt help should be printed; otherwise, 
            <see langword="false" />. The default is <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.CommandLineOptions.Targets">
            <summary>
            Gets a collection containing the targets that should be executed.
            </summary>
            <value>
            A collection that contains the targets that should be executed.
            </value>
        </member>
        <member name="T:NAnt.Core.ConfigurationSection">
            <summary>
            Custom configuration section handler for the <nantsettings/> element.
            </summary>
        </member>
        <member name="M:NAnt.Core.ConfigurationSection.Create(System.Object,System.Object,System.Xml.XmlNode)">
            <summary>
            This just passed things through. Return the node read from the config file.
            </summary>
        </member>
        <member name="T:NAnt.Core.ConsoleDriver">
            <summary>
            Main entry point to NAnt that is called by the ConsoleStub.
            </summary>
        </member>
        <member name="M:NAnt.Core.ConsoleDriver.Main(System.String[])">
            <summary>
            Starts NAnt. This is the Main entry point.
            </summary>
            <param name="args">Command Line args, or whatever you want to pass it. They will treated as Command Line args.</param>
            <returns>
            The exit code.
            </returns>
        </member>
        <member name="M:NAnt.Core.ConsoleDriver.ShowProjectHelp(System.Xml.XmlDocument)">
            <summary>
            Prints the projecthelp to the console.
            </summary>
            <param name="buildDoc">The build file to show help for.</param>
            <remarks>
            <paramref name="buildDoc" /> is loaded and transformed with 
            <c>ProjectHelp.xslt</c>, which is an embedded resource.
            </remarks>
        </member>
        <member name="M:NAnt.Core.ConsoleDriver.GetBuildFileName(System.String,System.String,System.Boolean)">
            <summary>
            Gets the file name for the build file in the specified directory.
            </summary>
            <param name="directory">The directory to look for a build file.  When in doubt use Environment.CurrentDirectory for directory.</param>
            <param name="searchPattern">Look for a build file with this pattern or name.  If null look for a file that matches the default build pattern (*.build).</param>
            <param name="findInParent">Whether or not to search the parent directories for a build file.</param>
            <returns>The path to the build file or <c>null</c> if no build file could be found.</returns>
        </member>
        <member name="M:NAnt.Core.ConsoleDriver.LoadExtensionAssemblies(System.Collections.Specialized.StringCollection,NAnt.Core.Project)">
            <summary>
            Loads the extension assemblies in the current <see cref="T:System.AppDomain"/>
            and scans them for extensions.
            </summary>
            <param name="extensionAssemblies">The extension assemblies to load.</param>
            <param name="project">The <see cref="T:NAnt.Core.Project"/> which will be used to output messages to the build log.</param>
        </member>
        <member name="M:NAnt.Core.ConsoleDriver.CreateLogger(System.String)">
            <summary>
            Dynamically constructs an <see cref="T:NAnt.Core.IBuildLogger"/> instance of 
            the class specified.
            </summary>
            <remarks>
            <para>
            At this point, only looks in the assembly where <see cref="T:NAnt.Core.IBuildLogger"/> 
            is defined.
            </para>
            </remarks>
            <param name="typeName">The fully qualified name of the logger that should be instantiated.</param>
            <exception cref="T:System.TypeLoadException">Type <paramref name="typeName"/> could not be loaded.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="typeName"/> does not implement <see cref="T:NAnt.Core.IBuildLogger"/>.</exception>
        </member>
        <member name="M:NAnt.Core.ConsoleDriver.CreateListener(System.String)">
            <summary>
            Dynamically constructs an <see cref="T:NAnt.Core.IBuildListener"/> instance of 
            the class specified.
            </summary>
            <remarks>
            <para>
            At this point, only looks in the assembly where <see cref="T:NAnt.Core.IBuildListener"/> 
            is defined.
            </para>
            </remarks>
            <param name="typeName">The fully qualified name of the listener that should be instantiated.</param>
            <exception cref="T:System.TypeLoadException">Type <paramref name="typeName"/> could not be loaded.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="typeName"/> does not implement <see cref="T:NAnt.Core.IBuildListener"/>.</exception>
        </member>
        <member name="M:NAnt.Core.ConsoleDriver.AddBuildListeners(NAnt.Core.CommandLineOptions,NAnt.Core.Project)">
            <summary>
            Add the listeners specified in the command line arguments,
            along with the default listener, to the specified project.
            </summary>
            <param name="cmdlineOptions">The command-line options.</param>
            <param name="project">The <see cref="T:NAnt.Core.Project"/> to add listeners to.</param>
        </member>
        <member name="M:NAnt.Core.ConsoleDriver.ShowHelp(NAnt.Core.Util.CommandLineParser)">
            <summary>
            Spits out generic help info to the console.
            </summary>
        </member>
        <member name="M:NAnt.Core.ConsoleDriver.WriteException(System.Exception)">
            <summary>
            Write the message of the specified <see cref="T:System.Exception"/> and
            the inner exceptions to <see cref="P:System.Console.Error"/>.
            </summary>
            <param name="cause">The <see cref="T:System.Exception"/> to write to <see cref="P:System.Console.Error"/>.</param>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilder.#ctor(System.Reflection.Assembly,System.String)">
            <summary>
            Creates a new instance of the <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> class
            for the specified <see cref="T:NAnt.Core.DataTypeBase"/> class in the specified
            <see cref="T:System.Reflection.Assembly"/>.
            </summary>
            <remarks>
            An <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> for the specified <see cref="T:System.Reflection.Assembly"/>
            is cached for future use.
            </remarks>
            <param name="assembly">The <see cref="T:System.Reflection.Assembly"/> containing the <see cref="T:NAnt.Core.DataTypeBase"/>.</param>
            <param name="className">The class representing the <see cref="T:NAnt.Core.DataTypeBase"/>.</param>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilder.#ctor(NAnt.Core.Extensibility.ExtensionAssembly,System.String)">
            <summary>
            Creates a new instance of the <see cref="T:NAnt.Core.DataTypeBaseBuilder"/>
            class for the specified <see cref="T:NAnt.Core.DataTypeBase"/> class in the
            <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> specified.
            </summary>
            <param name="extensionAssembly">The <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> containing the <see cref="T:NAnt.Core.DataTypeBase"/>.</param>
            <param name="className">The class representing the <see cref="T:NAnt.Core.DataTypeBase"/>.</param>
        </member>
        <member name="P:NAnt.Core.DataTypeBaseBuilder.ClassName">
            <summary>
            Gets the name of the <see cref="T:NAnt.Core.DataTypeBase"/> class that can be
            created using this <see cref="T:NAnt.Core.DataTypeBaseBuilder"/>.
            </summary>
            <value>
            The name of the <see cref="T:NAnt.Core.DataTypeBase"/> class that can be created
            using this <see cref="T:NAnt.Core.DataTypeBaseBuilder"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.DataTypeBaseBuilder.DataTypeName">
            <summary>
            Gets the name of the data type which the <see cref="T:NAnt.Core.DataTypeBaseBuilder"/>
            can create.
            </summary>
            <value>
            The name of the data type which the <see cref="T:NAnt.Core.DataTypeBaseBuilder"/>
            can create.
            </value>
        </member>
        <member name="T:NAnt.Core.DataTypeBaseBuilderCollection">
            <summary>
            Contains a strongly typed collection of <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> objects.
            </summary>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.DataTypeBaseBuilderCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.#ctor(NAnt.Core.DataTypeBaseBuilderCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.DataTypeBaseBuilderCollection"/> class
            with the specified <see cref="T:NAnt.Core.DataTypeBaseBuilderCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.#ctor(NAnt.Core.DataTypeBaseBuilder[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.DataTypeBaseBuilderCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.Add(NAnt.Core.DataTypeBaseBuilder)">
            <summary>
            Adds a <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.AddRange(NAnt.Core.DataTypeBaseBuilder[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.AddRange(NAnt.Core.DataTypeBaseBuilderCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.DataTypeBaseBuilderCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.DataTypeBaseBuilderCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.Contains(NAnt.Core.DataTypeBaseBuilder)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.Contains(System.String)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> for the specified 
            task is in the collection.
            </summary>
            <param name="taskName">The name of task for which the <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> should be located in the collection.</param> 
            <returns>
            <see langword="true"/> if a <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> for 
            the specified task is found in the collection; otherwise, 
            <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.CopyTo(NAnt.Core.DataTypeBaseBuilder[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.IndexOf(NAnt.Core.DataTypeBaseBuilder)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.DataTypeBaseBuilder"/>. If the <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.Insert(System.Int32,NAnt.Core.DataTypeBaseBuilder)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.DataTypeBaseBuilderEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderCollection.Remove(NAnt.Core.DataTypeBaseBuilder)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.DataTypeBaseBuilderCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="P:NAnt.Core.DataTypeBaseBuilderCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> for the specified task.
            </summary>
            <param name="dataTypeName">The name of task for which the <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> should be located in the collection.</param> 
        </member>
        <member name="T:NAnt.Core.DataTypeBaseBuilderEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> elements of a <see cref="T:NAnt.Core.DataTypeBaseBuilderCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderEnumerator.#ctor(NAnt.Core.DataTypeBaseBuilderCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.DataTypeBaseBuilderEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.DataTypeBaseBuilderCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseBuilderEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.DataTypeBaseBuilderEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseDictionary.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.DataTypeBaseDictionary"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseDictionary.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.DataTypeBaseDictionary"/> class
            with the specified capacity.
            </summary>
        </member>
        <member name="M:NAnt.Core.DataTypeBaseDictionary.Inherit(NAnt.Core.DataTypeBaseDictionary)">
            <summary>
            Inherits Properties from an existing property
            dictionary Instance
            </summary>
            <param name="source">DataType list to inherit</param>       
        </member>
        <member name="T:NAnt.Core.DirectoryScanner">
             <summary>
             Used for searching filesystem based on given include/exclude rules.
             </summary>
             <example>
                 <para>Simple client code for testing the class.</para>
                 <code>
                     while (true) {
                         DirectoryScanner scanner = new DirectoryScanner();
            
                         Console.Write("Scan Basedirectory : ");
                         string s = Console.ReadLine();
                         if (s.Length == 0) break;
                         scanner.BaseDirectory = s;
            
                         while(true) {
                             Console.Write("Include pattern : ");
                             s = Console.ReadLine();
                             if (s.Length == 0) break;
                             scanner.Includes.Add(s);
                         }
            
                         while(true) {
                             Console.Write("Exclude pattern : ");
                             s = Console.ReadLine();
                             if (s.Length == 0) break;
                             scanner.Excludes.Add(s);
                         }
            
                         foreach (string name in scanner.FileNames)
                             Console.WriteLine("file:" + name);
                         foreach (string name in scanner.DirectoryNames)
                             Console.WriteLine("dir :" + name);
            
                         Console.WriteLine("");
                     }
                 </code>
             </example>
        </member>
        <member name="M:NAnt.Core.DirectoryScanner.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.DirectoryScanner"/>.
            </summary>
            <remarks>
            On unix, patterns are matching case-sensitively; otherwise, they
            are matched case-insensitively.
            </remarks>
        </member>
        <member name="M:NAnt.Core.DirectoryScanner.#ctor(System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.DirectoryScanner"/>
            specifying whether patterns are to be match case-sensitively.
            </summary>
            <param name="caseSensitive">Specifies whether patterns are to be matched case-sensititely.</param>
        </member>
        <member name="M:NAnt.Core.DirectoryScanner.Clone">
            <summary>
            Creates a shallow copy of the <see cref="T:NAnt.Core.DirectoryScanner"/>.
            </summary>
            <returns>
            A shallow copy of the <see cref="T:NAnt.Core.DirectoryScanner"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.DirectoryScanner.Scan">
            <summary>
            Uses <see cref="P:NAnt.Core.DirectoryScanner.Includes"/> and <see cref="P:NAnt.Core.DirectoryScanner.Excludes"/> search criteria (relative to 
            <see cref="P:NAnt.Core.DirectoryScanner.BaseDirectory"/> or absolute), to search for filesystem objects.
            </summary>
        </member>
        <member name="M:NAnt.Core.DirectoryScanner.ConvertPatterns(System.Collections.Specialized.StringCollection,System.Collections.ArrayList,System.Collections.Specialized.StringCollection,System.Boolean)">
            <summary>
            Parses specified NAnt search patterns for search directories and 
            corresponding regex patterns.
            </summary>
            <param name="nantPatterns">In. NAnt patterns. Absolute or relative paths.</param>
            <param name="regexPatterns">Out. Regex patterns. Absolute canonical paths.</param>
            <param name="nonRegexFiles">Out. Non-regex files. Absolute canonical paths.</param>
            <param name="addSearchDirectories">In. Whether to allow a pattern to add search directories.</param>
        </member>
        <member name="M:NAnt.Core.DirectoryScanner.ParseSearchDirectoryAndPattern(System.Boolean,System.String,System.String@,System.Boolean@,System.Boolean@,System.String@)">
            <summary>
            Given a NAnt search pattern returns a search directory and an regex 
            search pattern.
            </summary>
            <param name="isInclude">Whether this pattern is an include or exclude pattern</param>
            <param name="originalNAntPattern">NAnt searh pattern (relative to the Basedirectory OR absolute, relative paths refering to parent directories ( ../ ) also supported)</param>
            <param name="searchDirectory">Out. Absolute canonical path to the directory to be searched</param>
            <param name="recursive">Out. Whether the pattern is potentially recursive or not</param>
            <param name="isRegex">Out. Whether this is a regex pattern or not</param>
            <param name="regexPattern">Out. Regex search pattern (absolute canonical path)</param>
        </member>
        <member name="M:NAnt.Core.DirectoryScanner.ScanDirectory(System.String,System.Boolean)">
            <summary>
            Searches a directory recursively for files and directories matching 
            the search criteria.
            </summary>
            <param name="path">Directory in which to search (absolute canonical path)</param>
            <param name="recursive">Whether to scan recursively or not</param>
        </member>
        <member name="M:NAnt.Core.DirectoryScanner.ToRegexPattern(System.String)">
            <summary>
            Converts search pattern to a regular expression pattern.
            </summary>
            <param name="nantPattern">Search pattern relative to the search directory.</param>
            <returns>Regular expresssion</returns>
        </member>
        <member name="P:NAnt.Core.DirectoryScanner.CaseSensitive">
            <summary>
            Gets or set a value indicating whether or not to use case-sensitive
            pattern matching.
            </summary>
        </member>
        <member name="P:NAnt.Core.DirectoryScanner.Includes">
            <summary>
            Gets the collection of include patterns.
            </summary>
        </member>
        <member name="P:NAnt.Core.DirectoryScanner.Excludes">
            <summary>
            Gets the collection of exclude patterns.
            </summary>
        </member>
        <member name="P:NAnt.Core.DirectoryScanner.BaseDirectory">
            <summary>
            The base directory to scan. The default is the 
            <see cref="P:System.Environment.CurrentDirectory">current directory</see>.
            </summary>
        </member>
        <member name="P:NAnt.Core.DirectoryScanner.FileNames">
            <summary>
            Gets the list of files that match the given patterns.
            </summary>
        </member>
        <member name="P:NAnt.Core.DirectoryScanner.DirectoryNames">
            <summary>
            Gets the list of directories that match the given patterns.
            </summary>
        </member>
        <member name="P:NAnt.Core.DirectoryScanner.ScannedDirectories">
            <summary>
            Gets the list of directories that were scanned for files.
            </summary>
        </member>
        <member name="P:NAnt.Core.DirectoryScanner.IsEverythingIncluded">
            <summary>
            Indicates whether or not the directory scanner included everything
            that it scanned.
            </summary>
        </member>
        <member name="M:NAnt.Core.StringCollectionWithGoodToString.Clone">
            <summary>
            Creates a shallow copy of the <see cref="T:NAnt.Core.StringCollectionWithGoodToString"/>.
            </summary>
            <returns>
            A shallow copy of the <see cref="T:NAnt.Core.StringCollectionWithGoodToString"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.StringCollectionWithGoodToString.ToString">
            <summary>
            Creates a string representing a list of the strings in the collection.
            </summary>
            <returns>
            A string that represents the contents.
            </returns>
        </member>
        <member name="M:NAnt.Core.DirScannerStringCollection.#ctor(System.Boolean)">
            <summary>
            Initialize a new instance of the <see cref="T:NAnt.Core.DirScannerStringCollection"/>
            class specifying whether or not string comparison should be
            case-sensitive.
            </summary>
            <param name="caseSensitive">Specifies whether or not string comparison should be case-sensitive.</param>
        </member>
        <member name="M:NAnt.Core.DirScannerStringCollection.Clone">
            <summary>
            Creates a shallow copy of the <see cref="T:NAnt.Core.DirScannerStringCollection"/>.
            </summary>
            <returns>
            A shallow copy of the <see cref="T:NAnt.Core.DirScannerStringCollection"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.DirScannerStringCollection.Contains(System.String)">
            <summary>
            Determines whether the specified string is in the 
            <see cref="T:NAnt.Core.DirScannerStringCollection"/>.
            </summary>
            <param name="value">The string to locate in the <see cref="T:NAnt.Core.DirScannerStringCollection"/>. The value can be <see langword="null"/>.</param>
            <returns>
            <seee langword="true"/> if value is found in the <see cref="T:NAnt.Core.DirScannerStringCollection"/>; otherwise, <see langword="false"/>.
            </returns>
            <remarks>
            String comparisons within the <see cref="T:NAnt.Core.DirScannerStringCollection"/>
            are only case-sensitive if <see cref="P:NAnt.Core.DirScannerStringCollection.CaseSensitive"/> is
            <see langword="true"/>
            </remarks>
        </member>
        <member name="M:NAnt.Core.DirScannerStringCollection.IndexOf(System.String)">
            <summary>
            Searches for the specified string and returns the zero-based index 
            of the first occurrence within the <see cref="T:NAnt.Core.DirScannerStringCollection"/>.
            </summary>
            <param name="value">The string to locate. The value can be <see langword="null"/>.</param>
            <returns>
            The zero-based index of the first occurrence of <paramref name="value"/> 
            in the <see cref="T:NAnt.Core.DirScannerStringCollection"/>, if found; otherwise, -1.
            </returns>
            <remarks>
            String comparisons within the <see cref="T:NAnt.Core.DirScannerStringCollection"/>
            are only case-sensitive if <see cref="P:NAnt.Core.DirScannerStringCollection.CaseSensitive"/> is
            <see langword="true"/>.
            </remarks>
        </member>
        <member name="P:NAnt.Core.DirScannerStringCollection.CaseSensitive">
            <summary>
            Gets a value indicating whether string comparison is case-sensitive.
            </summary>
            <value>
            A value indicating whether string comparison is case-sensitive.
            </value>
        </member>
        <member name="M:NAnt.Core.ExpressionEvaluator.GetPropertyValue(System.String)">
            <summary>
            Gets the value of the specified property.
            </summary>
            <param name="propertyName">The name of the property to get the value of.</param>
            <returns>
            The value of the specified property.
            </returns>
        </member>
        <member name="T:NAnt.Core.ExpressionTokenizer">
            <summary>
            Splits an input string into a sequence of tokens used during parsing.
            </summary>
        </member>
        <member name="T:NAnt.Core.ExpressionTokenizer.TokenType">
            <summary>
            Available tokens
            </summary>
        </member>
        <member name="T:NAnt.Core.FrameworkInfo">
            <summary>
            Encalsulates information about installed frameworks incuding version 
            information and directory locations for finding tools.
            </summary>
        </member>
        <member name="M:NAnt.Core.FrameworkInfo.ResolveAssembly(System.String)">
            <summary>
            Resolves the specified assembly to a full path by matching it
            against the reference assemblies.
            </summary>
            <param name="fileName">The file name of the assembly to resolve (without path information).</param>
            <returns>
            An absolute path to the assembly, or <see langword="null" /> if the
            assembly could not be found or no reference assemblies are configured
            for the current framework.
            </returns>
            <remarks>
            Whether the file name is matched case-sensitively depends on the
            operating system.
            </remarks>
        </member>
        <member name="M:NAnt.Core.FrameworkInfo.GetToolPath(System.String)">
            <summary>
            Searches the list of tool paths of the current framework for the
            given file, and returns the absolute path if found.
            </summary>
            <param name="tool">The file name of the tool to search for.</param>
            <returns>
            The absolute path to <paramref name="tool"/> if found in one of the
            configured tool paths; otherwise, <see langword="null"/>.
            </returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="tool"/> is <see langword="null"/>.</exception>
            <remarks>
              <para>
              The configured tool paths are scanned in the order in which they
              are defined in the framework configuration.
              </para>
              <para>
              The file name of the tool to search should include the extension.
              </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.FrameworkInfo.GetXmlAttributeValue(System.Xml.XmlNode,System.String)">
            <summary>
            Gets the value of the specified attribute from the specified node.
            </summary>
            <param name="xmlNode">The node of which the attribute value should be retrieved.</param>
            <param name="attributeName">The attribute of which the value should be returned.</param>
            <returns>
            The value of the attribute with the specified name or <see langword="null" />
            if the attribute does not exist or has no value.
            </returns>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.Name">
            <summary>
            Gets the name of the framework.
            </summary>
            <value>
            The name of the framework.
            </value>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.Family">
            <summary>
            Gets the family of the framework.
            </summary>
            <value>
            The family of the framework.
            </value>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.Description">
            <summary>
            Gets the description of the framework.
            </summary>
            <value>
            The description of the framework.
            </value>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.Vendor">
            <summary>
            Gets the vendor of the framework.
            </summary>
            <value>
            The vendor of the framework.
            </value>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.Version">
            <summary>
            Gets the version of the framework.
            </summary>
            <value>
            The version of the framework.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
            <remarks>
            When <see cref="P:NAnt.Core.FrameworkInfo.Version"/> is not configured, the framework is not
            considered valid.
            </remarks>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.ClrVersion">
            <summary>
            Gets the Common Language Runtime version of the framework.
            </summary>
            <value>
            The Common Language Runtime version of the framework.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
            <remarks>
            When <see cref="P:NAnt.Core.FrameworkInfo.ClrVersion"/> is <see langword="null"/>, the
            framework is not considered valid.
            </remarks>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.ClrType">
            <summary>
            Gets the CLR type of the framework.
            </summary>
            <value>
            The CLR type of the framework.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.VisualStudioVersion">
            <summary>
            Gets the Visual Studio version that corresponds with this
            framework.
            </summary>
            <value>
            The Visual Studio version that corresponds with this framework.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
            <exception cref="T:NAnt.Core.BuildException">There is no version of Visual Studio that corresponds with this framework.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.FrameworkDirectory">
            <summary>
            Gets the base directory of the framework tools for the framework.
            </summary>
            <value>
            The base directory of the framework tools for the framework.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.Runtime">
            <summary>
            Gets the runtime information for this framework.
            </summary>
            <value>
            The runtime information for the framework or <see langword="null"/>
            if no runtime information is configured for the framework.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.FrameworkAssemblyDirectory">
            <summary>
            Gets the directory where the system assemblies for the framework
            are located.
            </summary>
            <value>
            The directory where the system assemblies for the framework are 
            located.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.SdkDirectory">
            <summary>
            Gets the directory containing the SDK tools for the framework.
            </summary>
            <value>
            The directory containing the SDK tools for the framework or a null 
            reference if the configured sdk directory does not exist, or is not
            valid.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.Project">
            <summary>
            Gets the <see cref="P:NAnt.Core.FrameworkInfo.Project"/> used to initialize this framework.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.FrameworkInfo.Project"/> used to initialize this framework.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.TaskAssemblies">
            <summary>
            Gets the set of assemblies and directories that should scanned for
            NAnt tasks, types or functions.
            </summary>
            <value>
            The set of assemblies and directories that should be scanned for 
            NAnt tasks, types or functions.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.IsValid">
            <summary>
            Returns a value indicating whether the current framework is valid.
            </summary>
            <value>
            <see langword="true" /> if the framework is installed and correctly
            configured; otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.ReferenceAssemblies">
            <summary>
            Gets the reference assemblies for the current framework.
            </summary>
            <value>
            The reference assemblies for the current framework.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.ToolPaths">
            <summary>
            Gets the tool paths for the current framework.
            </summary>
            <value>
            The tool paths for the current framework.
            </value>
            <exception cref="T:System.ArgumentException">The framework is not valid.</exception>
        </member>
        <member name="P:NAnt.Core.FrameworkInfo.NamespaceManager">
            <summary>
            Gets the <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </summary>
            <value>
            The <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </value>
            <remarks>
            The <see cref="P:NAnt.Core.FrameworkInfo.NamespaceManager"/> defines the current namespace 
            scope and provides methods for looking up namespace information.
            </remarks>
        </member>
        <member name="M:NAnt.Core.FrameworkInfoDictionary.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.FrameworkInfoDictionary"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.FrameworkInfoDictionary.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.FrameworkInfoDictionary"/> class
            with the specified capacity.
            </summary>
        </member>
        <member name="T:NAnt.Core.FrameworkTypes">
            <summary>
            Defines the types of frameworks.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.NotInstalled">
            <summary>
            Frameworks that are supported on the current platform, but are not
            installed.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.Installed">
            <summary>
            Frameworks that are installed on the current system.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.InstallStateMask">
            <summary>
            Retrieves installation state attributes.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.Desktop">
            <summary>
            Frameworks that typically target full desktop devices.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.Compact">
            <summary>
            Frameworks that target compact devices.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.Browser">
            <summary>
            Frameworks that run in a browser.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.DeviceMask">
            <summary>
            Retrieves device attributes.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.Mono">
            <summary>
            Frameworks released as part of the open-source <see href="http://www.mono-project.com">Mono</see>
            project.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.MS">
            <summary>
            Frameworks released by Microsoft.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.VendorMask">
            <summary>
            Retrieves vendor attributes.
            </summary>
        </member>
        <member name="F:NAnt.Core.FrameworkTypes.All">
            <summary>
            All frameworks supported on the current platform, regarless of their
            installation state, target device or vendor.
            </summary>
        </member>
        <member name="T:NAnt.Core.Location">
            <summary>
            Stores the file name, line number and column number to record a position 
            in a text file.
            </summary>
        </member>
        <member name="M:NAnt.Core.Location.#ctor(System.String,System.Int32,System.Int32)">
            <summary>
            Creates a location consisting of a file name, line number and 
            column number.
            </summary>
            <remarks>
            <paramref name="fileName" /> can be a local URI resource, e.g., file:///C:/WINDOWS/setuplog.txt.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Location.#ctor(System.String)">
            <summary>
            Creates a location consisting of a file name.
            </summary>
            <remarks>
            <paramref name="fileName" /> can be a local URI resource, e.g., file:///C:/WINDOWS/setuplog.txt.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Location.#ctor">
            <summary>
            Creates an "unknown" location.
            </summary>
        </member>
        <member name="M:NAnt.Core.Location.Init(System.String,System.Int32,System.Int32)">
            <summary>Private Init function.</summary>
        </member>
        <member name="M:NAnt.Core.Location.ToString">
             <summary>
             Returns the file name, line number and a trailing space. An error
             message can be appended easily. For unknown locations, returns
             an empty string.
            </summary>
        </member>
        <member name="P:NAnt.Core.Location.FileName">
            <summary>
            Gets a string containing the file name for the location.
            </summary>
            <remarks>
            The file name includes both the file path and the extension.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Location.LineNumber">
            <summary>
            Gets the line number for the location.
            </summary>
            <remarks>
            Lines start at 1.  Will be zero if not specified.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Location.ColumnNumber">
            <summary>
            Gets the column number for the location.
            </summary>
            <remarks>
            Columns start a 1.  Will be zero if not specified.
            </remarks>
        </member>
        <member name="T:NAnt.Core.LocationMap">
            <summary>
            Maps XML nodes to the text positions from their original source.
            </summary>
        </member>
        <member name="M:NAnt.Core.LocationMap.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.LocationMap"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.LocationMap.FileIsMapped(System.String)">
            <summary>
            Determines if a file has been loaded by the current project. 
            </summary>
            <param name="fileOrUri">The file to check.</param>
            <returns>
            <see langword="true" /> if the specified file has already been loaded
            by the current project; otherwise, <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.LocationMap.Add(System.Xml.XmlDocument)">
            <summary>
            Adds an <see cref="T:System.Xml.XmlDocument"/> to the map.
            </summary>
            <remarks>
            An <see cref="T:System.Xml.XmlDocument"/> can only be added to the map once.
            </remarks>
        </member>
        <member name="M:NAnt.Core.LocationMap.GetLocation(System.Xml.XmlNode)">
            <summary>
            Returns the <see cref="T:NAnt.Core.Location"/> in the XML file for the given node.
            </summary>
            <remarks>
            The <paramref name="node"/> must be from an <see cref="T:System.Xml.XmlDocument"/> 
            that has been added to the map.
            </remarks>
        </member>
        <member name="T:NAnt.Core.LocationMap.TextPosition">
            <summary>
            Represents a position in the build file.
            </summary>
        </member>
        <member name="M:NAnt.Core.LocationMap.TextPosition.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.LocationMap.TextPosition"/>
            with the speified line and column.
            </summary>
            <param name="line">The line coordinate of the position.</param>
            <param name="column">The column coordinate of the position.</param>
        </member>
        <member name="F:NAnt.Core.LocationMap.TextPosition.Line">
            <summary>
            The line coordinate of the position.
            </summary>
        </member>
        <member name="F:NAnt.Core.LocationMap.TextPosition.Column">
            <summary>
            The column coordinate of the position.
            </summary>
        </member>
        <member name="T:NAnt.Core.Level">
            <summary>
            Defines the set of levels recognised by the NAnt logging system.
            </summary>
        </member>
        <member name="F:NAnt.Core.Level.Debug">
            <summary>
            Designates fine-grained informational events that are most useful 
            to debug a build process.
            </summary>
        </member>
        <member name="F:NAnt.Core.Level.Verbose">
            <summary>
            Designates events that offer a more detailed view of the build 
            process.
            </summary>
        </member>
        <member name="F:NAnt.Core.Level.Info">
            <summary>
            Designates informational events that are useful for getting a 
            high-level view of the build process.
            </summary>
        </member>
        <member name="F:NAnt.Core.Level.Warning">
            <summary>
            Designates potentionally harmful events.
            </summary>
        </member>
        <member name="F:NAnt.Core.Level.Error">
            <summary>
            Designates error events.
            </summary>
        </member>
        <member name="F:NAnt.Core.Level.None">
            <summary>
            Can be used to suppress all messages.
            </summary>
            <remarks>
            No events should be logged with this <see cref="T:NAnt.Core.Level"/>.
            </remarks>
        </member>
        <member name="T:NAnt.Core.LevelConverter">
            <summary>
            Specialized <see cref="T:System.ComponentModel.EnumConverter"/> for <see cref="T:NAnt.Core.Level"/>
            that ignores case when converting from string.
            </summary>
        </member>
        <member name="M:NAnt.Core.LevelConverter.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.LevelConverter"/>
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.LevelConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
            <summary>
            Converts the given object to the type of this converter, using the 
            specified context and culture information.
            </summary>
            <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext"/> that provides a format context.</param>
            <param name="culture">A <see cref="T:System.Globalization.CultureInfo"/> object. If a <see langword="null"/> is passed, the current culture is assumed.</param>
            <param name="value">The <see cref="T:System.Object"/> to convert.</param>
            <returns>
            An <see cref="T:System.Object"/> that represents the converted value.
            </returns>
        </member>
        <member name="T:NAnt.Core.BuildEventArgs">
            <summary>
            Class representing an event occurring during a build.
            </summary>
            <remarks>
            <para>
            An event is built by specifying either a project, a task or a target.
            </para>
            <para>
            A <see cref="P:NAnt.Core.BuildEventArgs.Project"/> level event will only have a <see cref="P:NAnt.Core.BuildEventArgs.Project"/> 
            reference.
            </para>
            <para>
            A <see cref="P:NAnt.Core.BuildEventArgs.Target"/> level event will have <see cref="P:NAnt.Core.BuildEventArgs.Project"/> and 
            <see cref="P:NAnt.Core.BuildEventArgs.Target"/> references.
            </para>
            <para>
            A <see cref="P:NAnt.Core.BuildEventArgs.Task"/> level event will have <see cref="P:NAnt.Core.BuildEventArgs.Project"/>, 
            <see cref="P:NAnt.Core.BuildEventArgs.Target"/> and <see cref="P:NAnt.Core.BuildEventArgs.Task"/> references.
            </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.BuildEventArgs.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildEventArgs"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.BuildEventArgs.#ctor(NAnt.Core.Project)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildEventArgs"/>
            class for a <see cref="P:NAnt.Core.BuildEventArgs.Project"/> level event.
            </summary>
            <param name="project">The <see cref="P:NAnt.Core.BuildEventArgs.Project"/> that emitted the event.</param>
        </member>
        <member name="M:NAnt.Core.BuildEventArgs.#ctor(NAnt.Core.Target)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildEventArgs"/>
            class for a <see cref="P:NAnt.Core.BuildEventArgs.Target"/> level event.
            </summary>
            <param name="target">The <see cref="P:NAnt.Core.BuildEventArgs.Target"/> that emitted the event.</param>
        </member>
        <member name="M:NAnt.Core.BuildEventArgs.#ctor(NAnt.Core.Task)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildEventArgs"/>
            class for a <see cref="P:NAnt.Core.BuildEventArgs.Task"/> level event.
            </summary>
            <param name="task">The <see cref="P:NAnt.Core.BuildEventArgs.Task"/> that emitted the event.</param>
        </member>
        <member name="P:NAnt.Core.BuildEventArgs.Message">
            <summary>
            Gets or sets the message associated with this event.
            </summary>
            <value>
            The message associated with this event.
            </value>
        </member>
        <member name="P:NAnt.Core.BuildEventArgs.MessageLevel">
            <summary>
            Gets or sets the priority level associated with this event.
            </summary>
            <value>
            The priority level associated with this event.
            </value>
        </member>
        <member name="P:NAnt.Core.BuildEventArgs.Exception">
            <summary>
            Gets or sets the <see cref="P:NAnt.Core.BuildEventArgs.Exception"/> associated with this event.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.BuildEventArgs.Exception"/> associated with this event.
            </value>
        </member>
        <member name="P:NAnt.Core.BuildEventArgs.Project">
            <summary>
            Gets the <see cref="P:NAnt.Core.BuildEventArgs.Project"/> that fired this event.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.BuildEventArgs.Project"/> that fired this event.
            </value>
        </member>
        <member name="P:NAnt.Core.BuildEventArgs.Target">
            <summary>
            Gets the <see cref="P:NAnt.Core.BuildEventArgs.Target"/> that fired this event.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.BuildEventArgs.Target"/> that fired this event, or a null reference 
            if this is a <see cref="P:NAnt.Core.BuildEventArgs.Project"/> level event.
            </value>
        </member>
        <member name="P:NAnt.Core.BuildEventArgs.Task">
            <summary>
            Gets the <see cref="P:NAnt.Core.BuildEventArgs.Task"/> that fired this event.
            </summary>
            <value>
            The <see cref="P:NAnt.Core.BuildEventArgs.Task"/> that fired this event, or <see langword="null"/>
            if this is a <see cref="P:NAnt.Core.BuildEventArgs.Project"/> or <see cref="P:NAnt.Core.BuildEventArgs.Target"/> level 
            event.
            </value>
        </member>
        <member name="T:NAnt.Core.BuildEventHandler">
            <summary>
            Represents the method that handles the build events.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> that contains the event data.</param>
        </member>
        <member name="T:NAnt.Core.IBuildListener">
            <summary>
            Instances of classes that implement this interface can register to be 
            notified when things happen during a build.
            </summary>
        </member>
        <member name="M:NAnt.Core.IBuildListener.BuildStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a build has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event is fired before any targets have started.
            </remarks>
        </member>
        <member name="M:NAnt.Core.IBuildListener.BuildFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that the last target has finished.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event will still be fired if an error occurred during the build.
            </remarks>
        </member>
        <member name="M:NAnt.Core.IBuildListener.TargetStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a target has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.IBuildListener.TargetFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a target has finished.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event will still be fired if an error occurred during the build.
            </remarks>
        </member>
        <member name="M:NAnt.Core.IBuildListener.TaskStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a task has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.IBuildListener.TaskFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a task has finished.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event will still be fired if an error occurred during the build.
            </remarks>
        </member>
        <member name="M:NAnt.Core.IBuildListener.MessageLogged(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a message has been logged.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
        </member>
        <member name="T:NAnt.Core.IBuildLogger">
            <summary>
            Interface used by NAnt to log the build output. 
            </summary>
            <remarks>
            Depending on the supplied command-line arguments, NAnt will set the
            <see cref="P:NAnt.Core.IBuildLogger.OutputWriter"/> to <see cref="P:System.Console.Out"/> or a
            <see cref="T:System.IO.StreamWriter"/>  with a file as backend store.
            </remarks>
        </member>
        <member name="M:NAnt.Core.IBuildLogger.Flush">
            <summary>
            Flushes buffered build events or messages to the underlying storage.
            </summary>
        </member>
        <member name="P:NAnt.Core.IBuildLogger.Threshold">
            <summary>
            Gets or sets the highest level of message this logger should respond 
            to.
            </summary>
            <value>The highest level of message this logger should respond to.</value>
            <remarks>
            Only messages with a message level higher than or equal to the given 
            level should actually be written to the log.
            </remarks>
        </member>
        <member name="P:NAnt.Core.IBuildLogger.EmacsMode">
            <summary>
            Gets or sets a value indicating whether to produce emacs (and other
            editor) friendly output.
            </summary>
            <value>
            <see langword="true" /> if output is to be unadorned so that emacs 
            and other editors can parse files names, etc.
            </value>
        </member>
        <member name="P:NAnt.Core.IBuildLogger.OutputWriter">
            <summary>
            Gets or sets the <see cref="T:System.IO.TextWriter"/> to which the logger is 
            to send its output.
            </summary>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.DefaultLogger"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.Flush">
            <summary>
            Flushes buffered build events or messages to the underlying storage.
            </summary>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.BuildStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a build has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event is fired before any targets have started.
            </remarks>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.BuildFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that the last target has finished.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event will still be fired if an error occurred during the build.
            </remarks>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.TargetStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a target has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.TargetFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a task has finished.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event will still be fired if an error occurred during the build.
            </remarks>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.TaskStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a task has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.TaskFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a task has finished.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event will still be fired if an error occurred during the build.
            </remarks>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.MessageLogged(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a message has been logged.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            Only messages with a priority higher or equal to the threshold of 
            the logger will actually be output in the build log.
            </remarks>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.Log(System.String)">
            <summary>
            Empty implementation which allows derived classes to receive the
            output that is generated in this logger.
            </summary>
            <param name="message">The message being logged.</param>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.OutputMessage(NAnt.Core.Level,System.String,System.Int32)">
            <summary>
            Outputs an indented message to the build log if its priority is 
            greather than or equal to the <see cref="P:NAnt.Core.DefaultLogger.Threshold"/> of the 
            logger.
            </summary>
            <param name="messageLevel">The priority of the message to output.</param>
            <param name="message">The message to output.</param>
            <param name="indentationLength">The number of characters that the message should be indented.</param>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.OutputMessage(NAnt.Core.BuildEventArgs)">
            <summary>
            Outputs an indented message to the build log if its priority is 
            greather than or equal to the <see cref="P:NAnt.Core.DefaultLogger.Threshold"/> of the 
            logger.
            </summary>
            <param name="e">The event to output.</param>
        </member>
        <member name="M:NAnt.Core.DefaultLogger.OutputMessage(NAnt.Core.BuildEventArgs,System.Int32)">
            <summary>
            Outputs an indented message to the build log if its priority is 
            greather than or equal to the <see cref="P:NAnt.Core.DefaultLogger.Threshold"/> of the 
            logger.
            </summary>
            <param name="e">The event to output.</param>
            <param name="indentationLength">The number of characters that the message should be indented.</param>
        </member>
        <member name="F:NAnt.Core.DefaultLogger._buildReports">
            <summary>
            Holds a stack of reports for all running builds.
            </summary>
        </member>
        <member name="P:NAnt.Core.DefaultLogger.Threshold">
            <summary>
            Gets or sets the highest level of message this logger should respond 
            to.
            </summary>
            <value>
            The highest level of message this logger should respond to.
            </value>
            <remarks>
            Only messages with a message level higher than or equal to the given 
            level should be written to the log.
            </remarks>
        </member>
        <member name="P:NAnt.Core.DefaultLogger.EmacsMode">
            <summary>
            Gets or sets a value indicating whether to produce emacs (and other
            editor) friendly output.
            </summary>
            <value>
            <see langword="true" /> if output is to be unadorned so that emacs 
            and other editors can parse files names, etc. The default is
            <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.DefaultLogger.OutputWriter">
            <summary>
            Gets or sets the <see cref="T:System.IO.TextWriter"/> to which the logger is 
            to send its output.
            </summary>
            <value>
            The <see cref="T:System.IO.TextWriter"/> to which the logger sends its output.
            </value>
        </member>
        <member name="T:NAnt.Core.BuildReport">
            <summary>
            Used to store information about a build, to allow better reporting to 
            the user.
            </summary>
        </member>
        <member name="F:NAnt.Core.BuildReport.Errors">
            <summary>
            Errors encountered so far.
            </summary>
        </member>
        <member name="F:NAnt.Core.BuildReport.Warnings">
            <summary>
            Warnings encountered so far.
            </summary>
        </member>
        <member name="F:NAnt.Core.BuildReport.StartTime">
            <summary>
            The start time of the build process.
            </summary>
        </member>
        <member name="T:NAnt.Core.MailLogger">
            <summary>
            Buffers log messages from DefaultLogger, and sends an e-mail with the
            results.
            </summary>
            <remarks>
            The following properties are used to send the mail :
            <list type="table">
                <listheader>
                    <term>Property</term>
                    <description>Description</description>
                </listheader>
                <item>
                    <term>MailLogger.mailhost</term>
                    <description>Mail server to use. [default: localhost]</description>
                </item>
                <item>
                    <term>MailLogger.from</term>
                    <description>The address of the e-mail sender.</description>
                </item>
                <item>
                    <term>MailLogger.failure.notify</term>
                    <description>Send build failure e-mails ? [default: true]</description>
                </item>
                <item>
                    <term>MailLogger.success.notify</term>
                    <description>Send build success e-mails ? [default: true]</description>
                </item>
                <item>
                    <term>MailLogger.failure.to</term>
                    <description>The address to send build failure messages to.</description>
                </item>
                <item>
                    <term>MailLogger.success.to</term>
                    <description>The address to send build success messages to.</description>
                </item>
                <item>
                    <term>MailLogger.failure.subject</term>
                    <description>The subject of build failure messages. [default: "Build Failure"]</description>
                </item>
                <item>
                    <term>MailLogger.success.subject</term>
                    <description>The subject of build success messages. [default: "Build Success"]</description>
                </item>
                <item>
                    <term>MailLogger.success.attachments</term>
                    <description>The ID of a fileset holdng set of files to attach when the build is successful.</description>
                </item>
                <item>
                    <term>MailLogger.failure.attachments</term>
                    <description>The ID of a fileset holdng set of files to attach when the build fails.</description>
                </item>
                <item>
                    <term>MailLogger.body.encoding</term>
                    <description>The encoding type of the body of the e-mail message. [default: system's ANSI code page]</description>
                </item>
                <item>
                    <term>MailLogger.smtp.username</term>
                    <description>The name of the user to login to the SMTP server.</description>
                </item>
                <item>
                    <term>MailLogger.smtp.password</term>
                    <description>The password of the specified user.</description>
                </item>
                <item>
                    <term>MailLogger.smtp.enablessl</term>
                    <description>Specifies whether to use SSL to encrypt the connection. [default: false]</description>
                </item>
                <item>
                    <term>MailLogger.smtp.port</term>
                    <description>The SMTP server port to connect to. [default: 25]</description>
                </item>
            </list>
            </remarks>
        </member>
        <member name="M:NAnt.Core.MailLogger.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.MailLogger"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.MailLogger.BuildStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a build has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event is fired before any targets have started.
            </remarks>
        </member>
        <member name="M:NAnt.Core.MailLogger.BuildFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that the last target has finished, and send an e-mail with 
            the build results.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.MailLogger.Log(System.String)">
            <summary>
            Receives and buffers log messages.
            </summary>
            <param name="message">The message being logged.</param>
        </member>
        <member name="M:NAnt.Core.MailLogger.GetPropertyValue(NAnt.Core.PropertyDictionary,System.String,System.String,System.Boolean)">
            <summary>
            Gets the value of the specified property.
            </summary>
            <param name="properties">Properties to obtain value from.</param>
            <param name="name">Suffix of property name.  "MailLogger" will be prepended internally.</param>
            <param name="defaultValue">Value returned if property is not present in <paramref name="properties"/>.</param>
            <param name="required">Value indicating whether the property should exist, or have a default value set.</param>
            <returns>
            The value of the specified property; or the default value if the 
            property is not present in <paramref name="properties"/>.
            </returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="required"/> is <see langword="true"/>, and the specified property is not present and no default value has been given.</exception>
        </member>
        <member name="F:NAnt.Core.MailLogger._buffer">
            <summary>
            Buffer in which the message is constructed prior to sending.
            </summary>
        </member>
        <member name="F:NAnt.Core.MailLogger._projectStack">
            <summary>
            Holds the stack of currently executing projects.
            </summary>
        </member>
        <member name="T:NAnt.Core.BuildListenerCollection">
            <summary>
            Contains a strongly typed collection of <see cref="T:NAnt.Core.IBuildListener"/> 
            objects.
            </summary>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildListenerCollection"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.#ctor(NAnt.Core.BuildListenerCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildListenerCollection"/> 
            class with the specified <see cref="T:NAnt.Core.BuildListenerCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.#ctor(NAnt.Core.IBuildListener[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildListenerCollection"/> 
            class with the specified array of <see cref="T:NAnt.Core.IBuildListener"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.Add(NAnt.Core.IBuildListener)">
            <summary>
            Adds a <see cref="T:NAnt.Core.IBuildListener"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.IBuildListener"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.AddRange(NAnt.Core.IBuildListener[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.IBuildListener"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.IBuildListener"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.AddRange(NAnt.Core.BuildListenerCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.BuildListenerCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.BuildListenerCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.Contains(NAnt.Core.IBuildListener)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.IBuildListener"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.IBuildListener"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.CopyTo(NAnt.Core.IBuildListener[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.IndexOf(NAnt.Core.IBuildListener)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.IBuildListener"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.IBuildListener"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.IBuildListener"/>. If the <see cref="T:NAnt.Core.IBuildListener"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.Insert(System.Int32,NAnt.Core.IBuildListener)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.IBuildListener"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.IBuildListener"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.BuildListenerEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.BuildListenerCollection.Remove(NAnt.Core.IBuildListener)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.IBuildListener"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.BuildListenerCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="T:NAnt.Core.BuildListenerEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.IBuildListener"/> elements of a <see cref="T:NAnt.Core.BuildListenerCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.BuildListenerEnumerator.#ctor(NAnt.Core.BuildListenerCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.BuildListenerEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.BuildListenerCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.BuildListenerEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.BuildListenerEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.BuildListenerEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.LogWriter">
            <summary>
            Implements a <see cref="T:System.IO.TextWriter"/> for writing information to 
            the NAnt logging infrastructure.
            </summary>
        </member>
        <member name="M:NAnt.Core.LogWriter.#ctor(NAnt.Core.Task,NAnt.Core.Level,System.IFormatProvider)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.LogWriter"/> class 
            for the specified <see cref="T:NAnt.Core.Task"/> with the specified output 
            level and format provider.
            </summary>
            <param name="task">Determines the indentation level.</param>
            <param name="outputLevel">The <see cref="T:NAnt.Core.Level"/> with which messages will be output to the build log.</param>
            <param name="formatProvider">An <see cref="T:System.IFormatProvider"/> object that controls formatting.</param>
        </member>
        <member name="M:NAnt.Core.LogWriter.Write(System.Char[])">
            <summary>
            Writes a character array to the buffer.
            </summary>
            <param name="chars">The character array to write to the text stream.</param>
        </member>
        <member name="M:NAnt.Core.LogWriter.Write(System.String)">
            <summary>
            Writes a string to the buffer.
            </summary>
            <param name="value"></param>
        </member>
        <member name="M:NAnt.Core.LogWriter.WriteLine">
            <summary>
            Writes an empty string to the logging infrastructure.
            </summary>
        </member>
        <member name="M:NAnt.Core.LogWriter.WriteLine(System.String)">
            <summary>
            Writes a string to the logging infrastructure.
            </summary>
            <param name="value">The string to write. If <paramref name="value" /> is a null reference, only the line termination characters are written.</param>
        </member>
        <member name="M:NAnt.Core.LogWriter.WriteLine(System.String,System.Object[])">
            <summary>
            Writes out a formatted string using the same semantics as 
            <see cref="M:string.Format(string, object[])" />.
            </summary>
            <param name="line">The formatting string.</param>
            <param name="args">The object array to write into format string.</param>
        </member>
        <member name="M:NAnt.Core.LogWriter.Flush">
            <summary>
            Causes any buffered data to be written to the logging infrastructure.
            </summary>
        </member>
        <member name="M:NAnt.Core.LogWriter.Close">
            <summary>
            Closes the current writer and releases any system resources 
            associated with the writer.
            </summary>
        </member>
        <member name="M:NAnt.Core.LogWriter.InitializeLifetimeService">
            <summary>
            Obtains a lifetime service object to control the lifetime policy for 
            this instance.
            </summary>
            <returns>
            An object of type <see cref="T:System.Runtime.Remoting.Lifetime.ILease"/> used to control the lifetime 
            policy for this instance. This is the current lifetime service object 
            for this instance if one exists; otherwise, a new lifetime service 
            object initialized with a lease that will never time out.
            </returns>
        </member>
        <member name="P:NAnt.Core.LogWriter.Encoding">
            <summary>
            Gets the <see cref="P:NAnt.Core.LogWriter.Encoding"/> in which the output is written.
            </summary>
            <value>
            The <see cref="T:NAnt.Core.LogWriter"/> always writes output in UTF8 
            encoding.
            </value>
        </member>
        <member name="P:NAnt.Core.LogWriter.OutputLevel">
            <summary>
            Gets the <see cref="T:NAnt.Core.Level"/> with which messages will be output to
            the build log.
            </summary>
        </member>
        <member name="T:NAnt.Core.PathScanner">
            <summary>
            Used to search for files on the PATH. 
            </summary>
            <remarks>
            <para>
            The local directory is not searched (since this would already be covered 
            by normal use of the includes element).
            </para>
            <para>
            Also, advanced pattern matching isn't supported: you need to know the 
            exact name of the file.
            </para>
            </remarks>
        </member>
        <member name="M:NAnt.Core.PathScanner.System#ICloneable#Clone">
            <summary>
            Creates a shallow copy of the <see cref="T:NAnt.Core.PathScanner"/>.
            </summary>
            <returns>
            A shallow copy of the <see cref="T:NAnt.Core.PathScanner"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.PathScanner.Clone">
            <summary>
            Creates a shallow copy of the <see cref="T:NAnt.Core.PathScanner"/>.
            </summary>
            <returns>
            A shallow copy of the <see cref="T:NAnt.Core.PathScanner"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.PathScanner.Add(System.String)">
            <summary>
            Adds a file to the list of files to be scanned for.
            </summary>
            <param name="fileName">The filename or search pattern to add to the list.</param>
        </member>
        <member name="M:NAnt.Core.PathScanner.Scan">
            <summary>
            Scans all direcetories in the PATH environment variable for files.
            </summary>
            <returns>
            List of matching files found in the PATH.
            </returns>
        </member>
        <member name="M:NAnt.Core.PathScanner.Scan(System.String)">
            <summary>
            Scans all directories in the given environment variable for files.
            </summary>
            <param name="name">The environment variable of which the directories should be scanned.</param>
            <returns>
            List of matching files found in the directory of the given 
            environment variable.
            </returns>
        </member>
        <member name="M:NAnt.Core.PathScanner.Clone(System.Collections.Specialized.StringCollection)">
            <summary>
            Creates a shallow copy of the specified <see cref="T:System.Collections.Specialized.StringCollection"/>.
            </summary>
            <param name="stringCollection">The <see cref="T:System.Collections.Specialized.StringCollection"/> that should be copied.</param>
            <returns>
            A shallow copy of the specified <see cref="T:System.Collections.Specialized.StringCollection"/>.
            </returns>
        </member>
        <member name="P:NAnt.Core.PlatformHelper.Is64Bit">
            <summary>
            Returns a value indicating whether NAnt is running in 64-bit mode.
            </summary>
            <value>
            <see langword="true" /> if NAnt is running in 64-bit mode; otherwise,
            <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.PlatformHelper.Is32Bit">
            <summary>
            Returns a value indicating whether NAnt is running in 32-bit mode.
            </summary>
            <remarks>
            Note that even if the platform is 64-bit, NAnt may be running in
            32-bit mode.
            </remarks>
            <value>
            <see langword="true" /> if NAnt is running in 32-bit mode; otherwise,
            <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.PlatformHelper.IsWindows">
            <summary>
            Returns a value indicating whether NAnt is running on Windows.
            </summary>
            <value>
            <see langword="true" /> if NAnt is running on Windows;
            otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="T:NAnt.Core.Project">
            <summary>
            Central representation of a NAnt project.
            </summary>
            <example>
              <para>
              The <see cref="M:NAnt.Core.Project.Run"/> method will initialize the project with the build
              file specified in the constructor and execute the default target.
              </para>
              <code>
                <![CDATA[
            Project p = new Project("foo.build", Level.Info);
            p.Run();
                ]]>
              </code>
            </example>
            <example>
              <para>
              If no target is given, the default target will be executed if specified 
              in the project.
              </para>
              <code>
                <![CDATA[
            Project p = new Project("foo.build", Level.Info);
            p.Execute("build");
                ]]>
              </code>
            </example>
        </member>
        <member name="F:NAnt.Core.Project.Visiting">
            <summary>
            Constant for the "visiting" state, used when traversing a DFS of 
            target dependencies.
            </summary>
        </member>
        <member name="F:NAnt.Core.Project.Visited">
            <summary>
            Constant for the "visited" state, used when traversing a DFS of 
            target dependencies.
            </summary>
        </member>
        <member name="F:NAnt.Core.Project.logger">
            <summary>
            Holds the logger for this class.
            </summary>
        </member>
        <member name="F:NAnt.Core.Project._threshold">
            <summary>
            Holds the default threshold for build loggers.
            </summary>
        </member>
        <member name="M:NAnt.Core.Project.#ctor(System.Xml.XmlDocument,NAnt.Core.Level,System.Int32)">
            <summary>
            Initializes a new <see cref="T:NAnt.Core.Project"/> class with the given 
            document, message threshold and indentation level.
            </summary>
            <param name="doc">Any valid build format will do.</param>
            <param name="threshold">The message threshold.</param>
            <param name="indentLevel">The project indentation level.</param>
        </member>
        <member name="M:NAnt.Core.Project.#ctor(System.Xml.XmlDocument,NAnt.Core.Level,System.Int32,System.Xml.XmlNode)">
            <summary>
            Initializes a new <see cref="T:NAnt.Core.Project"/> class with the given 
            document, message threshold and indentation level, and using 
            the specified <see cref="T:System.Xml.XmlNode"/> to load internal configuration
            settings.
            </summary>
            <param name="doc">Any valid build format will do.</param>
            <param name="threshold">The message threshold.</param>
            <param name="indentLevel">The project indentation level.</param>
            <param name="configurationNode">The <see cref="T:System.Xml.XmlNode"/> NAnt should use to initialize configuration settings.</param>
            <remarks>
            This constructor is useful for developers using NAnt as a class
            library.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Project.#ctor(System.String,NAnt.Core.Level,System.Int32)">
            <summary>
            Initializes a new <see cref="T:NAnt.Core.Project"/> class with the given 
            source, message threshold and indentation level.
            </summary>
            <param name="uriOrFilePath">
            <para>The full path to the build file.</para>
            <para>This can be of any form that <see cref="M:XmlDocument.Load(string)"/> accepts.</para>
            </param>
            <param name="threshold">The message threshold.</param>
            <param name="indentLevel">The project indentation level.</param>
            <remarks>
            If the source is a uri of form 'file:///path' then use the path part.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Project.#ctor(System.String,NAnt.Core.Level,System.Int32,System.Xml.XmlNode)">
            <summary>
            Initializes a new <see cref="T:NAnt.Core.Project"/> class with the given 
            source, message threshold and indentation level, and using 
            the specified <see cref="T:System.Xml.XmlNode"/> to load internal configuration
            settings.
            </summary>
            <param name="uriOrFilePath">
            <para>The full path to the build file.</para>
            <para>This can be of any form that <see cref="M:XmlDocument.Load(string)"/> accepts.</para>
            </param>
            <param name="threshold">The message threshold.</param>
            <param name="indentLevel">The project indentation level.</param>
            <param name="configurationNode">The <see cref="T:System.Xml.XmlNode"/> NAnt should use to initialize configuration settings.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="configurationNode"/> is <see langword="null"/>.</exception>
            <remarks>
            If the source is a uri of form 'file:///path' then use the path part.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Project.#ctor(System.String,NAnt.Core.Project)">
            <summary>
            Initializes a <see cref="T:NAnt.Core.Project"/> as subproject of the specified
            <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="uriOrFilePath">
            <para>The full path to the build file.</para>
            <para>This can be of any form that <see cref="M:XmlDocument.Load(string)"/> accepts.</para>
            </param>
            <param name="parent">The parent <see cref="T:NAnt.Core.Project"/>.</param>
            <remarks>
            Optimized for framework initialization projects, by skipping automatic
            discovery of extension assemblies and framework configuration.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Project.#ctor(System.Xml.XmlDocument)">
            <summary>
            Initializes a <see cref="T:NAnt.Core.Project"/> with <see cref="P:NAnt.Core.Project.Threshold"/>
            set to <see cref="F:NAnt.Core.Level.None"/>, and <see cref="P:NAnt.Core.Project.IndentationLevel"/>
            set to 0.
            </summary>
            <param name="doc">An <see cref="T:System.Xml.XmlDocument"/> containing the build script.</param>
            <remarks>
            Optimized for framework initialization projects, by skipping automatic
            discovery of extension assemblies and framework configuration.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Project.GetFrameworks(NAnt.Core.FrameworkTypes)">
            <summary>
            Gets the list of supported frameworks filtered by the specified
            <see cref="T:NAnt.Core.FrameworkTypes"/> parameter.
            </summary>
            <param name="types">A bitwise combination of <see cref="T:NAnt.Core.FrameworkTypes"/> values that filter the frameworks to retrieve.</param>
            <returns>
            An array of type <see cref="T:NAnt.Core.FrameworkInfo"/> that contains the
            frameworks specified by the <paramref name="types"/> parameter,
            sorted on name.
            </returns>
        </member>
        <member name="M:NAnt.Core.Project.GetLocation(System.Xml.XmlNode)">
            <summary>
            Returns the <see cref="T:NAnt.Core.Location"/> of the given node in an XML
            file loaded by NAnt.
            </summary>
            <remarks>
              <para>
              The <paramref name="node"/> must be from an <see cref="T:System.Xml.XmlDocument"/>
              that has been loaded by NAnt.
              </para>
              <para>
              NAnt also does not process any of the following node types:
              </para>
              <list type="bullet">
                <item>
                    <description><see cref="F:System.Xml.XmlNodeType.Whitespace"/></description>
                </item>
                <item>
                    <description><see cref="F:System.Xml.XmlNodeType.EndElement"/></description>
                </item>
                <item>
                    <description><see cref="F:System.Xml.XmlNodeType.ProcessingInstruction"/></description>
                </item>
                <item>
                    <description><see cref="F:System.Xml.XmlNodeType.XmlDeclaration"/></description>
                </item>
                <item>
                    <description><see cref="F:System.Xml.XmlNodeType.DocumentType"/></description>
                </item>
              </list>
              <para>
              As a result, no location information is available for these nodes.
              </para>
            </remarks>
            <param name="node">The <see cref="T:System.Xml.XmlNode"/> to get the <see cref="T:NAnt.Core.Location"/> for.</param>
            <returns>
            <see cref="T:NAnt.Core.Location"/> of the given node in an XML file loaded by NAnt, or
            <see cref="F:NAnt.Core.Location.UnknownLocation"/> if the node was not loaded from
            an XML file.
            </returns>
            <exception cref="T:System.ArgumentException">
              <para><paramref name="node"/> is from an XML file that was not loaded by NAnt.</para>
              <para>-or</para>
              <para><paramref name="node"/> was not processed by NAnt (eg. an XML declaration).</para>
            </exception>
        </member>
        <member name="M:NAnt.Core.Project.OnBuildStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Dispatches a <see cref="E:NAnt.Core.Project.BuildStarted"/> event to the build listeners 
            for this <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.Project.OnBuildFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Dispatches a <see cref="E:NAnt.Core.Project.BuildFinished"/> event to the build listeners 
            for this <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.Project.OnTargetStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Dispatches a <see cref="E:NAnt.Core.Project.TargetStarted"/> event to the build listeners 
            for this <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.Project.OnTargetFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Dispatches a <see cref="E:NAnt.Core.Project.TargetFinished"/> event to the build listeners 
            for this <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.Project.OnTaskStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Dispatches a <see cref="E:NAnt.Core.Project.TaskStarted"/> event to the build listeners 
            for this <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.Project.OnTaskFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Dispatches the <see cref="E:NAnt.Core.Project.TaskFinished"/> event to the build listeners 
            for this <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.Project.OnMessageLogged(NAnt.Core.BuildEventArgs)">
            <summary>
            Dispatches a <see cref="E:NAnt.Core.Project.MessageLogged"/> event to the build listeners 
            for this <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.Project.Log(NAnt.Core.Level,System.String)">
            <summary>
            Writes a <see cref="T:NAnt.Core.Project"/> level message to the build log with
            the given <see cref="T:NAnt.Core.Level"/>.
            </summary>
            <param name="messageLevel">The <see cref="T:NAnt.Core.Level"/> to log at.</param>
            <param name="message">The message to log.</param>
        </member>
        <member name="M:NAnt.Core.Project.Log(NAnt.Core.Level,System.String,System.Object[])">
            <summary>
            Writes a <see cref="T:NAnt.Core.Project"/> level formatted message to the build 
            log with the given <see cref="T:NAnt.Core.Level"/>.
            </summary>
            <param name="messageLevel">The <see cref="T:NAnt.Core.Level"/> to log at.</param>
            <param name="message">The message to log, containing zero or more format items.</param>
            <param name="args">An <see cref="T:System.Object"/> array containing zero or more objects to format.</param>
        </member>
        <member name="M:NAnt.Core.Project.Log(NAnt.Core.Task,NAnt.Core.Level,System.String)">
            <summary>
            Writes a <see cref="T:NAnt.Core.Task"/> task level message to the build log 
            with the given <see cref="T:NAnt.Core.Level"/>.
            </summary>
            <param name="task">The <see cref="T:NAnt.Core.Task"/> from which the message originated.</param>
            <param name="messageLevel">The <see cref="T:NAnt.Core.Level"/> to log at.</param>
            <param name="message">The message to log.</param>
        </member>
        <member name="M:NAnt.Core.Project.Log(NAnt.Core.Target,NAnt.Core.Level,System.String)">
            <summary>
            Writes a <see cref="T:NAnt.Core.Target"/> level message to the build log with 
            the given <see cref="T:NAnt.Core.Level"/>.
            </summary>
            <param name="target">The <see cref="T:NAnt.Core.Target"/> from which the message orignated.</param>
            <param name="messageLevel">The level to log at.</param>
            <param name="message">The message to log.</param>
        </member>
        <member name="M:NAnt.Core.Project.Execute">
            <summary>
            Executes the default target.
            </summary>
            <remarks>
            No top level error handling is done. Any <see cref="T:NAnt.Core.BuildException"/> 
            will be passed onto the caller.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Project.Execute(System.String)">
            <summary>
            Executes a specific target, and its dependencies.
            </summary>
            <param name="targetName">The name of the target to execute.</param>
            <remarks>
            Global tasks are not executed.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Project.Execute(System.String,System.Boolean)">
            <summary>
            Executes a specific target.
            </summary>
            <param name="targetName">The name of the target to execute.</param>
            <param name="forceDependencies">Whether dependencies should be forced to execute</param>
            <remarks>
            Global tasks are not executed.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Project.Run">
            <summary>
            Executes the default target and wraps in error handling and time 
            stamping.
            </summary>
            <returns>
            <see langword="true" /> if the build was successful; otherwise, 
            <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.Project.CreateTask(System.Xml.XmlNode)">
            <summary>
            Creates a new <see ref="Task"/> from the given <see cref="T:System.Xml.XmlNode"/>.
            </summary>
            <param name="taskNode">The <see cref="T:NAnt.Core.Task"/> definition.</param>
            <returns>The new <see cref="T:NAnt.Core.Task"/> instance.</returns>
        </member>
        <member name="M:NAnt.Core.Project.CreateTask(System.Xml.XmlNode,NAnt.Core.Target)">
            <summary>
            Creates a new <see cref="T:NAnt.Core.Task"/> from the given <see cref="T:System.Xml.XmlNode"/> 
            within a <see cref="T:NAnt.Core.Target"/>.
            </summary>
            <param name="taskNode">The <see cref="T:NAnt.Core.Task"/> definition.</param>
            <param name="target">The owner <see cref="T:NAnt.Core.Target"/>.</param>
            <returns>The new <see cref="T:NAnt.Core.Task"/> instance.</returns>
        </member>
        <member name="M:NAnt.Core.Project.ExpandProperties(System.String,NAnt.Core.Location)">
            <summary>
            Expands a <see cref="T:System.String"/> from known properties.
            </summary>
            <param name="input">The <see cref="T:System.String"/> with replacement tokens.</param>
            <param name="location">The location in the build file. Used to throw more accurate exceptions.</param>
            <returns>The expanded and replaced <see cref="T:System.String"/>.</returns>
        </member>
        <member name="M:NAnt.Core.Project.GetFullPath(System.String)">
            <summary>
            Combines the specified path with the <see cref="P:NAnt.Core.Project.BaseDirectory"/> of 
            the <see cref="T:NAnt.Core.Project"/> to form a full path to file or directory.
            </summary>
            <param name="path">The relative or absolute path.</param>
            <returns>
            A rooted path, or the <see cref="P:NAnt.Core.Project.BaseDirectory"/> of the <see cref="T:NAnt.Core.Project"/> 
            if the <paramref name="path"/> parameter is a null reference.
            </returns>
        </member>
        <member name="M:NAnt.Core.Project.CreateDefaultLogger">
            <summary>
            Creates the default <see cref="T:NAnt.Core.IBuildLogger"/> and attaches it to
            the <see cref="T:NAnt.Core.Project"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Project.Indent">
            <summary>
            Increases the <see cref="P:NAnt.Core.Project.IndentationLevel"/> of the <see cref="T:NAnt.Core.Project"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Project.Unindent">
            <summary>
            Decreases the <see cref="P:NAnt.Core.Project.IndentationLevel"/> of the <see cref="T:NAnt.Core.Project"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Project.DetachBuildListeners">
            <summary>
            Detaches the currently attached <see cref="T:NAnt.Core.IBuildListener"/> instances
            from the <see cref="T:NAnt.Core.Project"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Project.AttachBuildListeners(NAnt.Core.BuildListenerCollection)">
            <summary>
            Attaches the specified build listeners to the <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="listeners">The <see cref="T:NAnt.Core.IBuildListener"/> instances to attach to the <see cref="T:NAnt.Core.Project"/>.</param>
            <remarks>
            The currently attached <see cref="T:NAnt.Core.IBuildListener"/> instances will 
            be detached before the new <see cref="T:NAnt.Core.IBuildListener"/> instances 
            are attached.
            </remarks>
        </member>
        <member name="M:NAnt.Core.Project.CtorHelper(System.Xml.XmlDocument,NAnt.Core.Level,System.Int32,NAnt.Core.Optimizations)">
            <summary>
            Inits stuff:
                <para>TypeFactory: Calls Initialize and AddProject </para>
                <para>Log.IndentSize set to 12</para>
                <para>Project properties are initialized ("nant.* stuff set")</para>
                <list type="nant.items">
                    <listheader>NAnt Props:</listheader>
                    <item>nant.filename</item>
                    <item>nant.version</item>
                    <item>nant.location</item>
                    <item>nant.project.name</item>
                    <item>nant.project.buildfile (if doc has baseuri)</item>
                    <item>nant.project.basedir</item>
                    <item>nant.project.default = defaultTarget</item>
                </list>
            </summary>
            <param name="doc">An <see cref="T:System.Xml.XmlDocument"/> representing the project definition.</param>
            <param name="threshold">The project message threshold.</param>
            <param name="indentLevel">The project indentation level.</param>
            <param name="optimization">Optimization flags.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="doc"/> is <see langword="null"/>.</exception>
        </member>
        <member name="M:NAnt.Core.Project.InitializeProjectDocument(System.Xml.XmlDocument)">
            <summary>
            This method is only meant to be used by the <see cref="T:NAnt.Core.Project"/> 
            class and <see cref="T:NAnt.Core.Tasks.IncludeTask"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.Project.LoadBuildFile(System.String)">
            <summary>
            Creates a new <see cref="T:System.Xml.XmlDocument"/> based on the project 
            definition.
            </summary>
            <param name="uriOrFilePath">
            <para>The full path to the build file.</para>
            <para>This can be of any form that <see cref="M:XmlDocument.Load(string)"/> accepts.</para>
            </param>
            <returns>
            An <see cref="T:System.Xml.XmlDocument"/> based on the specified project 
            definition.
            </returns>
        </member>
        <member name="M:NAnt.Core.Project.ConfigurePlatformProperties">
            <summary>
            Configures the platform properties for the current platform.
            </summary>
            <exception cref="T:NAnt.Core.BuildException">NAnt does not support the current platform.</exception>
        </member>
        <member name="M:NAnt.Core.Project.UpdateTargetFrameworkProperties">
            <summary>
            Updates dependent properties when the <see cref="P:NAnt.Core.Project.TargetFramework"/> 
            is set.
            </summary>
        </member>
        <member name="M:NAnt.Core.Project.TopologicalTargetSort(System.String,NAnt.Core.TargetCollection)">
            <summary>
            Topologically sorts a set of targets.
            </summary>
            <param name="root">The name of the root target. The sort is created in such a way that the sequence of targets up to the root target is the minimum possible such sequence. Must not be <see langword="null"/>.</param>
            <param name="targets">A collection of <see cref="T:NAnt.Core.Target"/> instances.</param>
            <returns>
            A collection of <see cref="T:NAnt.Core.Target"/> instances in sorted order.
            </returns>
            <exception cref="T:NAnt.Core.BuildException">There is a cyclic dependecy among the targets, or a named target does not exist.</exception>
        </member>
        <member name="M:NAnt.Core.Project.TopologicalTargetSort(System.String,NAnt.Core.TargetCollection,System.Collections.Hashtable,System.Collections.Stack,NAnt.Core.TargetCollection)">
            <summary>
            <para>
            Performs a single step in a recursive depth-first-search traversal 
            of the target dependency tree.
            </para>
            <para>
            The current target is first set to the "visiting" state, and pushed
            onto the "visiting" stack.
            </para>
            <para>
            An exception is then thrown if any child of the current node is in 
            the visiting state, as that implies a circular dependency. The 
            exception contains details of the cycle, using elements of the 
            "visiting" stack.
            </para>
            <para>
            If any child has not already been "visited", this method is called
            recursively on it.
            </para>
            <para>
            The current target is then added to the ordered list of targets. 
            Note that this is performed after the children have been visited in 
            order to get the correct order. The current target is set to the 
            "visited" state.
            </para>
            <para>
            By the time this method returns, the ordered list contains the 
            sequence of targets up to and including the current target.
            </para>
            </summary>
            <param name="root">The current target to inspect. Must not be <see langword="null"/>.</param>
            <param name="targets">A collection of <see cref="T:NAnt.Core.Target"/> instances.</param>
            <param name="state">A mapping from targets to states The states in question are "VISITING" and "VISITED". Must not be <see langword="null"/>.</param>
            <param name="visiting">A stack of targets which are currently being visited. Must not be <see langword="null"/>.</param>
            <param name="executeTargets">The list to add target names to. This will end up containing the complete list of depenencies in dependency order. Must not be <see langword="null"/>.</param>
            <exception cref="T:NAnt.Core.BuildException">
              <para>A non-existent target is specified</para>
              <para>-or-</para>
              <para>A circular dependency is detected.</para>
            </exception>
        </member>
        <member name="M:NAnt.Core.Project.CreateCircularException(System.String,System.Collections.Stack)">
            <summary>
            Builds an appropriate exception detailing a specified circular
            dependency.
            </summary>
            <param name="end">The dependency to stop at. Must not be <see langword="null"/>.</param>
            <param name="stack">A stack of dependencies. Must not be <see langword="null"/>.</param>
            <returns>
            A <see cref="T:NAnt.Core.BuildException"/> detailing the specified circular 
            dependency.
            </returns>
        </member>
        <member name="P:NAnt.Core.Project.IndentationLevel">
            <summary>
            Gets or sets the indendation level of the build output.
            </summary>
            <value>
            The indentation level of the build output.
            </value>
            <remarks>
            To change the <see cref="P:NAnt.Core.Project.IndentationLevel"/>, the <see cref="M:NAnt.Core.Project.Indent"/> 
            and <see cref="M:NAnt.Core.Project.Unindent"/> methods should be used.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Project.IndentationSize">
            <summary>
            Gets or sets the indentation size of the build output.
            </summary>
            <value>
            The indendation size of the build output.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.Threshold">
            <summary>
            Gets or sets the default threshold level for build loggers.
            </summary>
            <value>
            The default threshold level for build loggers.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.ProjectName">
            <summary>
            Gets the name of the <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <value>
            The name of the <see cref="T:NAnt.Core.Project"/> or an empty <see cref="T:System.String"/>
            if no name is specified.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.BaseDirectory">
            <summary>
            Gets or sets the base directory used for relative references.
            </summary>
            <value>
            The base directory used for relative references.
            </value>
            <exception cref="T:NAnt.Core.BuildException">The directory is not rooted.</exception>
            <remarks>
            <para>
            The <see cref="P:NAnt.Core.Project.BaseDirectory"/> gets and sets the built-in property 
            named "nant.project.basedir".
            </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Project.NamespaceManager">
            <summary>
            Gets the <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </summary>
            <value>
            The <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </value>
            <remarks>
            The <see cref="P:NAnt.Core.Project.NamespaceManager"/> defines the current namespace 
            scope and provides methods for looking up namespace information.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Project.BuildFileUri">
            <summary>
            Gets the <see cref="T:System.Uri"/> form of the current project definition.
            </summary>
            <value>
            The <see cref="T:System.Uri"/> form of the current project definition.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.Frameworks">
            <summary>
            Gets a collection of available .NET frameworks.
            </summary>
            <value>
            A collection of available .NET frameworks.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.RuntimeFramework">
            <summary>
            Gets the framework in which NAnt is currently running.
            </summary>
            <value>
            The framework in which NAnt is currently running.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.TargetFramework">
            <summary>
            Gets or sets the framework to use for compilation.
            </summary>
            <value>
            The framework to use for compilation.
            </value>
            <exception cref="T:System.ArgumentNullException">The value specified is <see langword="null"/>.</exception>
            <exception cref="T:NAnt.Core.BuildException">The specified framework is not installed, or not configured correctly.</exception>
            <remarks>
            We will use compiler tools and system assemblies for this framework 
            in framework-related tasks.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Project.PlatformName">
            <summary>
            Gets the name of the platform on which NAnt is currently running.
            </summary>
            <value>
            The name of the platform on which NAnt is currently running.
            </value>
            <remarks>
            <para>
            Possible values are:
            </para>
            <list type="bullet">
                <item>
                    <description>win32</description>
                </item>
                <item>
                    <description>unix</description>
                </item>
            </list>
            </remarks>
            <exception cref="T:NAnt.Core.BuildException">NAnt does not support the current platform.</exception>
        </member>
        <member name="P:NAnt.Core.Project.CurrentTarget">
            <summary>
            Gets the current target.
            </summary>
            <value>
            The current target, or <see langword="null" /> if no target is
            executing.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.BuildFileLocalName">
            <summary>
            Gets the path to the build file.
            </summary>
            <value>
            The path to the build file, or <see langword="null" /> if the build
            document is not file backed.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.Document">
            <summary>
            Gets the active <see cref="T:NAnt.Core.Project"/> definition.
            </summary>
            <value>
            The active <see cref="T:NAnt.Core.Project"/> definition.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.ConfigurationNode">
            <summary>
            Gets the <see cref="T:System.Xml.XmlNode"/> NAnt should use to initialize 
            configuration settings.
            </summary>
            <value>
            The <see cref="T:System.Xml.XmlNode"/> NAnt should use to initialize 
            configuration settings.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.DefaultTargetName">
            <remarks>
            Gets the name of the target that will be executed when no other 
            build targets are specified.
            </remarks>
            <value>
            The name of the target that will be executed when no other 
            build targets are specified, or <see langword="null" /> if no
            default target is specified in the build file.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.Verbose">
            <summary>
            Gets a value indicating whether tasks should output more build log 
            messages.
            </summary>
            <value>
            <see langword="true" /> if tasks should output more build log message; 
            otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.BuildTargets">
            <summary>
            The list of targets to build.
            </summary>
            <remarks>
            Targets are built in the order they appear in the collection.  If 
            the collection is empty the default target will be built.
            </remarks>
        </member>
        <member name="P:NAnt.Core.Project.Properties">
            <summary>
            Gets the properties defined in this project.
            </summary>
            <value>The properties defined in this project.</value>
            <remarks>
            <para>
            This is the collection of properties that are defined by the system 
            and property task statements.
            </para>
            <para>
            These properties can be used in expansion.
            </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Project.FrameworkNeutralProperties">
            <summary>
            Gets the framework-neutral properties defined in the NAnt 
            configuration file.
            </summary>
            <value>
            The framework-neutral properties defined in the NAnt configuration 
            file.
            </value>
            <remarks>
            <para>
            This is the collection of read-only properties that are defined in 
            the NAnt configuration file.
            </para>
            <para>
            These properties can only be used for expansion in framework-specific
            and framework-neutral configuration settings.  These properties are 
            not available for expansion in the build file.
            </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Project.DataTypeReferences">
            <summary>
            Gets the <see cref="T:NAnt.Core.DataTypeBase"/> instances defined in this project.
            </summary>
            <value>
            The <see cref="T:NAnt.Core.DataTypeBase"/> instances defined in this project.
            </value>
            <remarks>
            <para>
            This is the collection of <see cref="T:NAnt.Core.DataTypeBase"/> instances that
            are defined by <see cref="T:NAnt.Core.DataTypeBase"/> (eg fileset) declarations.
            </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Project.Targets">
            <summary>
            Gets the targets defined in this project.
            </summary>
            <value>
            The targets defined in this project.
            </value>
        </member>
        <member name="P:NAnt.Core.Project.BuildListeners">
            <summary>
            Gets the build listeners for this project. 
            </summary>
            <value>
            The build listeners for this project.
            </value>
        </member>
        <member name="T:NAnt.Core.Optimizations">
            <summary>
            Allow the project construction to be optimized.
            </summary>
            <remarks>
            Use this with care!
            </remarks>
        </member>
        <member name="F:NAnt.Core.Optimizations.None">
            <summary>
            Do not perform any optimizations.
            </summary>
        </member>
        <member name="F:NAnt.Core.Optimizations.SkipAutomaticDiscovery">
            <summary>
            The project base directory must not be automatically scanned 
            for extension assemblies.
            </summary>
        </member>
        <member name="F:NAnt.Core.Optimizations.SkipFrameworkConfiguration">
            <summary>
            Do not scan the project configuration for frameworks, and 
            do not configure the runtime and target framework.
            </summary>
        </member>
        <member name="F:NAnt.Core.ProjectSettingsLoader.ScannedTasks">
            <summary>
            Holds a value indicating whether a scan for tasks, types and functions
            has already been performed for the current runtime framework.
            </summary>
        </member>
        <member name="M:NAnt.Core.ProjectSettingsLoader.#ctor(NAnt.Core.Project)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.ProjectSettingsLoader"/>
            class for the given <see cref="P:NAnt.Core.ProjectSettingsLoader.Project"/>.
            </summary>
            <param name="project">The <see cref="P:NAnt.Core.ProjectSettingsLoader.Project"/> that should be configured.</param>
        </member>
        <member name="M:NAnt.Core.ProjectSettingsLoader.ProcessSettings">
            <summary>
            Loads and processes settings from the specified <see cref="T:System.Xml.XmlNode"/> 
            of the configuration file.
            </summary>
        </member>
        <member name="M:NAnt.Core.ProjectSettingsLoader.ProcessFrameworks(System.Xml.XmlNode)">
            <summary>
            Processes the framework nodes of the given platform node.
            </summary>
            <param name="platformNode">An <see cref="T:System.Xml.XmlNode"/> representing the platform on which NAnt is running.</param>
        </member>
        <member name="M:NAnt.Core.ProjectSettingsLoader.ProcessGlobalProperties(System.Xml.XmlNodeList)">
            <summary>
            Reads the list of global properties specified in the NAnt configuration
            file.
            </summary>
            <param name="propertyNodes">An <see cref="T:System.Xml.XmlNodeList"/> representing global properties.</param>
        </member>
        <member name="M:NAnt.Core.ProjectSettingsLoader.GetXmlAttributeValue(System.Xml.XmlNode,System.String)">
            <summary>
            Gets the value of the specified attribute from the specified node.
            </summary>
            <param name="xmlNode">The node of which the attribute value should be retrieved.</param>
            <param name="attributeName">The attribute of which the value should be returned.</param>
            <returns>
            The value of the attribute with the specified name or <see langword="null" />
            if the attribute does not exist or has no value.
            </returns>
        </member>
        <member name="P:NAnt.Core.ProjectSettingsLoader.Project">
            <summary>
            Gets the underlying <see cref="P:NAnt.Core.ProjectSettingsLoader.Project"/> instance.
            </summary>
            <value>
            The underlying <see cref="P:NAnt.Core.ProjectSettingsLoader.Project"/> instance.
            </value>
        </member>
        <member name="P:NAnt.Core.ProjectSettingsLoader.NamespaceManager">
            <summary>
            Gets the <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </summary>
            <value>
            The <see cref="T:System.Xml.XmlNamespaceManager"/>.
            </value>
            <remarks>
            The <see cref="P:NAnt.Core.ProjectSettingsLoader.NamespaceManager"/> defines the current namespace 
            scope and provides methods for looking up namespace information.
            </remarks>
        </member>
        <member name="F:NAnt.Core.PropertyDictionary.Visiting">
            <summary>
            Constant for the "visiting" state, used when traversing a DFS of 
            property references.
            </summary>
        </member>
        <member name="F:NAnt.Core.PropertyDictionary.Visited">
            <summary>
            Constant for the "visited" state, used when travesing a DFS of 
            property references.
            </summary>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.#ctor(NAnt.Core.Project)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.PropertyDictionary"/>
            class holding properties for the given <see cref="P:NAnt.Core.PropertyDictionary.Project"/> 
            instance.
            </summary>
            <param name="project">The project for which the dictionary will hold properties.</param>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.OnInsert(System.Object,System.Object)">
            <summary>
            Performs additional custom processes before inserting a new element 
            into the <see cref="T:System.Collections.DictionaryBase"/> instance.
            </summary>
            <param name="key">The key of the element to insert.</param>
            <param name="value">The value of the element to insert.</param>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.OnRemove(System.Object,System.Object)">
            <summary>
            Performs additional custom processes before removing an element
            from the <see cref="T:System.Collections.DictionaryBase"/> instance.
            </summary>
            <param name="key">The key of the element to remove.</param>
            <param name="value">The value of the element to remove.</param>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.OnValidate(System.Object,System.Object)">
            <summary>
            Performs additional custom processes when validating the element 
            with the specified key and value.
            </summary>
            <param name="key">The key of the element to validate.</param>
            <param name="value">The value of the element to validate.</param>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.AddReadOnly(System.String,System.String)">
            <summary>
            Adds a property that cannot be changed.
            </summary>
            <param name="name">The name of the property.</param>
            <param name="value">The value to assign to the property.</param>
            <remarks>
            Properties added with this method can never be changed.  Note that
            they are removed if the <see cref="M:System.Collections.DictionaryBase.Clear"/> method is called.
            </remarks>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.MarkDynamic(System.String)">
            <summary>
            Marks a property as a property of which the value is expanded at 
            execution time.
            </summary>
            <param name="name">The name of the property to mark as dynamic.</param>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.Add(System.String,System.String)">
            <summary>
            Adds a property to the collection.
            </summary>
            <param name="name">The name of the property.</param>
            <param name="value">The value to assign to the property.</param>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.IsReadOnlyProperty(System.String)">
            <summary>
            Determines whether the specified property is listed as read-only.
            </summary>
            <param name="name">The name of the property to check.</param>
            <returns>
            <see langword="true" /> if the property is listed as read-only; 
            otherwise, <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.IsDynamicProperty(System.String)">
            <summary>
            Determines whether the specified property is listed as dynamic.
            </summary>
            <param name="name">The name of the property to check.</param>
            <returns>
            <see langword="true" /> if the property is listed as dynamic; 
            otherwise, <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.Inherit(NAnt.Core.PropertyDictionary,System.Collections.Specialized.StringCollection)">
            <summary>
            Inherits properties from an existing property dictionary Instance.
            </summary>
            <param name="source">Property list to inherit.</param>
            <param name="excludes">The list of properties to exclude during inheritance.</param>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.ExpandProperties(System.String,NAnt.Core.Location)">
            <summary>
            Expands a <see cref="T:System.String"/> from known properties.
            </summary>
            <param name="input">The replacement tokens.</param>
            <param name="location">The <see cref="T:NAnt.Core.Location"/> to pass through for any exceptions.</param>
            <returns>The expanded and replaced string.</returns>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.Contains(System.String)">
            <summary>
            Determines whether a property already exists.
            </summary>
            <param name="name">The name of the property to check.</param>
            <returns>
            <see langword="true" /> if the specified property already exists; 
            otherwise, <see langword="false" />.
            </returns>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.Remove(System.String)">
            <summary>
            Removes the property with the specified name.
            </summary>
            <param name="name">The name of the property to remove.</param>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.ExpandProperties(System.String,NAnt.Core.Location,System.Collections.Hashtable,System.Collections.Stack)">
            <summary>
            Expands a <see cref="T:System.String"/> from known properties.
            </summary>
            <param name="input">The replacement tokens.</param>
            <param name="location">The <see cref="T:NAnt.Core.Location"/> to pass through for any exceptions.</param>
            <param name="state">A mapping from properties to states. The states in question are "VISITING" and "VISITED". Must not be <see langword="null"/>.</param>
            <param name="visiting">A stack of properties which are currently being visited. Must not be <see langword="null"/>.</param>
            <returns>The expanded and replaced string.</returns>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.EvaluateEmbeddedExpressions(System.String,NAnt.Core.Location,System.Collections.Hashtable,System.Collections.Stack)">
            <summary>
            Evaluates the given expression string and returns the result
            </summary>
            <param name="input"></param>
            <param name="location"></param>
            <param name="state"></param>
            <param name="visiting"></param>
            <returns></returns>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.CheckDeprecation(System.String)">
            <summary>
            Checks whether the specified property is deprecated.
            </summary>
            <param name="name">The property to check.</param>
        </member>
        <member name="M:NAnt.Core.PropertyDictionary.CreateCircularException(System.String,System.Collections.Stack)">
            <summary>
            Builds an appropriate exception detailing a specified circular
            reference.
            </summary>
            <param name="end">The property reference to stop at. Must not be <see langword="null"/>.</param>
            <param name="stack">A stack of property references. Must not be <see langword="null"/>.</param>
            <returns>
            A <see cref="T:NAnt.Core.BuildException"/> detailing the specified circular 
            dependency.
            </returns>
        </member>
        <member name="F:NAnt.Core.PropertyDictionary._readOnlyProperties">
            <summary>
            Maintains a list of the property names that are readonly.
            </summary>
        </member>
        <member name="F:NAnt.Core.PropertyDictionary._dynamicProperties">
            <summary>
            Maintains a list of the property names of which the value is expanded
            on usage, not at initalization.
            </summary>
        </member>
        <member name="F:NAnt.Core.PropertyDictionary._project">
            <summary>
            The project for which the dictionary holds properties.
            </summary>
        </member>
        <member name="P:NAnt.Core.PropertyDictionary.Item(System.String)">
            <summary>
            Indexer property. 
            </summary>
        </member>
        <member name="P:NAnt.Core.PropertyDictionary.Project">
            <summary>
            Gets the project for which the dictionary holds properties.
            </summary>
            <value>
            The project for which the dictionary holds properties.
            </value>
        </member>
        <member name="M:NAnt.Core.Target.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.Target"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.Target.System#ICloneable#Clone">
            <summary>
            Creates a shallow copy of the <see cref="T:NAnt.Core.Target"/>.
            </summary>
            <returns>
            A shallow copy of the <see cref="T:NAnt.Core.Target"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Target.Clone">
            <summary>
            Creates a shallow copy of the <see cref="T:NAnt.Core.Target"/>.
            </summary>
            <returns>
            A shallow copy of the <see cref="T:NAnt.Core.Target"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.Target.Execute">
            <summary>
            Executes dependent targets first, then the target.
            </summary>
        </member>
        <member name="P:NAnt.Core.Target.Executed">
            <summary>
            This indicates whether the target has already executed.
            </summary>
        </member>
        <member name="P:NAnt.Core.Target.Name">
            <summary>
            The name of the target.
            </summary>
            <remarks>
              <para>
              Hides <see cref="P:NAnt.Core.Element.Name"/> to have <see cref="T:NAnt.Core.Target"/> 
              return the name of target, not the name of XML element - which 
              would always be <c>target</c>.
              </para>
              <para>
              Note: Properties are not allowed in the name.
              </para>
            </remarks>
        </member>
        <member name="P:NAnt.Core.Target.IfCondition">
            <summary>
            If <see langword="true" /> then the target will be executed; 
            otherwise, skipped. The default is <see langword="true" />.
            </summary>
        </member>
        <member name="P:NAnt.Core.Target.IfDefined">
            <summary>
            Gets a value indicating whether the target should be executed.
            </summary>
            <value>
            <see langword="true" /> if the target should be executed; otherwise, 
            <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Target.UnlessCondition">
            <summary>
            Opposite of <see cref="P:NAnt.Core.Target.IfDefined"/>. If <see langword="false"/> 
            then the target will be executed; otherwise, skipped. The default 
            is <see langword="false"/>.
            </summary>
        </member>
        <member name="P:NAnt.Core.Target.UnlessDefined">
            <summary>
            Gets a value indicating whether the target should NOT be executed.
            </summary>
            <value>
            <see langword="true" /> if the target should NOT be executed;
            otherwise, <see langword="false" />.
            </value>
        </member>
        <member name="P:NAnt.Core.Target.Description">
            <summary>
            The description of the target.
            </summary>
        </member>
        <member name="P:NAnt.Core.Target.DependsListString">
            <summary>
            Space separated list of targets that this target depends on.
            </summary>
        </member>
        <member name="P:NAnt.Core.Target.Dependencies">
            <summary>
            A collection of target names that must be executed before this 
            target.
            </summary>
        </member>
        <member name="M:NAnt.Core.TargetCollection.Find(System.String)">
            <summary>
            Finds a target by name.
            </summary>
            <param name="targetName">The name of the target to find.</param>
            <returns>
            The <see cref="T:NAnt.Core.Target"/> with the specified name, or 
            <see langword="null"/> if no <see cref="T:NAnt.Core.Target"/> exists with
            the given name.
            </returns>
        </member>
        <member name="M:NAnt.Core.TargetCollection.ToString(System.String)">
            <summary>
            Gets the names of the targets in the <see cref="T:NAnt.Core.TargetCollection"/>
            combined into one list separated by the given <see cref="T:System.String"/>.
            </summary>
            <returns>
            A <see cref="T:System.String"/> that contains a list of the names of the 
            targets in the <see cref="T:NAnt.Core.TargetCollection"/>, separated by
            the specified <paramref name="separator"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.TargetCollection.ToString">
            <summary>
            Gets the names of the targets in the <see cref="T:NAnt.Core.TargetCollection"/>
            combined into one comma-separated list.
            </summary>
            <returns>
            A <see cref="T:System.String"/> that contains a comma-separated list of the
            names of the targets in the <see cref="T:NAnt.Core.TargetCollection"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.TaskBuilder.#ctor(System.Reflection.Assembly,System.String)">
            <summary>
            Creates a new instance of the <see cref="T:NAnt.Core.TaskBuilder"/> class
            for the specified <see cref="T:NAnt.Core.Task"/> class in the specified
            <see cref="T:System.Reflection.Assembly"/>.
            </summary>
            <remarks>
            An <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> for the specified <see cref="T:System.Reflection.Assembly"/>
            is cached for future use.
            </remarks>
            <param name="assembly">The <see cref="T:System.Reflection.Assembly"/> containing the <see cref="T:NAnt.Core.Task"/>.</param>
            <param name="className">The class representing the <see cref="T:NAnt.Core.Task"/>.</param>
        </member>
        <member name="M:NAnt.Core.TaskBuilder.#ctor(NAnt.Core.Extensibility.ExtensionAssembly,System.String)">
            <summary>
            Creates a new instance of the <see cref="T:NAnt.Core.TaskBuilder"/> class
            for the specified <see cref="T:NAnt.Core.Task"/> class in the specified
            <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/>.
            </summary>
            <param name="extensionAssembly">The <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> containing the <see cref="T:NAnt.Core.Task"/>.</param>
            <param name="className">The class representing the <see cref="T:NAnt.Core.Task"/>.</param>
        </member>
        <member name="P:NAnt.Core.TaskBuilder.ClassName">
            <summary>
            Gets the name of the <see cref="T:NAnt.Core.Task"/> class that can be created
            using this <see cref="T:NAnt.Core.TaskBuilder"/>.
            </summary>
            <value>
            The name of the <see cref="T:NAnt.Core.Task"/> class that can be created using
            this <see cref="T:NAnt.Core.TaskBuilder"/>.
            </value>
        </member>
        <member name="P:NAnt.Core.TaskBuilder.TaskName">
            <summary>
            Gets the name of the task which the <see cref="T:NAnt.Core.TaskBuilder"/>
            can create.
            </summary>
            <value>
            The name of the task which the <see cref="T:NAnt.Core.TaskBuilder"/> can 
            create.
            </value>
        </member>
        <member name="T:NAnt.Core.TaskBuilderCollection">
            <summary>
            Contains a strongly typed collection of <see cref="T:NAnt.Core.TaskBuilder"/> objects.
            </summary>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.TaskBuilderCollection"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.#ctor(NAnt.Core.TaskBuilderCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.TaskBuilderCollection"/> class
            with the specified <see cref="T:NAnt.Core.TaskBuilderCollection"/> instance.
            </summary>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.#ctor(NAnt.Core.TaskBuilder[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.TaskBuilderCollection"/> class
            with the specified array of <see cref="T:NAnt.Core.TaskBuilder"/> instances.
            </summary>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.Add(NAnt.Core.TaskBuilder)">
            <summary>
            Adds a <see cref="T:NAnt.Core.TaskBuilder"/> to the end of the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.TaskBuilder"/> to be added to the end of the collection.</param> 
            <returns>The position into which the new element was inserted.</returns>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.AddRange(NAnt.Core.TaskBuilder[])">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.TaskBuilder"/> array to the end of the collection.
            </summary>
            <param name="items">The array of <see cref="T:NAnt.Core.TaskBuilder"/> elements to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.AddRange(NAnt.Core.TaskBuilderCollection)">
            <summary>
            Adds the elements of a <see cref="T:NAnt.Core.TaskBuilderCollection"/> to the end of the collection.
            </summary>
            <param name="items">The <see cref="T:NAnt.Core.TaskBuilderCollection"/> to be added to the end of the collection.</param> 
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.Contains(NAnt.Core.TaskBuilder)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.TaskBuilder"/> is in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.TaskBuilder"/> to locate in the collection.</param> 
            <returns>
            <see langword="true"/> if <paramref name="item"/> is found in the 
            collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.Contains(System.String)">
            <summary>
            Determines whether a <see cref="T:NAnt.Core.TaskBuilder"/> for the specified 
            task is in the collection.
            </summary>
            <param name="taskName">The name of task for which the <see cref="T:NAnt.Core.TaskBuilder"/> should be located in the collection.</param> 
            <returns>
            <see langword="true"/> if a <see cref="T:NAnt.Core.TaskBuilder"/> for the 
            specified task is found in the collection; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.CopyTo(NAnt.Core.TaskBuilder[],System.Int32)">
            <summary>
            Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.        
            </summary>
            <param name="array">The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.</param> 
            <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.IndexOf(NAnt.Core.TaskBuilder)">
            <summary>
            Retrieves the index of a specified <see cref="T:NAnt.Core.TaskBuilder"/> object in the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.TaskBuilder"/> object for which the index is returned.</param> 
            <returns>
            The index of the specified <see cref="T:NAnt.Core.TaskBuilder"/>. If the <see cref="T:NAnt.Core.TaskBuilder"/> is not currently a member of the collection, it returns -1.
            </returns>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.Insert(System.Int32,NAnt.Core.TaskBuilder)">
            <summary>
            Inserts a <see cref="T:NAnt.Core.TaskBuilder"/> into the collection at the specified index.
            </summary>
            <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
            <param name="item">The <see cref="T:NAnt.Core.TaskBuilder"/> to insert.</param>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.GetEnumerator">
            <summary>
            Returns an enumerator that can iterate through the collection.
            </summary>
            <returns>
            A <see cref="T:NAnt.Core.TaskBuilderEnumerator"/> for the entire collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.TaskBuilderCollection.Remove(NAnt.Core.TaskBuilder)">
            <summary>
            Removes a member from the collection.
            </summary>
            <param name="item">The <see cref="T:NAnt.Core.TaskBuilder"/> to remove from the collection.</param>
        </member>
        <member name="P:NAnt.Core.TaskBuilderCollection.Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
        </member>
        <member name="P:NAnt.Core.TaskBuilderCollection.Item(System.String)">
            <summary>
            Gets the <see cref="T:NAnt.Core.TaskBuilder"/> for the specified task.
            </summary>
            <param name="taskName">The name of task for which the <see cref="T:NAnt.Core.TaskBuilder"/> should be located in the collection.</param> 
        </member>
        <member name="T:NAnt.Core.TaskBuilderEnumerator">
            <summary>
            Enumerates the <see cref="T:NAnt.Core.TaskBuilder"/> elements of a <see cref="T:NAnt.Core.TaskBuilderCollection"/>.
            </summary>
        </member>
        <member name="M:NAnt.Core.TaskBuilderEnumerator.#ctor(NAnt.Core.TaskBuilderCollection)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.TaskBuilderEnumerator"/> class
            with the specified <see cref="T:NAnt.Core.TaskBuilderCollection"/>.
            </summary>
            <param name="arguments">The collection that should be enumerated.</param>
        </member>
        <member name="M:NAnt.Core.TaskBuilderEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <see langword="true" /> if the enumerator was successfully advanced 
            to the next element; <see langword="false" /> if the enumerator has 
            passed the end of the collection.
            </returns>
        </member>
        <member name="M:NAnt.Core.TaskBuilderEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position, which is before the 
            first element in the collection.
            </summary>
        </member>
        <member name="P:NAnt.Core.TaskBuilderEnumerator.Current">
            <summary>
            Gets the current element in the collection.
            </summary>
            <returns>
            The current element in the collection.
            </returns>
        </member>
        <member name="T:NAnt.Core.TypeFactory">
            <summary>
            Comprises all of the loaded, and available, tasks. 
            Use these static methods to register, initialize and create a task.
            </summary>
        </member>
        <member name="M:NAnt.Core.TypeFactory.ScanAssembly(System.String,NAnt.Core.Task)">
            <summary>
            Scans the given assembly for tasks, types, functions and filters.
            </summary>
            <param name="assemblyFile">The assembly to scan for tasks, types, functions and filters.</param>
            <param name="task">The <see cref="T:NAnt.Core.Task"/> which will be used to output messages to the build log.</param>
        </member>
        <member name="M:NAnt.Core.TypeFactory.ScanAssembly(System.Reflection.Assembly,NAnt.Core.Task)">
            <summary>
            Scans the given assembly for tasks, types, functions and filters.
            </summary>
            <param name="assembly">The assembly to scan for tasks, types, functions and filters.</param>
            <param name="task">The <see cref="T:NAnt.Core.Task"/> which will be used to output messages to the build log.</param>
            <returns>
            <see langword="true"/> if <paramref name="assembly"/> contains at 
            least one "extension"; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.TypeFactory.ScanDir(System.String,NAnt.Core.Task,System.Boolean)">
            <summary>
            Scans the path for any task assemblies and adds them.
            </summary>
            <param name="path">The directory to scan in.</param>
            <param name="task">The <see cref="T:NAnt.Core.Task"/> which will be used to output messages to the build log.</param>
            <param name="failOnError"><see cref="T:System.Boolean"/> indicating whether scanning of the directory should halt on first error.</param>
        </member>
        <member name="M:NAnt.Core.TypeFactory.AddProject(NAnt.Core.Project)">
            <summary>
            Adds any task assemblies in the project base directory
            and its <c>tasks</c> subdirectory.
            </summary>
            <param name="project">The project to work from.</param>
        </member>
        <member name="M:NAnt.Core.TypeFactory.AddProject(NAnt.Core.Project,System.Boolean)">
            <summary>
            Registers the project with <see cref="T:NAnt.Core.TypeFactory"/>, and optionally
            scan the <see cref="P:NAnt.Core.Project.BaseDirectory"/> for extension assemblies.
            </summary>
            <param name="project">The project to work from.</param>
            <param name="scan">Specified whether to scan the <see cref="P:NAnt.Core.Project.BaseDirectory"/> for extension assemblies.</param>
        </member>
        <member name="M:NAnt.Core.TypeFactory.LookupFunction(System.String,NAnt.Core.Extensibility.FunctionArgument[],NAnt.Core.Project)">
            <summary>
            Looks up a function by name and argument count.
            </summary>
            <param name="functionName">The name of the function to lookup, including namespace prefix.</param>
            <param name="args">The argument of the function to lookup.</param>
            <param name="project">The <see cref="T:NAnt.Core.Project"/> in which the function is invoked.</param>
            <returns>
            A <see cref="T:System.Reflection.MethodInfo"/> representing the function, or 
            <see langword="null"/> if a function with the given name and
            arguments does not exist.
            </returns>
        </member>
        <member name="M:NAnt.Core.TypeFactory.CreateTask(System.Xml.XmlNode,NAnt.Core.Project)">
            <summary> 
            Creates a new <see cref="T:NAnt.Core.Task"/> instance for the given XML and 
            <see cref="T:NAnt.Core.Project"/>.
            </summary>
            <param name="taskNode">The XML to initialize the task with.</param>
            <param name="proj">The <see cref="T:NAnt.Core.Project"/> that the <see cref="T:NAnt.Core.Task"/> belongs to.</param>
            <returns>
            The new <see cref="T:NAnt.Core.Task"/> instance.
            </returns>
        </member>
        <member name="M:NAnt.Core.TypeFactory.ScanTypeForTasks(NAnt.Core.Extensibility.ExtensionAssembly,System.Type,NAnt.Core.Task)">
            <summary>
            Scans a given <see cref="T:System.Type"/> for tasks.
            </summary>
            <param name="extensionAssembly">The <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> containing the <see cref="T:System.Type"/> to scan.</param>
            <param name="type">The <see cref="T:System.Type"/> to scan.</param>
            <param name="task">The <see cref="T:NAnt.Core.Task"/> which will be used to output messages to the build log.</param>
            <returns>
            <see langword="true"/> if <paramref name="type"/> represents a
            <see cref="T:NAnt.Core.Task"/>; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.TypeFactory.ScanTypeForDataTypes(NAnt.Core.Extensibility.ExtensionAssembly,System.Type,NAnt.Core.Task)">
            <summary>
            Scans a given <see cref="T:System.Type"/> for data type.
            </summary>
            <param name="extensionAssembly">The <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> containing the <see cref="T:System.Type"/> to scan.</param>
            <param name="type">The <see cref="T:System.Type"/> to scan.</param>
            <param name="task">The <see cref="T:NAnt.Core.Task"/> which will be used to output messages to the build log.</param>
            <returns>
            <see langword="true"/> if <paramref name="type"/> represents a
            data type; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.TypeFactory.ScanTypeForFunctions(System.Type,NAnt.Core.Task)">
            <summary>
            Scans a given <see cref="T:System.Type"/> for functions.
            </summary>
            <param name="type">The <see cref="T:System.Type"/> to scan.</param>
            <param name="task">The <see cref="T:NAnt.Core.Task"/> which will be used to output messages to the build log.</param>
            <returns>
            <see langword="true"/> if <paramref name="type"/> represents a
            valid set of funtions; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="M:NAnt.Core.TypeFactory.ScanTypeForFilters(NAnt.Core.Extensibility.ExtensionAssembly,System.Type,NAnt.Core.Task)">
            <summary>
            Scans a given <see cref="T:System.Type"/> for filters.
            </summary>
            <param name="extensionAssembly">The <see cref="T:NAnt.Core.Extensibility.ExtensionAssembly"/> containing the <see cref="T:System.Type"/> to scan.</param>
            <param name="type">The <see cref="T:System.Type"/> to scan.</param>
            <param name="task">The <see cref="T:NAnt.Core.Task"/> which will be used to output messages to the build log.</param>
            <returns>
            <see langword="true"/> if <paramref name="type"/> represents a
            <see cref="T:NAnt.Core.Filters.Filter"/>; otherwise, <see langword="false"/>.
            </returns>
        </member>
        <member name="P:NAnt.Core.TypeFactory.TaskBuilders">
            <summary>
            Gets the list of loaded <see cref="T:NAnt.Core.TaskBuilder"/> instances.
            </summary>
            <value>
            List of loaded <see cref="T:NAnt.Core.TaskBuilder"/> instances.
            </value>
        </member>
        <member name="P:NAnt.Core.TypeFactory.DataTypeBuilders">
            <summary>
            Gets the list of loaded <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> instances.
            </summary>
            <value>
            List of loaded <see cref="T:NAnt.Core.DataTypeBaseBuilder"/> instances.
            </value>
        </member>
        <member name="P:NAnt.Core.TypeFactory.FilterBuilders">
            <summary>
            Gets the list of loaded <see cref="T:NAnt.Core.Filters.FilterBuilder"/> instances.
            </summary>
            <value>
            List of loaded <see cref="T:NAnt.Core.Filters.FilterBuilder"/> instances.
            </value>
        </member>
        <member name="M:NAnt.Core.ValidationException.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.ValidationException"/> 
            class.
            </summary>
        </member>
        <member name="M:NAnt.Core.ValidationException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.ValidationException"/> 
            class with a descriptive message.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
        </member>
        <member name="M:NAnt.Core.ValidationException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.ValidationException"/> 
            class with the specified descriptive message and inner exception.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
            <param name="innerException">A nested exception that is the cause of the current exception.</param>
        </member>
        <member name="M:NAnt.Core.ValidationException.#ctor(System.String,NAnt.Core.Location)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.ValidationException"/> 
            class with a descriptive message and the location in the build file 
            that caused the exception.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
            <param name="location">The location in the build file where the exception occured.</param>
        </member>
        <member name="M:NAnt.Core.ValidationException.#ctor(System.String,NAnt.Core.Location,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.ValidationException"/> 
            class with a descriptive message, the location in the build file and 
            an instance of the exception that is the cause of the current 
            exception.
            </summary>
            <param name="message">A descriptive message to include with the exception.</param>
            <param name="location">The location in the build file where the exception occured.</param>
            <param name="innerException">A nested exception that is the cause of the current exception.</param>
        </member>
        <member name="M:NAnt.Core.ValidationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.ValidationException"/> 
            class with serialized data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
            <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
        </member>
        <member name="T:NAnt.Core.XmlLogger">
            <summary>
            Used to wrap log messages in xml &lt;message/&gt; elements.
            </summary>
        </member>
        <member name="F:NAnt.Core.XmlLogger._projectStack">
            <summary>
            Holds the stack of currently executing projects.
            </summary>
        </member>
        <member name="M:NAnt.Core.XmlLogger.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.XmlLogger"/> class.
            </summary>
        </member>
        <member name="M:NAnt.Core.XmlLogger.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:NAnt.Core.XmlLogger"/> class 
            with serialized data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data.</param>
            <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
        </member>
        <member name="M:NAnt.Core.XmlLogger.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Populates <paramref name="info"/> with the data needed to serialize 
            the <see cref="T:NAnt.Core.XmlLogger"/> instance.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
            <param name="context">The destination for this serialization.</param>
        </member>
        <member name="M:NAnt.Core.XmlLogger.ToString">
            <summary>
            Returns the contents of log captured.
            </summary>
        </member>
        <member name="M:NAnt.Core.XmlLogger.BuildStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a build has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event is fired before any targets have started.
            </remarks>
        </member>
        <member name="M:NAnt.Core.XmlLogger.BuildFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that the last target has finished.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event will still be fired if an error occurred during the build.
            </remarks>
        </member>
        <member name="M:NAnt.Core.XmlLogger.TargetStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a target has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.XmlLogger.TargetFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a target has finished.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event will still be fired if an error occurred during the build.
            </remarks>
        </member>
        <member name="M:NAnt.Core.XmlLogger.TaskStarted(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a task has started.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
        </member>
        <member name="M:NAnt.Core.XmlLogger.TaskFinished(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a task has finished.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            This event will still be fired if an error occurred during the build.
            </remarks>
        </member>
        <member name="M:NAnt.Core.XmlLogger.MessageLogged(System.Object,NAnt.Core.BuildEventArgs)">
            <summary>
            Signals that a message has been logged.
            </summary>
            <param name="sender">The source of the event.</param>
            <param name="e">A <see cref="T:NAnt.Core.BuildEventArgs"/> object that contains the event data.</param>
            <remarks>
            Only messages with a priority higher or equal to the threshold of 
            the logger will actually be output in the build log.
            </remarks>
        </member>
        <member name="M:NAnt.Core.XmlLogger.Flush">
            <summary>
            Flushes buffered build events or messages to the underlying storage.
            </summary>
        </member>
        <member name="P:NAnt.Core.XmlLogger.Threshold">
            <summary>
            Gets or sets the highest level of message this logger should respond 
            to.
            </summary>
            <value>
            The highest level of message this logger should respond to.
            </value>
            <remarks>
            Only messages with a message level higher than or equal to the given 
            level should be written to the log.
            </remarks>
        </member>
        <member name="P:NAnt.Core.XmlLogger.EmacsMode">
            <summary>
            Gets or sets a value indicating whether to produce emacs (and other
            editor) friendly output.
            </summary>
            <value>
            <see langword="false" /> as it has no meaning in XML format.
            </value>
        </member>
        <member name="P:NAnt.Core.XmlLogger.OutputWriter">
            <summary>
            Gets or sets the <see cref="T:System.IO.TextWriter"/> to which the logger is 
            to send its output.
            </summary>
        </member>
    </members>
</doc>
