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

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 Details

### LocalPropertyStack

public LocalPropertyStack()

## Method Details

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