org.apache.tools.ant.property

## Class LocalPropertyStack

- java.lang.Object
- - org.apache.tools.ant.property.LocalPropertyStack

-     public class LocalPropertyStack
      extends java.lang.Object

  A stack of local property maps. There is a map for each scope (target, sequential, macro).
  Since:
    Ant 1.8.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `LocalPropertyStack()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addLocal(java.lang.String property)` Add a local property.
    `LocalPropertyStack` | `copy()` Copy the stack for a parallel thread.
    `void` | `enterScope()` Enter the local scope.
    `java.lang.Object` | `evaluate(java.lang.String property, PropertyHelper helper)` Evaluate a property.
    `void` | `exitScope()` Exit the local scope.
    `boolean` | `set(java.lang.String property, java.lang.Object value, PropertyHelper propertyHelper)` Set a property.
    `boolean` | `setNew(java.lang.String property, java.lang.Object value, PropertyHelper propertyHelper)` Set a *new" property.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### LocalPropertyStack

          public LocalPropertyStack()

  - ### Method Detail

    - #### addLocal

          public void addLocal(java.lang.String property)

      Add a local property.
      Parameters:
        `property` - the name of the local proeprty.

    - #### enterScope

          public void enterScope()

      Enter the local scope.

    - #### exitScope

          public void exitScope()

      Exit the local scope.

    - #### copy

          public LocalPropertyStack copy()

      Copy the stack for a parallel thread.
      Returns:
        a copy.

    - #### evaluate

          public java.lang.Object evaluate(java.lang.String property,
                                  PropertyHelper helper)

      Evaluate a property.
      Parameters:
        `property` - the property's String "identifier".
        `helper` - the invoking PropertyHelper.
      Returns:
        Object value.

    - #### setNew

          public boolean setNew(java.lang.String property,
                       java.lang.Object value,
                       PropertyHelper propertyHelper)

      Set a *new" property.
      Parameters:
        `property` - the property's String "identifier".
        `value` - the value to set.
        `propertyHelper` - the invoking PropertyHelper.
      Returns:
        true if this entity 'owns' the property.

    - #### set

          public boolean set(java.lang.String property,
                    java.lang.Object value,
                    PropertyHelper propertyHelper)

      Set a property.
      Parameters:
        `property` - the property's String "identifier".
        `value` - the value to set.
        `propertyHelper` - the invoking PropertyHelper.
      Returns:
        true if this entity 'owns' the property.