AST
node type MethodUse

General Info

Production
MethodUse : Use ::= Arg:Exp*;
Type Hierarchy:
java.lang.Object
  extended by AST.ASTNode<ASTNode>
      extended by AST.Exp
          extended by AST.Access
              extended by AST.IdUse
                  extended by AST.Use
                      extended by AST.MethodUse
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<ASTNode>

Description

Source
Declared in spec/picojava-method.ast at line 5

Member Filters

API level:

Aspect:

Constructors

public MethodUse()
public MethodUse(java.lang.String p0,
                 List<Exp> p1)

Attributes

syn Decl decl()
Overrides:decl in class IdUse
Source
Declared in spec/NameResolution.jrag at line 4
Aspect
NameResolution
syn boolean isValue()
Overrides:isValue in class Exp
Source
Declared in ../spec/TypeAnalysis.jrag at line 18
Aspect
TypeAnalysis
inh Decl lookupMethod(java.lang.String name,
                  List argList)
Source
Declared in spec/NameResolution.jrag at line 6
Aspect
NameResolution

Methods

public MethodUse clone()
                throws java.lang.CloneNotSupportedException
Overrides:clone in class Use
Throws:
java.lang.CloneNotSupportedException
public MethodUse copy()
Overrides:copy in class Use
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.
Overrides:fullCopy in class Use
Returns:
dangling copy of the subtree at this node
public void collectErrors(java.util.Collection c)
Overrides:collectErrors in class IdUse
Source
Declared in spec/ErrorCheck.jrag at line 18
Aspect
ErrorCheck
public java.lang.String toString()
Expressions
Overrides:toString in class IdUse
Source
Declared in spec/PrettyPrint.jadd at line 23
Aspect
PrettyPrint
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class Use
protected int numChildren()
Overrides:numChildren in class Use
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class Use
public void flushCache()
Overrides:flushCache in class Use
public void flushCollectionCache()
Overrides:flushCollectionCache in class Use
public void setName(java.lang.String value)
Replaces the lexeme Name.
Overrides:setName in class Use
Parameters:
value - The new value for the lexeme Name.
public java.lang.String getName()
Retrieves the value for the lexeme Name.
Overrides:getName in class Use
Returns:
The value for the lexeme Name.
public void setArgList(List<Exp> list)
Replaces the Arg list.
Parameters:
list - The new list node to be used as the Arg list.
public int getNumArg()
Retrieves the number of children in the Arg list.
Returns:
Number of children in the Arg list.
Retrieves the number of children in the Arg list. Calling this method will not trigger rewrites.
Returns:
Number of children in the Arg list.
public Exp getArg(int i)
Retrieves the element at index i in the Arg list.
Parameters:
i - Index of the element to return.
Returns:
The element at position i in the Arg list.
public boolean hasArg()
Check whether the Arg list has any children.
Returns:
true if it has at least one child, false otherwise.
public void addArg(Exp node)
Append an element to the Arg list.
Parameters:
node - The element to append to the Arg list.
public void addArgNoTransform(Exp node)
public void setArg(Exp node,
                   int i)
Replaces the Arg list element at index i with the new node node.
Parameters:
node - The new node to replace the old list element.
i - The list index of the node to be replaced.
public List<Exp> getArgList()
Retrieves the Arg list.
Returns:
The node representing the Arg list.
Retrieves the Arg list.

This method does not invoke AST transformations.

Returns:
The node representing the Arg list.
public List<Exp> getArgs()
Retrieves the Arg list.
Returns:
The node representing the Arg list.
Retrieves the Arg list.

This method does not invoke AST transformations.

Returns:
The node representing the Arg list.
public Decl Define_Decl_lookupMethod(ASTNode caller,
                                     ASTNode child,
                                     java.lang.String name,
                                     List argList)
Overrides:Define_Decl_lookupMethod in class ASTNode<ASTNode>
Source
Declared in spec/NameResolution.jrag at line 27
Overrides:rewriteTo in class Use

Fields

protected int decl_visited
protected boolean decl_computed
protected Decl decl_value
protected int isValue_visited
protected java.util.Map lookupMethod_String_List_visited

Inherited Members