|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object | +--gnu.expr.Declaration
The static information associated with a local variable binding.
| Field Summary | |
ScopeExp |
context
|
ApplyExp |
firstCall
List of ApplyExp where this declaration is the function called. |
protected int |
flags
|
protected int |
id
Unique id number, to ease print-outs and debugging. |
protected Type |
type
|
protected Expression |
value
If non-null, the single expression used to set this variable. |
| Constructor Summary | |
protected |
Declaration()
|
|
Declaration(java.lang.String name)
|
|
Declaration(java.lang.String s,
Type type)
|
| Method Summary | |
Variable |
allocateVariable(CodeAttr code)
|
void |
assignField(Compilation comp)
|
void |
compileStore(Compilation comp)
|
boolean |
getCanCall()
|
boolean |
getCanRead()
|
boolean |
getCanWrite()
|
int |
getColumn()
|
ScopeExp |
getContext()
Return the ScopeExp that contains (declares) this Declaration. |
java.lang.String |
getFile()
|
int |
getLine()
Get the line number of (the start of) this Expression. |
java.lang.String |
getName()
|
Type |
getType()
|
Expression |
getValue()
|
Variable |
getVariable()
|
boolean |
ignorable()
True if we never need to access this declaration. |
void |
initBinding(Compilation comp)
Generate code to initialize the location for this. |
boolean |
isFluid()
True if this is a fluid binding (in a FluidLetExp). |
boolean |
isIndirectBinding()
True if the value of the variable is the contents of a Binding. |
boolean |
isLexical()
|
boolean |
isPrivate()
|
boolean |
isProcedureDecl()
|
boolean |
isPublic()
|
boolean |
isSimple()
|
boolean |
isStatic()
|
void |
load(Compilation comp)
|
void |
loadOwningObject(Compilation comp)
If this is a field in some object, load a reference to that object. |
Declaration |
nextDecl()
|
void |
noteValue(Expression value)
|
void |
pushIndirectBinding(Compilation comp)
Create a Binding object, given that isIndirectBinding(). |
void |
setCanCall(boolean called)
|
void |
setCanRead(boolean read)
|
void |
setCanWrite(boolean written)
|
void |
setFile(java.lang.String filename)
|
void |
setFlag(boolean setting,
int flag)
|
void |
setFluid(boolean fluid)
|
void |
setIndirectBinding(boolean indirectBinding)
|
void |
setLine(int lineno)
|
void |
setLine(int lineno,
int colno)
|
void |
setName(java.lang.String name)
|
void |
setPrivate(boolean isPrivate)
|
void |
setProcedureDecl(boolean val)
|
void |
setSimple(boolean b)
|
void |
setType(Type type)
|
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
| Field Detail |
protected int id
public ScopeExp context
protected Type type
protected Expression value
protected int flags
public ApplyExp firstCall
| Constructor Detail |
protected Declaration()
public Declaration(java.lang.String name)
public Declaration(java.lang.String s,
Type type)
| Method Detail |
public final Type getType()
public final void setType(Type type)
public final java.lang.String getName()
public final Declaration nextDecl()
public Variable getVariable()
public final boolean isSimple()
public final void setSimple(boolean b)
public final ScopeExp getContext()
public void loadOwningObject(Compilation comp)
public void assignField(Compilation comp)
public void load(Compilation comp)
public void compileStore(Compilation comp)
public final Expression getValue()
public final void setFlag(boolean setting,
int flag)
public final boolean isPublic()
public final boolean isPrivate()
public final void setPrivate(boolean isPrivate)
public final boolean isFluid()
public final void setFluid(boolean fluid)
public final boolean isProcedureDecl()
public final void setProcedureDecl(boolean val)
public final boolean isIndirectBinding()
public final void setIndirectBinding(boolean indirectBinding)
public final boolean getCanRead()
public final void setCanRead(boolean read)
public final boolean getCanCall()
public final void setCanCall(boolean called)
public final boolean getCanWrite()
public final void setCanWrite(boolean written)
public void setName(java.lang.String name)
public boolean ignorable()
public boolean isStatic()
public final boolean isLexical()
public void noteValue(Expression value)
public void pushIndirectBinding(Compilation comp)
public final Variable allocateVariable(CodeAttr code)
public void initBinding(Compilation comp)
public final void setFile(java.lang.String filename)
public final void setLine(int lineno,
int colno)
public final void setLine(int lineno)
public final java.lang.String getFile()
public final int getLine()
public final int getColumn()
public java.lang.String toString()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||