jparse
Class ConstrAST

java.lang.Object
  extended byantlr.BaseAST
      extended byantlr.CommonAST
          extended byantlr.CommonASTWithHiddenTokens
              extended byjparse.JavaAST
                  extended byjparse.ConstrAST
All Implemented Interfaces:
antlr.collections.AST, Constructor, HasExceptions, JavaTokenTypes, Serializable

public final class ConstrAST
extends JavaAST
implements Constructor, JavaTokenTypes

An AST node that represents a constructor definition

Author:
Jerry James
See Also:
Serialized Form

Field Summary
private  CompoundAST body
          The body of the constructor
private  Type[] exceptions
          The checked exceptions this constructor might throw
private  IdentifierAST[] exceptNames
          The names of the exception types thrown by this constructor
private  ModifierAST modifiers
          The modifiers for this constructor
private  ParameterAST[] paramNames
          The names of the parameter for this constructor
private  Type[] paramTypes
          The parameter types for this constructor
 
Fields inherited from class jparse.JavaAST
context, currSymTable, noTypes, symTable, topLevel, typeAST
 
Fields inherited from class antlr.CommonASTWithHiddenTokens
hiddenAfter, hiddenBefore
 
Fields inherited from class antlr.CommonAST
 
Fields inherited from class antlr.BaseAST
down, right
 
Fields inherited from interface jparse.JavaTokenTypes
ARRAY_DECLARATOR, ARRAY_INIT, ASSIGN, BAND, BAND_ASSIGN, BNOT, BOR, BOR_ASSIGN, BSR, BSR_ASSIGN, BXOR, BXOR_ASSIGN, CASE_GROUP, CHAR_LITERAL, COLON, COMMA, CONCAT_ASSIGN, CONCATENATION, CONST, CONSTRUCTOR_CALL, CTOR_DEF, DEC, DIV, DIV_ASSIGN, DOT, ELIST, EMPTY_STAT, EOF, EQUAL, ESC, EXPONENT, EXPRESSION_STAT, EXTENDS_CLAUSE, FILE, FLOAT_SUFFIX, FOR_CONDITION, FOR_INIT, FOR_ITERATOR, GE, GOTO, GT, HEX_DIGIT, IDENT, IMPLEMENTS_CLAUSE, INC, INDEX_OP, INSTANCE_INIT, LABELED_STAT, LAND, LBRACK, LCURLY, LE, LITERAL_abstract, LITERAL_boolean, LITERAL_break, LITERAL_byte, LITERAL_case, LITERAL_catch, LITERAL_char, LITERAL_class, LITERAL_continue, LITERAL_default, LITERAL_do, LITERAL_double, LITERAL_else, LITERAL_extends, LITERAL_false, LITERAL_final, LITERAL_finally, LITERAL_float, LITERAL_for, LITERAL_if, LITERAL_implements, LITERAL_import, LITERAL_instanceof, LITERAL_int, LITERAL_interface, LITERAL_long, LITERAL_native, LITERAL_new, LITERAL_null, LITERAL_package, LITERAL_private, LITERAL_protected, LITERAL_public, LITERAL_return, LITERAL_short, LITERAL_static, LITERAL_strictfp, LITERAL_super, LITERAL_switch, LITERAL_synchronized, LITERAL_this, LITERAL_throw, LITERAL_throws, LITERAL_transient, LITERAL_true, LITERAL_try, LITERAL_void, LITERAL_volatile, LITERAL_while, LNOT, LOR, LPAREN, LT, METHOD_CALL, METHOD_DEF, MINUS, MINUS_ASSIGN, ML_COMMENT, MOD, MOD_ASSIGN, MODIFIERS, NOT_EQUAL, NULL_TREE_LOOKAHEAD, NUM_FLOAT, NUM_INT, OBJBLOCK, PARAMETER_DEF, PARAMETERS, PAREN_EXPR, PLUS, PLUS_ASSIGN, POST_DEC, POST_INC, QUESTION, RBRACK, RCURLY, RPAREN, SEMI, SL, SL_ASSIGN, SL_COMMENT, SLIST, SR, SR_ASSIGN, STAR, STAR_ASSIGN, STRING_LITERAL, TYPE, TYPE_STAT, TYPECAST, UNARY_MINUS, UNARY_PLUS, VARIABLE_DEF, VARIABLE_DEFS, VOCAB, WS
 
Constructor Summary
(package private) ConstrAST()
          Create a default constructor
(package private) ConstrAST(ModifierAST mods, JavaAST parameters, JavaAST exceptions, CompoundAST block)
          Create a new constructor AST
 
Method Summary
 Constructor bestMatch(Constructor cons)
          Find the best match, given two matching constructors
protected  Type[] computeExceptions()
          Returns an array of Type objects that represent the types of the exceptions declared to be thrown by this constructor.
 CompoundAST getBody()
          Get the code for the body of this constructor
 Type getDeclaringClass()
          Returns the Type object representing the class or interface that declares the constructor represented by this object.
 Type[] getExceptionTypes()
          Get the checked exception types that might be thrown by this constructor
 int getModifiers()
          Returns the Java language modifiers for the constructor represented by this object, as an integer.
 ParameterAST[] getParameters()
          Get the formal parameters of this constructor
 Type[] getParameterTypes()
          Returns an array of Type objects that represent the formal parameter types, in declaration order, of this constructor.
 boolean match(Type[] params, Type caller)
          Determines whether this constructor matches the parameters given by a caller
 void parseComplete()
          Compute any derived attributes that must be evaluated after the initial parse.
 String toString()
          Return a string describing this ConstrAST
 
Methods inherited from class jparse.JavaAST
print, printHiddenAfter, printHiddenBefore
 
Methods inherited from class antlr.CommonASTWithHiddenTokens
getHiddenAfter, getHiddenBefore, initialize
 
Methods inherited from class antlr.CommonAST
getText, getType, initialize, initialize, setText, setType
 
Methods inherited from class antlr.BaseAST
addChild, decode, encode, equals, equalsList, equalsListPartial, equalsTree, equalsTreePartial, findAll, findAllPartial, getColumn, getFirstChild, getLine, getNextSibling, getNumberOfChildren, getTokenNames, removeChildren, setFirstChild, setNextSibling, setVerboseStringConversion, toStringList, toStringTree, xmlSerialize, xmlSerializeNode, xmlSerializeRootClose, xmlSerializeRootOpen
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

modifiers

private final ModifierAST modifiers
The modifiers for this constructor


paramNames

private final ParameterAST[] paramNames
The names of the parameter for this constructor


paramTypes

private Type[] paramTypes
The parameter types for this constructor


exceptNames

private final IdentifierAST[] exceptNames
The names of the exception types thrown by this constructor


exceptions

private Type[] exceptions
The checked exceptions this constructor might throw


body

private final CompoundAST body
The body of the constructor

Constructor Detail

ConstrAST

ConstrAST()
Create a default constructor


ConstrAST

ConstrAST(ModifierAST mods,
          JavaAST parameters,
          JavaAST exceptions,
          CompoundAST block)
Create a new constructor AST

Parameters:
mods - the modifiers for this constructor
parameters - the parameters for this constructor
exceptions - the exceptions thrown by this constructor
block - the body of the constructor
Method Detail

parseComplete

public void parseComplete()
Description copied from class: JavaAST
Compute any derived attributes that must be evaluated after the initial parse. The default action is to just tell your children that the parse is complete.

Overrides:
parseComplete in class JavaAST

getDeclaringClass

public Type getDeclaringClass()
Returns the Type object representing the class or interface that declares the constructor represented by this object.

Specified by:
getDeclaringClass in interface Constructor
Returns:
the Type of the declaring class

getModifiers

public int getModifiers()
Returns the Java language modifiers for the constructor represented by this object, as an integer. The Modifier class should be used to decode the modifiers.

Specified by:
getModifiers in interface Constructor
Returns:
the modifiers for this constructor

getParameters

public ParameterAST[] getParameters()
Get the formal parameters of this constructor

Returns:
an array containing the formal parameters

getParameterTypes

public Type[] getParameterTypes()
Returns an array of Type objects that represent the formal parameter types, in declaration order, of this constructor. Returns an array of length 0 if the underlying constructor takes no parameters.

Specified by:
getParameterTypes in interface Constructor
Returns:
the parameter types of this constructor

getExceptionTypes

public final Type[] getExceptionTypes()
Get the checked exception types that might be thrown by this constructor

Specified by:
getExceptionTypes in interface HasExceptions
Returns:
an array of types representing the exceptions that this constructor might throw

computeExceptions

protected Type[] computeExceptions()
Returns an array of Type objects that represent the types of the exceptions declared to be thrown by this constructor. Returns an array of length 0 if the constructor declares no exceptions in its throws clause.

Returns:
the exceptions declared by this constructor

getBody

public CompoundAST getBody()
Get the code for the body of this constructor

Returns:
an AST node representing the body of the constructor

match

public boolean match(Type[] params,
                     Type caller)
Determines whether this constructor matches the parameters given by a caller

Specified by:
match in interface Constructor
Parameters:
params - the types of the parameters to the constructor
caller - the type of the caller
Returns:
true if this constructor matches, false otherwise

bestMatch

public Constructor bestMatch(Constructor cons)
Find the best match, given two matching constructors

Specified by:
bestMatch in interface Constructor
Parameters:
cons - the other constructor to compare
Returns:
either this or cons, depending on which matches best, or null if neither matches best

toString

public String toString()
Return a string describing this ConstrAST

Specified by:
toString in interface antlr.collections.AST
Returns:
a string describing this ConstrAST