Package org.eclipse.core.variables

## Interface IDynamicVariable

All Superinterfaces:
  `IStringVariable`

    public interface IDynamicVariable
    extends IStringVariable

A dynamic variable is a variable whose value is computed dynamically by a resolver at the time a string substitution is performed. A dynamic variable is contributed by an extension.

The following is a definition of a dynamic variable that resolves to the name of the selected resource:

      <extension point="org.eclipse.core.variables.dynamicVariables">
        <variable
           name="resource_name"
           resolver="com.example.ResourceNameResolver"
           description="The name of the selected resource"
           supportsArgument="false">
        </variable>
      </extension>

Clients contributing a dynamic variable provide an implementation of `IDynamicVariableResolver`.

Since:
  3.0
Restriction:
  This interface is not intended to be implemented by clients.

### Method Summary

All Methods Instance Methods Abstract Methods
`String` `getValue​(String argument)` Returns the value of this variable when referenced with the given argument, possibly `null`.
`boolean` `supportsArgument()` Returns whether this variable supports an argument, as specified by this variable's extension definition in plug-in XML.

### Methods inherited from interface org.eclipse.core.variables.IStringVariable

`getDescription, getName`

### Method Detail

#### getValue

    String getValue​(String argument)
             throws CoreException

Returns the value of this variable when referenced with the given argument, possibly `null`.

Parameters:
  `argument` - argument present in variable expression or `null` if none
Returns:
  value of this variable when referenced with the given argument, possibly `null`
Throws:
  `CoreException` - if unable to resolve a value for this variable

#### supportsArgument

    boolean supportsArgument()

Returns whether this variable supports an argument, as specified by this variable's extension definition in plug-in XML.

Returns:
  whether this variable supports an argument