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 intNEXT_AVAIL_FLAGstatic intPREFER_BINDING2Prefer 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 DeclarationcontextDecl()DeclarationgetBinding()If non-null, the local Declaration this refers to.StringgetName()StringgetSimpleName()Return a simple name, or null if the name has a non-empty namespace.ObjectgetSymbol()voidsetBinding(Declaration decl)voidsetContextDecl(Declaration decl)Stringstring_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:
getNamein interfaceNamed- Overrides:
getNamein 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:
getSymbolin interfaceNamed- Overrides:
getSymbolin 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)
-
-