Scopes keep track of the definitions defined within a section of source code (and also any import
and use namespace
directives).
It is common for a definition contained within a scope to contain another scope, so scopes and definitions form a hierarchical structure.
Scopes exist at the level of projects, files, packages, classes, interfaces, functions, catch
blocks, and with
blocks.
A file scope (which may contain package, class, interface, function, catch
, and with
scopes) is the local symbol table for resolving references in a compilation unit to definitions within that same compilation unit.
A project scope, populated with any externally visible definitions from each file scope, is the global symbol table for resolving reference in a compilation unit to definitions in other compilation units.
Each {@link IASScope} supports the following behavior:
|
|