You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
1.7 KiB
73 lines
1.7 KiB
/*
|
|
* Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
|
|
* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*
|
|
*/
|
|
|
|
package com.sun.source.tree;
|
|
|
|
import javax.lang.model.element.Element;
|
|
import javax.lang.model.element.ExecutableElement;
|
|
import javax.lang.model.element.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 {@linkplain Tree tree node}. This position may be used to
|
|
* infer an enclosing method and/or class.
|
|
*
|
|
* <p>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.
|
|
*
|
|
* <p>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
|
|
*/
|
|
@jdk.Exported
|
|
public interface Scope {
|
|
/**
|
|
* Returns the enclosing scope.
|
|
*/
|
|
public Scope getEnclosingScope();
|
|
|
|
/**
|
|
* Returns the innermost type element containing the position of this scope
|
|
*/
|
|
public TypeElement getEnclosingClass();
|
|
|
|
/**
|
|
* Returns the innermost executable element containing the position of this scope.
|
|
*/
|
|
public ExecutableElement getEnclosingMethod();
|
|
|
|
/**
|
|
* Returns the elements directly contained in this scope.
|
|
*/
|
|
public Iterable<? extends Element> getLocalElements();
|
|
}
|