public class QuoteExp extends Expression
| Modifier and Type | Field and Description |
|---|---|
static QuoteExp |
abstractExp |
static QuoteExp |
classObjectExp |
static int |
EXPLICITLY_TYPED |
static QuoteExp |
falseExp |
static QuoteExp |
falseObjExp |
static int |
IS_KEYWORD |
static QuoteExp |
nativeExp |
static QuoteExp |
nullExp |
static int |
SHARED_CONSTANT |
static QuoteExp |
trueExp |
static QuoteExp |
trueObjExp |
static QuoteExp |
undefined_exp |
static QuoteExp |
voidExp |
static QuoteExp |
voidObjectExp
Same value as voidExp, but different type, to suppress diagnostics.
|
flags, NEXT_AVAIL_FLAG, noExpressions, type, VALIDATEDcompilerKey, compilerXKey, validateApplyKey, validateXApplyKeynameKey| Constructor and Description |
|---|
QuoteExp(java.lang.Object val) |
QuoteExp(java.lang.Object val,
Type type) |
| Modifier and Type | Method and Description |
|---|---|
void |
apply(CallContext ctx)
Evaluate the expression.
|
protected Type |
calculateType() |
void |
compile(Compilation comp,
Target target) |
Expression |
deepCopy(IdentityHashTable mapper) |
static QuoteExp |
getInstance(java.lang.Object value) |
static QuoteExp |
getInstance(java.lang.Object value,
SourceLocator position) |
Type |
getRawType() |
java.lang.Object |
getValue() |
boolean |
isExplicitlyTyped() |
boolean |
isSharedConstant() |
protected boolean |
mustCompile() |
void |
print(gnu.kawa.io.OutPort out) |
void |
setType(Type type) |
boolean |
side_effects()
True if evaluating may have side-effects.
|
java.lang.String |
toString() |
Expression |
validateApply(ApplyExp exp,
InlineCalls visitor,
Type required,
Declaration decl)
Apply inlining transformations on a given ApplyExp.
|
java.lang.Object |
valueIfConstant()
Return value if it is constant, or null if non-constant or unknown.
|
protected <R,D> R |
visit(ExpVisitor<R,D> visitor,
D d) |
apply0, checkLiteralKeyword, compile, compile, compileButFirst, compileNotePosition, compileWithPosition, compileWithPosition, deepCopy, deepCopy, deepCopy, eval, eval, getColumnNumber, getFileName, getFlag, getFlags, getLineNumber, getPublicId, getSystemId, getType, getTypeRaw, isSingleValue, isStableSourceLocation, makeWhile, match0, maybeSetLine, neverReturns, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine, setLocation, visitChildrenapply, check0, check1, check2, check3, check4, checkArgCount, checkN, getReturnType, getSetter, getSourceLocation, isSideEffectFree, match1, match2, match3, match4, matchN, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocationgetName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbolpublic static final int EXPLICITLY_TYPED
public static final int SHARED_CONSTANT
public static final int IS_KEYWORD
public static QuoteExp undefined_exp
public static QuoteExp abstractExp
public static QuoteExp nativeExp
public static QuoteExp voidExp
public static QuoteExp voidObjectExp
public static QuoteExp trueExp
public static QuoteExp falseExp
public static QuoteExp trueObjExp
public static QuoteExp falseObjExp
public static QuoteExp nullExp
public static final QuoteExp classObjectExp
public QuoteExp(java.lang.Object val)
public QuoteExp(java.lang.Object val,
Type type)
public final java.lang.Object getValue()
public final java.lang.Object valueIfConstant()
ExpressionvalueIfConstant in class Expressionpublic final Type getRawType()
protected final Type calculateType()
calculateType in class Expressionpublic void setType(Type type)
setType in class Expressionpublic boolean isExplicitlyTyped()
public boolean isSharedConstant()
public static QuoteExp getInstance(java.lang.Object value)
public static QuoteExp getInstance(java.lang.Object value, SourceLocator position)
protected boolean mustCompile()
mustCompile in class Expressionpublic void apply(CallContext ctx)
Expressionapply in class Expressionpublic void compile(Compilation comp, Target target)
compile in class Expressionpublic Expression deepCopy(IdentityHashTable mapper)
deepCopy in class Expressionprotected <R,D> R visit(ExpVisitor<R,D> visitor, D d)
visit in class Expressionpublic Expression validateApply(ApplyExp exp, InlineCalls visitor, Type required, Declaration decl)
ExpressionvalidateApply in class Expressionexp - an application whose function expression can be simplified
to this expression.visitor - the context for the current inlining passdecl - if non-null, a Declaration bound to this expression.public boolean side_effects()
Expressionside_effects in class Expressionpublic java.lang.String toString()
toString in class Expressionpublic void print(gnu.kawa.io.OutPort out)
print in class Expression