SourceLocator.Simple | Modifier and Type | Field and Description |
|---|---|
static int |
BAD_SHORT
"Failure" return value of canUseInc.
|
static int |
DEFINING_FLAG |
static int |
GLOBAL_FLAG |
static int |
HAS_VALUE |
static int |
PROCEDURE |
static int |
SET_IF_UNBOUND |
NEXT_AVAIL_FLAG, PREFER_BINDING2 applyMethodExpression, flags, noExpressions, type, VALIDATED applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey nameKey | Constructor and Description |
|---|
SetExp (Declaration decl,
Expression val) |
SetExp (java.lang.Object symbol,
Expression val) |
| Modifier and Type | Method and Description |
|---|---|
void |
apply (CallContext ctx)
Evaluate the expression.
|
protected Type |
calculateType () |
static int |
canUseInc (Expression rhs,
Declaration target) |
void |
compile (Compilation comp,
Target target) |
boolean |
getHasValue ()
True if evaluating the SetExp yields the value of the RHS.
|
Expression |
getNewValue ()
Get the Expression for calculating the new ("right-hand") value.
|
boolean |
isDefining () |
boolean |
isFuncDef ()
True if this is a functon definition ("defun").
|
boolean |
isSetIfUnbound () |
static SetExp |
makeDefinition (Declaration decl,
Expression val) |
static SetExp |
makeDefinition (java.lang.Object symbol,
Expression val) |
protected boolean |
mustCompile () |
void |
print (gnu.kawa.io.OutPort out) |
void |
setDefining (boolean value) |
void |
setFuncDef (boolean value) |
void |
setHasValue (boolean value) |
void |
setNewValue (Expression newValue) |
void |
setSetIfUnbound (boolean value) |
java.lang.String |
toString () |
protected <R,D> R |
visit (ExpVisitor<R,D> visitor,
D d) |
protected <R,D> void |
visitChildren (ExpVisitor<R,D> visitor,
D d) |
contextDecl, getBinding, getName, getSimpleName, getSymbol, setBinding, setContextDecl, string_name applyMethodExpression, checkLiteralKeyword, compile, compile, compileWithPosition, compileWithPosition, deepCopy, deepCopy, deepCopy, deepCopy, eval, eval, getColumnNumber, getEndColumn, getEndLine, getFileName, getFlag, getFlags, getLineNumber, getPublicId, getStartColumn, getStartLine, getSystemId, getType, getTypeRaw, isSingleValue, isStableSourceLocation, makeWhile, maybeSetLine, neverReturns, numArgs, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine, setLine, setLocation, setType, side_effects, validateApply, valueIfConstant apply0, apply1, apply2, apply3, apply4, applyL, applyN, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSetter, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation getProperty, removeProperty, setName, setProperty, setProperty, setSymbol clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitpublic static final int DEFINING_FLAG
public static final int GLOBAL_FLAG
public static final int PROCEDURE
public static final int SET_IF_UNBOUND
public static final int HAS_VALUE
public static final int BAD_SHORT
public SetExp(java.lang.Object symbol, Expression val)
public SetExp(Declaration decl, Expression val)
public static SetExp makeDefinition(java.lang.Object symbol, Expression val)
public static SetExp makeDefinition(Declaration decl, Expression val)
public final Expression getNewValue()
public void setNewValue(Expression newValue)
public final boolean isDefining()
public final void setDefining(boolean value)
public final boolean getHasValue()
public final void setHasValue(boolean value)
public final boolean isFuncDef()
public final void setFuncDef(boolean value)
public final boolean isSetIfUnbound()
public final void setSetIfUnbound(boolean value)
protected boolean mustCompile()
mustCompile in class Expression public void apply(CallContext ctx) throws java.lang.Throwable
Expression apply in class Expression java.lang.Throwablepublic void compile(Compilation comp, Target target)
compile in class Expression public static int canUseInc(Expression rhs, Declaration target)
protected final Type calculateType()
calculateType in class Expression protected <R,D> R visit(ExpVisitor<R,D> visitor, D d)
visit in class Expression protected <R,D> void visitChildren(ExpVisitor<R,D> visitor, D d)
visitChildren in class Expression public void print(gnu.kawa.io.OutPort out)
print in class Expression public java.lang.String toString()
toString in class Expression