|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--openjava.ptree.ParseTreeObject | +--openjava.ptree.NonLeaf | +--openjava.ptree.CastExpression
The CastExpression
class represents
a cast expression of parse tree.
If the operator in the expression of the right operand has week unity,
this automatically produces the code in which the right operand
is enclosed by parenthesises.
In the case the caster is int
and
the right operand to be casted is p + q
,
this produces the code :
(int) (p + q)
NonLeaf
,
Expression
,
TypeName
Field Summary |
Fields inherited from class openjava.ptree.NonLeaf |
|
Fields inherited from class openjava.ptree.ParseTreeObject |
debugFlag, debugLevel, LN, out, writerStack |
Constructor Summary | |
(package private) |
CastExpression()
|
|
CastExpression(OJClass type,
Expression expr)
|
|
CastExpression(TypeName ts,
Expression expr)
Allocates a new object. |
Method Summary | |
void |
accept(ParseTreeVisitor v)
Accepts a ParseTreeVisitor object as the role of a
Visitor in the Visitor pattern, as the role of an Element in the
Visitor pattern. |
Expression |
getExpression()
Gets the expression of the operand to be casted in this expression. |
OJClass |
getType(Environment env)
|
TypeName |
getTypeSpecifier()
Gets the type specifier to cast in this expression. |
void |
setExpression(Expression expr)
Sets the expression of the operand to be casted in this expression. |
void |
setTypeSpecifier(TypeName tspec)
Sets the type specifier to cast in this expression. |
void |
writeCode()
Writes the code this parse-tree presents for. |
Methods inherited from class openjava.ptree.NonLeaf |
childrenAccept, childrenAreEqual, elementAt, equals, getComment, getContents, getLength, getRowType, makeRecursiveCopy, replaceChildWith, set, set, set, set, set, set, set, set, set, setComment, setElementAt |
Methods inherited from class openjava.ptree.ParseTreeObject |
clone, eq, eq, equal, flushPrintWriter, getDebugFlag, getNest, getObjectID, getParent, getPrintWriter, getTab, hashCode, lastObjectID, makeCopy, popNest, popPrintWriter, pushNest, pushPrintWriter, replace, setDebugFlag, setDebugLevel, setNest, setParent, setPrintStream, setTab, toFlattenString, toString, writeDebug, writeDebugL, writeDebugLln, writeDebugln, writeDebugLR, writeDebugR, writeDebugRln, writeTab |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface openjava.ptree.Expression |
getRowType |
Methods inherited from interface openjava.ptree.ParseTree |
childrenAccept, eq, equals, getObjectID, makeCopy, makeRecursiveCopy, replace, toFlattenString, toString |
Constructor Detail |
public CastExpression(TypeName ts, Expression expr)
ts
- the type specifier to cast in this expression.expr
- the expression to be casted in this expression.public CastExpression(OJClass type, Expression expr)
CastExpression()
Method Detail |
public void writeCode()
NonLeaf
writeCode
in interface ParseTree
writeCode
in class NonLeaf
public TypeName getTypeSpecifier()
public void setTypeSpecifier(TypeName tspec)
tspec
- the type specifier.public Expression getExpression()
public void setExpression(Expression expr)
expr
- the expression.public void accept(ParseTreeVisitor v) throws ParseTreeException
ParseTree
ParseTreeVisitor
object as the role of a
Visitor in the Visitor pattern, as the role of an Element in the
Visitor pattern.
This invoke an appropriate visit()
method on the
accepted visitor.
accept
in interface ParseTree
accept
in class ParseTreeObject
v
- a visitor
ParseTreeException
public OJClass getType(Environment env) throws Exception
getType
in interface Expression
Exception
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |