Package 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 | Description
    --- | ---
    `LocalPropertyStack()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | 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.
    `java.util.Set<java.lang.String>` | `getPropertyNames()` | Returns the names of all known local properties.
    `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 property.

    - #### 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.

    - #### getPropertyNames

          public java.util.Set<java.lang.String> getPropertyNames()

      Returns the names of all known local properties.
      Returns:
        the names of all known local properties.
      Since:
        1.10.9