|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectat.dms.util.Utils
at.dms.compiler.Phylum
at.dms.kjc.JPhylum
at.dms.kjc.JStatement
public abstract class JStatement
JLS 14.5: Statement This class is the root class for all statement classes.
| Field Summary |
|---|
| Fields inherited from class at.dms.util.Utils |
|---|
EMPTY_LIST, getForLoopCallers |
| Fields inherited from interface at.dms.kjc.Constants |
|---|
CMP_VERSION, JAV_CLASS, JAV_CLONE, JAV_CLONEABLE, JAV_CONSTRUCTOR, JAV_ERROR, JAV_EXCEPTION, JAV_INIT, JAV_LENGTH, JAV_NAME_SEPARATOR, JAV_OBJECT, JAV_OUTER_THIS, JAV_RUNTIME, JAV_RUNTIME_EXCEPTION, JAV_STATIC_INIT, JAV_STRING, JAV_STRINGBUFFER, JAV_THIS, JAV_THROWABLE, OPE_BAND, OPE_BNOT, OPE_BOR, OPE_BSR, OPE_BXOR, OPE_EQ, OPE_GE, OPE_GT, OPE_LE, OPE_LNOT, OPE_LT, OPE_MINUS, OPE_NE, OPE_PERCENT, OPE_PLUS, OPE_POSTDEC, OPE_POSTINC, OPE_PREDEC, OPE_PREINC, OPE_SIMPLE, OPE_SL, OPE_SLASH, OPE_SR, OPE_STAR, TID_ARRAY, TID_BIT, TID_BOOLEAN, TID_BYTE, TID_CHAR, TID_CLASS, TID_DOUBLE, TID_FLOAT, TID_INT, TID_LONG, TID_SHORT, TID_VECTOR, TID_VOID, VECTOR_EMPTY |
| Constructor Summary | |
|---|---|
protected |
JStatement()
|
|
JStatement(TokenReference where,
JavaStyleComment[] comments)
Construct a node in the parsing tree |
| Method Summary | |
|---|---|
abstract Object |
accept(AttributeVisitor p)
Accepts the specified attribute visitor |
void |
accept(KjcVisitor p)
Accepts the specified visitor |
abstract void |
analyse(CBodyContext context)
Analyses the statement (semantically). |
Object |
deepClone()
Returns a deep clone of this object. |
protected void |
deepCloneInto(JStatement other)
Clones all fields of this into |
protected void |
fail(CContext context,
MessageDescription key,
Object[] params)
Adds a compiler error. |
abstract void |
genCode(CodeSequence code)
Generates a sequence of bytescodes |
at.dms.kjc.CodeLabel |
getBreakLabel()
Returns a label at end of this statement (for break statement) |
JavaStyleComment[] |
getComments()
Returns the comments |
at.dms.kjc.CodeLabel |
getContinueLabel()
Returns the beginning of this block (for continue statement) |
void |
setComments(JavaStyleComment[] comments)
Set the comments. |
| Methods inherited from class at.dms.kjc.JPhylum |
|---|
assertMutable, check, check, check, check, deepCloneInto, setLineNumber |
| Methods inherited from class at.dms.compiler.Phylum |
|---|
deepCloneInto, getTokenReference, setTokenReference |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected JStatement()
public JStatement(TokenReference where,
JavaStyleComment[] comments)
where - the line of this node in the source code| Method Detail |
|---|
public abstract void analyse(CBodyContext context)
throws PositionedError
context - the analysis context
PositionedError - the analysis detected an error
protected void fail(CContext context,
MessageDescription key,
Object[] params)
throws PositionedError
fail in class JPhylumcontext - the context in which the error occurredkey - the message ident to be displayedparams - the array of parameters
PositionedErrorpublic at.dms.kjc.CodeLabel getBreakLabel()
public at.dms.kjc.CodeLabel getContinueLabel()
public abstract void genCode(CodeSequence code)
code - the code listpublic void accept(KjcVisitor p)
accept in class JPhylump - the visitorpublic abstract Object accept(AttributeVisitor p)
accept in class JPhylump - the visitorpublic JavaStyleComment[] getComments()
public void setComments(JavaStyleComment[] comments)
comments - public Object deepClone()
deepClone in interface DeepCloneabledeepClone in class JPhylumprotected void deepCloneInto(JStatement other)
other
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||