ESC/Java2
© 2003,2004,2005 David Cok and Joseph Kiniry
© 2005 UCD Dublin
© 2003,2004 Radboud University Nijmegen
© 1999,2000 Compaq Computer Corporation
© 1997,1998,1999 Digital Equipment Corporation
All Rights Reserved

javafe.ast
Class LiteralExpr

java.lang.Object
  extended byjavafe.ast.ASTNode
      extended byjavafe.ast.VarInit
          extended byjavafe.ast.Expr
              extended byjavafe.ast.LiteralExpr
All Implemented Interfaces:
java.lang.Cloneable

public class LiteralExpr
extends Expr

Represents a Literal.

The tag of a LiteralExpr should be one of the *LIT (eg INTLIT) constants defined in TagConstants. The value fields is a Character/String/Long/Double/Boolean/null, as appropriate.


Field Summary
 int loc
           
 int tag
           
 java.lang.Object value
           
 
Fields inherited from class javafe.ast.ASTNode
decorations
 
Constructor Summary
protected LiteralExpr()
          Construct a raw LiteralExpr whose class invariant(s) have not yet been established.
 
Method Summary
 void accept(Visitor v)
          Accept a visit from v.
 java.lang.Object accept(VisitorArgResult v, java.lang.Object o)
           
static LiteralExpr cast(LiteralExpr lit, int t)
           
 void check()
           
 java.lang.Object childAt(int index)
          Return the first-but-ith child of a node.
 int childCount()
          Return the number of children a node has.
 int getEndLoc()
           
 int getStartLoc()
           
 int getTag()
          Return the tag of a node.
static LiteralExpr make(int tag, java.lang.Object value, int loc)
           
private  void postCheck()
           
 java.lang.String toString()
          Return a string representation of this.
 
Methods inherited from class javafe.ast.ASTNode
clone, clone, getDecorations, setDecorations
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

tag

public int tag

value

public java.lang.Object value

loc

public int loc
Constructor Detail

LiteralExpr

protected LiteralExpr()
Construct a raw LiteralExpr whose class invariant(s) have not yet been established. It is the caller's job to initialize the returned node's fields so that any class invariants hold.

Method Detail

getTag

public final int getTag()
Description copied from class: ASTNode
Return the tag of a node.

Specified by:
getTag in class ASTNode

postCheck

private void postCheck()

getStartLoc

public int getStartLoc()
Specified by:
getStartLoc in class ASTNode

getEndLoc

public int getEndLoc()
Overrides:
getEndLoc in class ASTNode

cast

public static LiteralExpr cast(LiteralExpr lit,
                               int t)

make

public static LiteralExpr make(int tag,
                               java.lang.Object value,
                               int loc)

childCount

public final int childCount()
Description copied from class: ASTNode
Return the number of children a node has.

Specified by:
childCount in class ASTNode

childAt

public final java.lang.Object childAt(int index)
Description copied from class: ASTNode
Return the first-but-ith child of a node.

Specified by:
childAt in class ASTNode

toString

public final java.lang.String toString()
Description copied from class: ASTNode
Return a string representation of this. Meant for debugging use only, not for presentation.

Specified by:
toString in class ASTNode

accept

public final void accept(Visitor v)
Description copied from class: ASTNode
Accept a visit from v. This method simply calls the method of v corresponding to the allocated type of this, passing this as the argument. See the design patterns book.

Specified by:
accept in class ASTNode

accept

public final java.lang.Object accept(VisitorArgResult v,
                                     java.lang.Object o)
Specified by:
accept in class ASTNode

check

public void check()
Overrides:
check in class Expr

ESC/Java2
© 2003,2004,2005 David Cok and Joseph Kiniry
© 2005 UCD Dublin
© 2003,2004 Radboud University Nijmegen
© 1999,2000 Compaq Computer Corporation
© 1997,1998,1999 Digital Equipment Corporation
All Rights Reserved

The ESC/Java2 Project Homepage