APIdia Launch Partner
Top Description Methods
com.sun.source.tree

public Interface Scope

Known Direct Implementers
com.sun.tools.javac.api.JavacScope
Imports
javax.lang.model.element.Element, .ExecutableElement, .TypeElement

Interface for determining locally available program elements, such as local variables and imports. Upon creation, a Scope is associated with a given program position; for example, a tree node. This position may be used to infer an enclosing method and/or class.

A Scope does not itself contain the details of the elements corresponding to the parameters, methods and fields of the methods and classes containing its position. However, these elements can be determined from the enclosing elements.

Scopes may be contained in an enclosing scope. The outermost scope contains those elements available via "star import" declarations; the scope within that contains the top level elements of the compilation unit, including any named imports.

Since
1.6

Method Summary

Modifier and TypeMethod and Description
public TypeElement

Returns:

the innermost enclosing type element
getEnclosingClass
()

Returns the innermost type element containing the position of this scope.

public ExecutableElement

Returns:

the innermost enclosing method declaration
getEnclosingMethod
()

Returns the innermost executable element containing the position of this scope.

public Scope

Returns:

the enclosing scope
getEnclosingScope
()

Returns the enclosing scope.

public Iterable<? extends Element>

Returns:

the elements contained in this scope
getLocalElements
()

Returns the elements directly contained in this scope.

Method Detail

getEnclosingClassback to summary
public TypeElement getEnclosingClass()

Returns the innermost type element containing the position of this scope.

Returns:TypeElement

the innermost enclosing type element

getEnclosingMethodback to summary
public ExecutableElement getEnclosingMethod()

Returns the innermost executable element containing the position of this scope.

Returns:ExecutableElement

the innermost enclosing method declaration

getEnclosingScopeback to summary
public Scope getEnclosingScope()

Returns the enclosing scope.

Returns:Scope

the enclosing scope

getLocalElementsback to summary
public Iterable<? extends Element> getLocalElements()

Returns the elements directly contained in this scope.

Returns:Iterable<? extends Element>

the elements contained in this scope