org.extendj.ast
node type TypeMethodReference

General Info

Production
TypeMethodReference : MethodReference ::= TypeAccess:Access;
Type Hierarchy:
java.lang.Object
  extended by beaver.Symbol
      extended by org.extendj.ast.ASTNode<ASTNode>
          extended by org.extendj.ast.Expr
              extended by org.extendj.ast.MethodReference
                  extended by org.extendj.ast.TypeMethodReference
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<ASTNode>, org.jastadd.util.PrettyPrintable

Description

Source
Declared in /home/jesper/git/extendj/java8/grammar/MethodReference.ast at line 4

Member Filters

API level:

Aspect:

Constructors

public TypeMethodReference()
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 1
public TypeMethodReference(List<Access> p0,
                           java.lang.String p1,
                           Access p2)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 14
public TypeMethodReference(List<Access> p0,
                           beaver.Symbol p1,
                           Access p2)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 19

Attributes

@ASTNodeAnnotation.Attribute
syn MethodDecl targetStaticMethod(org.extendj.ast.FunctionDescriptor f)
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 66
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn MethodDecl targetInstanceMethod(org.extendj.ast.FunctionDescriptor f)
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 76
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn boolean validStaticMethod(org.extendj.ast.FunctionDescriptor f)
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 91
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn boolean validInstanceMethod(org.extendj.ast.FunctionDescriptor f)
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 96
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn TypeDecl inferredReferenceType(org.extendj.ast.FunctionDescriptor f)
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 119
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn Access syntheticStaticAccess(org.extendj.ast.FunctionDescriptor f)
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 136
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn MethodAccess syntheticStaticMethodAccess(org.extendj.ast.FunctionDescriptor f)
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 153
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn Access syntheticInstanceAccess(org.extendj.ast.FunctionDescriptor f)
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 158
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn MethodAccess syntheticInstanceMethodAccess(org.extendj.ast.FunctionDescriptor f)
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 183
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn boolean congruentTo(org.extendj.ast.FunctionDescriptor f)
Specified by:congruentTo in class MethodReference
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 212
Aspect
MethodReference
@ASTNodeAnnotation.Attribute
syn java.util.ArrayList<MethodDecl> potentiallyApplicableMethods(org.extendj.ast.FunctionDescriptor f)
Specified by:potentiallyApplicableMethods in class MethodReference
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 253
Aspect
MethodReference
Specified by:exactCompileTimeDeclaration in class MethodReference
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodReference.jrag at line 308
Aspect
MethodReference
Overrides:potentiallyCompatible in class MethodReference
Source
Declared in /home/jesper/git/extendj/java8/frontend/MethodSignature.jrag at line 466
Aspect
MethodSignature18
Source
Declared in /home/jesper/git/extendj/java8/backend/MethodReferenceToClass.jrag at line 129
Aspect
MethodReferenceToClass
Source
Declared in /home/jesper/git/extendj/java8/backend/MethodReferenceToClass.jrag at line 166
Aspect
MethodReferenceToClass

Methods

public void prettyPrint(org.jastadd.util.PrettyPrinter out)
Specified by:prettyPrint in interface org.jastadd.util.PrettyPrintableOverrides:prettyPrint in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java8/frontend/PrettyPrint.jadd at line 103
Aspect
Java8PrettyPrint
public void createBCode(org.extendj.ast.CodeGeneration gen)
Overrides:createBCode in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java8/backend/CreateBCode.jrag at line 37
Aspect
Java8CreateBCode
public void transformation()
Overrides:transformation in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java8/backend/Transformations.jrag at line 37
Aspect
Transformations
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class MethodReference
Source
Declared in /home/jesper/git/extendj/ASTNode at line 10
protected int numChildren()
Overrides:numChildren in class MethodReference
Source
Declared in /home/jesper/git/extendj/ASTNode at line 27
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class MethodReference
Source
Declared in /home/jesper/git/extendj/ASTNode at line 33
public void flushAttrCache()
Overrides:flushAttrCache in class MethodReference
Source
Declared in /home/jesper/git/extendj/ASTNode at line 39
public void flushCollectionCache()
Overrides:flushCollectionCache in class MethodReference
Source
Declared in /home/jesper/git/extendj/ASTNode at line 60
public void flushRewriteCache()
Overrides:flushRewriteCache in class MethodReference
Source
Declared in /home/jesper/git/extendj/ASTNode at line 66
public TypeMethodReference clone()
                          throws java.lang.CloneNotSupportedException
Overrides:clone in class MethodReference
Throws:
java.lang.CloneNotSupportedException
Source
Declared in /home/jesper/git/extendj/ASTNode at line 72
public TypeMethodReference copy()
Overrides:copy in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/ASTNode at line 79
@Deprecated
public TypeMethodReference fullCopy()
Deprecated. Please use treeCopy or treeCopyNoTransform instead

Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.

Specified by:fullCopy in class MethodReference
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 98
public TypeMethodReference treeCopyNoTransform()
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.
Specified by:treeCopyNoTransform in class MethodReference
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 108
public TypeMethodReference treeCopy()
Create a deep copy of the AST subtree at this node. The subtree of this node is traversed to trigger rewrites before copy. The copy is dangling, i.e. has no parent.
Specified by:treeCopy in class MethodReference
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 128
protected boolean is$Equal(ASTNode node)
Overrides:is$Equal in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/ASTNode at line 135
public void setTypeArgumentList(List<Access> list)
Replaces the TypeArgument list.
Overrides:setTypeArgumentList in class MethodReference
Parameters:
list - The new list node to be used as the TypeArgument list.
public int getNumTypeArgument()
Retrieves the number of children in the TypeArgument list.
Overrides:getNumTypeArgument in class MethodReference
Returns:
Number of children in the TypeArgument list.
Retrieves the number of children in the TypeArgument list. Calling this method will not trigger rewrites.
Overrides:getNumTypeArgumentNoTransform in class MethodReference
Returns:
Number of children in the TypeArgument list.
public Access getTypeArgument(int i)
Retrieves the element at index i in the TypeArgument list.
Overrides:getTypeArgument in class MethodReference
Parameters:
i - Index of the element to return.
Returns:
The element at position i in the TypeArgument list.
public boolean hasTypeArgument()
Check whether the TypeArgument list has any children.
Overrides:hasTypeArgument in class MethodReference
Returns:
true if it has at least one child, false otherwise.
public void addTypeArgument(Access node)
Append an element to the TypeArgument list.
Overrides:addTypeArgument in class MethodReference
Parameters:
node - The element to append to the TypeArgument list.
public void setTypeArgument(Access node,
                            int i)
Replaces the TypeArgument list element at index i with the new node node.
Overrides:setTypeArgument in class MethodReference
Parameters:
node - The new node to replace the old list element.
i - The list index of the node to be replaced.
Retrieves the TypeArgument list.
Overrides:getTypeArgumentList in class MethodReference
Returns:
The node representing the TypeArgument list.
Retrieves the TypeArgument list.

This method does not invoke AST transformations.

Overrides:getTypeArgumentListNoTransform in class MethodReference
Returns:
The node representing the TypeArgument list.
Retrieves the TypeArgument list.
Overrides:getTypeArguments in class MethodReference
Returns:
The node representing the TypeArgument list.
Retrieves the TypeArgument list.

This method does not invoke AST transformations.

Overrides:getTypeArgumentsNoTransform in class MethodReference
Returns:
The node representing the TypeArgument list.
public void setID(java.lang.String value)
Replaces the lexeme ID.
Overrides:setID in class MethodReference
Parameters:
value - The new value for the lexeme ID.
public void setID(beaver.Symbol symbol)
JastAdd-internal setter for lexeme ID using the Beaver parser.
Overrides:setID in class MethodReference
Parameters:
symbol - Symbol containing the new value for the lexeme ID
@ASTNodeAnnotation.Token(name="ID")
public java.lang.String getID()
Retrieves the value for the lexeme ID.
Overrides:getID in class MethodReference
Returns:
The value for the lexeme ID.
public void setTypeAccess(Access node)
Replaces the TypeAccess child.
Parameters:
node - The new node to replace the TypeAccess child.
Retrieves the TypeAccess child.
Returns:
The current node used as the TypeAccess child.
Retrieves the TypeAccess child.

This method does not invoke AST transformations.

Returns:
The current node used as the TypeAccess child.
public org.extendj.ast.NameType Define_nameType(ASTNode caller,
                                                ASTNode child)
Overrides:Define_nameType in class MethodReference
Source
Declared in /home/jesper/git/extendj/java4/frontend/SyntacticClassification.jrag at line 36
protected boolean canDefine_nameType(ASTNode caller,
                                     ASTNode child)
public boolean Define_assignmentContext(ASTNode caller,
                                        ASTNode child)
Overrides:Define_assignmentContext in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java8/frontend/TargetType.jrag at line 196
protected boolean canDefine_assignmentContext(ASTNode caller,
                                              ASTNode child)
public boolean Define_invocationContext(ASTNode caller,
                                        ASTNode child)
Overrides:Define_invocationContext in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java8/frontend/TargetType.jrag at line 197
protected boolean canDefine_invocationContext(ASTNode caller,
                                              ASTNode child)
public boolean Define_castContext(ASTNode caller,
                                  ASTNode child)
Overrides:Define_castContext in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java8/frontend/TargetType.jrag at line 198
protected boolean canDefine_castContext(ASTNode caller,
                                        ASTNode child)
public boolean Define_stringContext(ASTNode caller,
                                    ASTNode child)
Overrides:Define_stringContext in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java8/frontend/TargetType.jrag at line 199
protected boolean canDefine_stringContext(ASTNode caller,
                                          ASTNode child)
public boolean Define_numericContext(ASTNode caller,
                                     ASTNode child)
Overrides:Define_numericContext in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java8/frontend/TargetType.jrag at line 200
protected boolean canDefine_numericContext(ASTNode caller,
                                           ASTNode child)
Overrides:Define_assignConvertedType in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java5/frontend/GenericMethodsInference.jrag at line 58
protected boolean canDefine_assignConvertedType(ASTNode caller,
                                                ASTNode child)
Overrides:rewriteTo in class MethodReference

Fields

Inherited Members

Attributes inherited from org.extendj.ast.MethodReference

Attributes inherited from org.extendj.ast.Expr

Attributes inherited from org.extendj.ast.ASTNode

Methods inherited from class org.extendj.ast.MethodReference

Methods inherited from class org.extendj.ast.Expr

Methods inherited from class org.extendj.ast.ASTNode

Methods inherited from class beaver.Symbol

getColumn
getEnd
getId
getLine
getStart
makePosition

Methods inherited from class java.lang.Object

equals
finalize
getClass
hashCode
notify
notifyAll
wait
wait
wait

Fields inherited from org.extendj.ast.MethodReference

Fields inherited from org.extendj.ast.Expr

Fields inherited from org.extendj.ast.ASTNode

Fields inherited from beaver.Symbol

end
id
start
value