code.symbols
Class DataSymbol
java.lang.Object
code.symbols.Symbol
code.symbols.DataSymbol
- Direct Known Subclasses:
- ConstructorSymbol, OperationSymbol
public abstract class DataSymbol
- extends Symbol
Abstracts a symbol that can produce data.
- Since:
- October 22, 2002
- Author:
- jimeng
|
Constructor Summary |
DataSymbol(java.lang.String moduleName,
java.lang.String symbolName,
int staticNestingDepth,
int arity,
int kind,
int associativity,
int precedence,
int visibility,
TypeExpression typeExp,
Instruction[] code)
Constructor for the DataSymbol object |
|
Method Summary |
abstract java.lang.Object |
accept(SymbolVisitor v,
java.lang.Object o)
Description of the Method |
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
toplevel
public static final int toplevel
- See Also:
- Constant Field Values
Operation
public static final int Operation
- See Also:
- Constant Field Values
UnboundVariable
public static final int UnboundVariable
- See Also:
- Constant Field Values
Failure
public static final int Failure
- See Also:
- Constant Field Values
Constructor
public static final int Constructor
- See Also:
- Constant Field Values
Left
public static final int Left
- See Also:
- Constant Field Values
Right
public static final int Right
- See Also:
- Constant Field Values
NonAssoc
public static final int NonAssoc
- See Also:
- Constant Field Values
NonInfix
public static final int NonInfix
- Associativity and Precedence of non-infix symbols
- See Also:
- Constant Field Values
staticNestingDepth
public final int staticNestingDepth
arity
public final byte arity
kind
public final byte kind
associativity
public final byte associativity
precedence
public final int precedence
- precedence is an int so that one can leave "gaps" in the assigned precedence values
and later when a new operation requires to occupy a position between the gaps it can do so readily.
just like Basic :-)
typeExp
public final TypeExpression typeExp
code
public final Instruction[] code
breakOnExec
public boolean breakOnExec
DataSymbol
public DataSymbol(java.lang.String moduleName,
java.lang.String symbolName,
int staticNestingDepth,
int arity,
int kind,
int associativity,
int precedence,
int visibility,
TypeExpression typeExp,
Instruction[] code)
- Constructor for the DataSymbol object
- Parameters:
moduleName - Symbol's ModuleName.symbolName - Symbol's Name.visibility - Symbol's Visibility.typeExp - Symbol's type expression.precedence - Symbol's precedence.associativity - Symbol's associativity.staticNestingDepth - Symbol's static nesting depth.arity - Symbol's arity.kind - Symbol's kind.code - Symbol's code.
accept
public abstract java.lang.Object accept(SymbolVisitor v,
java.lang.Object o)
- Description copied from class:
Symbol
- Description of the Method
- Specified by:
accept in class Symbol
- Parameters:
v - Description of the Parametero - Description of the Parameter
- Returns:
- Description of the Return Value