Package gnu.expr
Class AccessExp
- java.lang.Object
-
- gnu.mapping.PropertySet
-
- gnu.mapping.Procedure
-
- gnu.expr.Expression
-
- gnu.expr.AccessExp
-
- All Implemented Interfaces:
gnu.kawa.format.Printable
,Named
,SourceLocator
,SourceLocator
,Locator
- Direct Known Subclasses:
ReferenceExp
,SetExp
public abstract class AccessExp extends Expression
A common super-type for ReferenceExpa and SetExp. Contains shared information about the variable that is accessed.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface gnu.text.SourceLocator
SourceLocator.Simple
-
-
Field Summary
Fields Modifier and Type Field Description static int
NEXT_AVAIL_FLAG
static int
PREFER_BINDING2
Prefer the function binding rather than the value binding.-
Fields inherited from class gnu.expr.Expression
applyMethodExpression, flags, noExpressions, type, VALIDATED
-
Fields inherited from class gnu.mapping.Procedure
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey
-
Fields inherited from class gnu.mapping.PropertySet
nameKey
-
-
Constructor Summary
Constructors Constructor Description AccessExp()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Declaration
contextDecl()
Declaration
getBinding()
If non-null, the local Declaration this refers to.String
getName()
String
getSimpleName()
Return a simple name, or null if the name has a non-empty namespace.Object
getSymbol()
void
setBinding(Declaration decl)
void
setContextDecl(Declaration decl)
String
string_name()
-
Methods inherited from class gnu.expr.Expression
apply, applyMethodExpression, calculateType, checkLiteralKeyword, compile, 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, mustCompile, neverReturns, numArgs, print, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine, setLine, setLocation, setType, side_effects, toString, validateApply, valueIfConstant, visit, visitChildren
-
Methods inherited from class gnu.mapping.Procedure
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
-
Methods inherited from class gnu.mapping.PropertySet
getProperty, removeProperty, setName, setProperty, setProperty, setSymbol
-
-
-
-
Field Detail
-
PREFER_BINDING2
public static final int PREFER_BINDING2
Prefer the function binding rather than the value binding. This applies to languages like Common Lisp (and Java) that have separate namespaces for values/fields and functions/methods.- See Also:
- Constant Field Values
-
NEXT_AVAIL_FLAG
public static final int NEXT_AVAIL_FLAG
- See Also:
- Constant Field Values
-
-
Method Detail
-
string_name
public String string_name()
-
getName
public final String getName()
- Specified by:
getName
in interfaceNamed
- Overrides:
getName
in classPropertySet
-
getSimpleName
public final String getSimpleName()
Return a simple name, or null if the name has a non-empty namespace.
-
getSymbol
public final Object getSymbol()
- Specified by:
getSymbol
in interfaceNamed
- Overrides:
getSymbol
in classPropertySet
-
getBinding
public final Declaration getBinding()
If non-null, the local Declaration this refers to.
-
setBinding
public final void setBinding(Declaration decl)
-
contextDecl
public final Declaration contextDecl()
-
setContextDecl
public final void setContextDecl(Declaration decl)
-
-