boolean
|
canReach(Environment env, MemberDefinition f)
Check if a field can reach another field (only considers
forward references, not the access modifiers).
|
void
|
checkBackBranch(Environment env, Statement loop, Vset vsEntry, Vset vsBack)
Raise an error if a blank final was definitely unassigned
on entry to a loop, but has possibly been assigned on the
back-branch.
|
int
|
declare(Environment env, LocalMember local)
Declare local
|
int
|
declareFieldNumber(MemberDefinition field)
Assign a number to a class field.
|
Expression
|
findOuterLink(Environment env, long where, ClassDefinition reqc, MemberDefinition f, boolean needExactMatch)
|
Expression
|
findOuterLink(Environment env, long where, MemberDefinition f)
Return a local expression which can serve as the base reference
for the given field.
|
ClassDefinition
|
findScope(Environment env, ClassDefinition reqc)
From which enclosing class do members of this type come?
|
Identifier
|
getApparentClassName(Environment env, Identifier name)
Return the name of a lexically apparent type,
skipping inherited members, and ignoring
the current pacakge and imports.
|
final
MemberDefinition
|
getApparentField(Environment env, Identifier name)
Like getField, except that it skips over inherited fields.
|
Context
|
getBreakContext(Identifier lbl)
Get the destination context of a break
|
Context
|
getContinueContext(Identifier lbl)
Get the destination context of a continue
|
MemberDefinition
|
getElement(int number)
Return the local field or member field corresponding to a number.
|
final
MemberDefinition
|
getField()
Return the field containing the present context.
|
final
MemberDefinition
|
getField(Environment env, Identifier name)
Get either a local variable, or a field in a current class
|
int
|
getFieldNumber(MemberDefinition field)
Retrieve a number previously assigned by declareMember().
|
Context
|
getLabelContext(Identifier lbl)
Get the context that corresponds to a label, return null if
not found.
|
LocalMember
|
getLocalClass(Identifier name)
Get a local class by name
|
LocalMember
|
getLocalField(Identifier name)
Get a local variable by name
|
CheckContext
|
getReturnContext()
Get the destination context of a return (the method body)
|
int
|
getScopeNumber(ClassDefinition c)
Get the scope number for a reference to a member of this class
(Larger scope numbers are more deeply nested.)
|
int
|
getThisNumber()
Return the number of the innermost current instance reference.
|
CheckContext
|
getTryExitContext()
Get the context of the innermost surrounding try-block.
|
final
int
|
getVarNumber()
|
boolean
|
isInScope(LocalMember field)
Check if the given field is active in this context.
|
Expression
|
makeReference(Environment env, LocalMember target)
Implement a reference (usually an uplevel one).
|
static
Environment
|
newEnvironment(Environment env, Context ctx)
Extend an environment with the given context.
|
UplevelReference
|
noteReference(Environment env, LocalMember target)
Notice a reference (usually an uplevel one).
|
static
boolean
|
outerLinkExists(Environment env, ClassDefinition reqc, ClassDefinition thisc)
Is there a "this" of type reqc in scope?
|
final
Vset
|
removeAdditionalVars(Vset vset)
Remove variables from the vset set that are no longer part of
this context.
|