Package com.ibm.wala.cast.tree
Interface CAst
-
- All Known Implementing Classes:
CAstImpl
,CAstValueImpl
public interface CAst
The main interface for creating CAPA Abstract Syntax Trees. This interface provides essentially a factory for creating AST nodes in a tree structure. There is no strong assumption about the meaning of specific nodes; however, the `kind' argument to a makeNode call should be a value from the constants in the CAstNode interface. The other arguments to makeNode calls are child nodes. The structure of the tree is a matter of agreement between providers and consumers of specific trees.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description CAstNode
makeConstant(boolean value)
Make a boolean constant node.CAstNode
makeConstant(char value)
Make a char constant node.CAstNode
makeConstant(double value)
Make a double-precision floating point constant node.CAstNode
makeConstant(float value)
Make a single-precision floating point constant node.CAstNode
makeConstant(int value)
Make an integer constant node.CAstNode
makeConstant(long value)
Make a long integer constant node.CAstNode
makeConstant(short value)
Make a short integer constant node.CAstNode
makeConstant(Object value)
Make an arbitrary object constant node.CAstNode
makeNode(int kind)
Make a node of type kind with no children.CAstNode
makeNode(int kind, CAstNode c1)
Make a node of type kind with one child.CAstNode
makeNode(int kind, CAstNode[] cs)
Make a node of type kind specifying an array of children.CAstNode
makeNode(int kind, CAstNode c1, CAstNode c2)
Make a node of type kind with two children.CAstNode
makeNode(int kind, CAstNode firstChild, CAstNode[] otherChildren)
Make a node of type kind giving a first child and array of the rest.CAstNode
makeNode(int kind, CAstNode c1, CAstNode c2, CAstNode c3)
Make a node of type kind with three children.CAstNode
makeNode(int kind, CAstNode c1, CAstNode c2, CAstNode c3, CAstNode c4)
Make a node of type kind with four children.CAstNode
makeNode(int kind, CAstNode c1, CAstNode c2, CAstNode c3, CAstNode c4, CAstNode c5)
Make a node of type kind with five children.CAstNode
makeNode(int kind, CAstNode c1, CAstNode c2, CAstNode c3, CAstNode c4, CAstNode c5, CAstNode c6)
Make a node of type kind with six children.String
makeUnique()
Make a new identifier, unqiue to this CAst instance.
-
-
-
Method Detail
-
makeNode
CAstNode makeNode(int kind)
Make a node of type kind with no children.
-
makeNode
CAstNode makeNode(int kind, CAstNode c1, CAstNode c2)
Make a node of type kind with two children.
-
makeNode
CAstNode makeNode(int kind, CAstNode c1, CAstNode c2, CAstNode c3)
Make a node of type kind with three children.
-
makeNode
CAstNode makeNode(int kind, CAstNode c1, CAstNode c2, CAstNode c3, CAstNode c4)
Make a node of type kind with four children.
-
makeNode
CAstNode makeNode(int kind, CAstNode c1, CAstNode c2, CAstNode c3, CAstNode c4, CAstNode c5)
Make a node of type kind with five children.
-
makeNode
CAstNode makeNode(int kind, CAstNode c1, CAstNode c2, CAstNode c3, CAstNode c4, CAstNode c5, CAstNode c6)
Make a node of type kind with six children.
-
makeNode
CAstNode makeNode(int kind, CAstNode[] cs)
Make a node of type kind specifying an array of children.
-
makeNode
CAstNode makeNode(int kind, CAstNode firstChild, CAstNode[] otherChildren)
Make a node of type kind giving a first child and array of the rest.
-
makeConstant
CAstNode makeConstant(boolean value)
Make a boolean constant node.
-
makeConstant
CAstNode makeConstant(char value)
Make a char constant node.
-
makeConstant
CAstNode makeConstant(short value)
Make a short integer constant node.
-
makeConstant
CAstNode makeConstant(int value)
Make an integer constant node.
-
makeConstant
CAstNode makeConstant(long value)
Make a long integer constant node.
-
makeConstant
CAstNode makeConstant(double value)
Make a double-precision floating point constant node.
-
makeConstant
CAstNode makeConstant(float value)
Make a single-precision floating point constant node.
-
makeUnique
String makeUnique()
Make a new identifier, unqiue to this CAst instance.
-
-