Package org.eclipse.jdt.core

# Interface ILocalVariable

All Superinterfaces:
  `IAdaptable`, `IAnnotatable`, `IJavaElement`, `ISourceReference`

public interface ILocalVariable extends IJavaElement, ISourceReference, IAnnotatable
Represents a local variable declared in a method or an initializer. `ILocalVariable` are pseudo-elements created as the result of a `ICodeAssist.codeSelect(...)` operation. They are not part of the Java model (`exists()` returns whether the parent exists rather than whether the local variable exists in the parent) and they are not included in the children of an `IMethod` or an `IInitializer`.

In particular such a pseudo-element should not be used as a handle. For example its name range won't be updated if the underlying source changes.

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

## Field Summary

### Fields inherited from interface org.eclipse.jdt.core.IJavaElement

`ANNOTATION, CLASS_FILE, COMPILATION_UNIT, FIELD, IMPORT_CONTAINER, IMPORT_DECLARATION, INITIALIZER, JAVA_MODEL, JAVA_MODULE, JAVA_PROJECT, LOCAL_VARIABLE, METHOD, PACKAGE_DECLARATION, PACKAGE_FRAGMENT, PACKAGE_FRAGMENT_ROOT, TYPE, TYPE_PARAMETER`

## Method Summary

Modifier and Type
Method
Description
`IMember`
`getDeclaringMember()`
Returns the declaring member of this local variable.
`String`
`getElementName()`
Returns the name of this local variable.
`int`
`getFlags()`
Returns the modifier flags for this local variable.
`ISourceRange`
`getNameRange()`
Returns the source range of this local variable's name.
`ITypeRoot`
`getTypeRoot()`
Returns the Java type root in which this local variable is declared.
`String`
`getTypeSignature()`
Returns the type signature of this local variable.
`boolean`
`isParameter()`
Returns `true` if this local variable is a method parameter, `false` otherwise.

### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

`getAdapter`

### Methods inherited from interface org.eclipse.jdt.core.IAnnotatable

`getAnnotation, getAnnotations`

### Methods inherited from interface org.eclipse.jdt.core.IJavaElement

`exists, getAncestor, getAttachedJavadoc, getCorrespondingResource, getElementType, getHandleIdentifier, getJavaModel, getJavaProject, getOpenable, getParent, getPath, getPrimaryElement, getResource, getSchedulingRule, getUnderlyingResource, isReadOnly, isStructureKnown`

### Methods inherited from interface org.eclipse.jdt.core.ISourceReference

`exists, getSource, getSourceRange`

## Method Details

### getElementName

String getElementName()
Returns the name of this local variable.

Specified by:
  `getElementName` in interface `IJavaElement`
Returns:
  the name of this local variable.

### getNameRange

ISourceRange getNameRange()
Returns the source range of this local variable's name.

Specified by:
  `getNameRange` in interface `ISourceReference`
Returns:
  the source range of this local variable's name

### getTypeSignature

String getTypeSignature()
Returns the type signature of this local variable.

The type signature may be either unresolved (for source types) or resolved (for binary types), and either basic (for basic types) or rich (for parameterized types). See `Signature` for details.

Returns:
  the type signature of this local variable.
See Also:
  - `Signature`

### isParameter

boolean isParameter()
Returns `true` if this local variable is a method parameter, `false` otherwise.

Returns:
  `true` if this local variable is a method parameter, `false` otherwise
Since:
  3.7

### getFlags

int getFlags()
Returns the modifier flags for this local variable. The flags can be examined using class `Flags`.

Note that only flags as indicated in the source are returned.

Returns:
  the modifier flags for this local variable
Since:
  3.7
See Also:
  - `Flags`

### getDeclaringMember

IMember getDeclaringMember()
Returns the declaring member of this local variable.

This is a handle-only method.

Returns:
  the declaring member of this local variable
Since:
  3.7

### getTypeRoot

ITypeRoot getTypeRoot()
Returns the Java type root in which this local variable is declared.

This is a handle-only method.

Returns:
  the Java type root in which this local variable is declared
Since:
  3.7