public class Global extends ProtoExpression
VOID_ASSIGNMENTS| Constructor and Description |
|---|
Global(Symbol symbol) |
Global(Tables tables,
java.lang.String name) |
Global(Tables tables,
java.lang.String name,
Type type) |
Global(Tables tables,
Symbol symbol) |
| Modifier and Type | Method and Description |
|---|---|
CodeEntry |
checkedCodeEntry() |
CodeEntry |
codeEntry() |
void |
compile(Compiler compiler)
This method compiles this expression in the context of the specified
Compiler.
|
boolean |
containsFreeName(java.lang.String name)
Returns true iff the specified name occurs free in this expression.
|
Expression |
copy()
Returns a deep copy of this expression.
|
DefinedEntry |
definedEntry() |
static Global |
dummyCollection() |
static Global |
dummyIndexable() |
static Global |
dummyIndexSet() |
boolean |
equals(java.lang.Object other) |
Type |
filter() |
Global |
globalConstant(Type type) |
Global |
globalConstant(Type domain,
Type range) |
boolean |
isDefined() |
java.lang.String |
name() |
void |
resetCheckedType(Type type) |
void |
setCheckedType()
This method sets the final unambiguously checked type of this expression, possibly
along with other final information that may be needed by the compiler for
generating code.
|
void |
setCheckedType(Type type)
NB: this is not final because itis overridden in
Abstraction and
Global.
|
void |
setCodeEntry(CodeEntry codeEntry) |
Type |
sieve() |
Symbol |
symbol() |
java.lang.String |
toString() |
void |
typeCheck(TypeChecker typeChecker)
This method type-checks this expression in the context of the specified
TypeChecker.
|
void |
typeCheck(Type type,
TypeChecker typeChecker)
This method ascertains that this expression has the specified type in
the context of the specified
TypeChecker.
|
Expression |
typedCopy()
Returns a deep copy of this expression this and all its subexpressions share the
same type as their copy's counterparts.
|
ArrayList |
viableTypes() |
checkedType, setType, type, typeRefaddType, addTypes, boxSort, enclosingScope, extent, getEnd, getStart, isConstant, isEquality, isFalse, isHiddenSlicing, isNull, isSelector, isSlicing, isTrue, isVoid, locationString, numberOfSubexpressions, otherTypes, parameters, sanitizeNames, sanitizeSorts, setCheckedTypeLocked, setEnd, setExtent, setOtherTypes, setStart, setSubexpression, shiftOffsets, shiftOffsets, sort, subexpression, substitute, typeCheck, typeCheckLockedpublic Global(Tables tables, java.lang.String name)
public Global(Symbol symbol)
public final Expression copy()
Expressioncopy in class Expressionpublic final Expression typedCopy()
ExpressiontypedCopy in class Expressionpublic static final Global dummyIndexSet()
public static final Global dummyIndexable()
public static final Global dummyCollection()
public final Type filter()
public final Type sieve()
public final java.lang.String name()
public final boolean containsFreeName(java.lang.String name)
ExpressioncontainsFreeName in class Expressionpublic final DefinedEntry definedEntry()
public final CodeEntry checkedCodeEntry()
public final void setCheckedType()
ExpressionsetCheckedType in class Expressionpublic final void setCheckedType(Type type)
ProtoExpressionsetCheckedType in class ProtoExpressionpublic final void resetCheckedType(Type type)
public final Symbol symbol()
public final CodeEntry codeEntry()
public final void setCodeEntry(CodeEntry codeEntry)
public final boolean isDefined()
public final ArrayList viableTypes()
public final void typeCheck(TypeChecker typeChecker) throws TypingErrorException
ExpressiontypeCheck in class ExpressionTypingErrorExceptionpublic final void typeCheck(Type type, TypeChecker typeChecker) throws TypingErrorException
ExpressiontypeCheck in class ExpressionTypingErrorExceptionpublic final void compile(Compiler compiler)
Expressioncompile in class Expressionpublic final boolean equals(java.lang.Object other)
equals in class java.lang.Objectpublic final java.lang.String toString()
toString in class java.lang.Object