org.extendj.ast
node type TypeAccess

General Info

Production
TypeAccess : Access ::= <Package:String> <ID:String>;
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.Access
                  extended by org.extendj.ast.TypeAccess
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<ASTNode>, org.jastadd.util.PrettyPrintable
Direct Known Subclasses:
ArrayTypeAccess, BoundTypeAccess, BytecodeTypeAccess, PrimitiveTypeAccess

Description

Source
Declared in /home/jesper/git/extendj/java4/grammar/Java.ast at line 22

Member Filters

API level:

Aspect:

Constructors

public TypeAccess(java.lang.String name,
                  int start,
                  int end)
 
Source
Declared in /home/jesper/git/extendj/java4/frontend/NodeConstructors.jrag at line 44
Aspect
NodeConstructors
public TypeAccess(java.lang.String typeName)
 
Source
Declared in /home/jesper/git/extendj/java4/frontend/NodeConstructors.jrag at line 55
Aspect
NodeConstructors
public TypeAccess()
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 1
public TypeAccess(java.lang.String p0,
                  java.lang.String p1)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 12
public TypeAccess(beaver.Symbol p0,
                  beaver.Symbol p1)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 16

Attributes

@ASTNodeAnnotation.Attribute
syn org.extendj.ast.SimpleSet decls()
Source
Declared in /home/jesper/git/extendj/java4/frontend/LookupType.jrag at line 291
Aspect
TypeScopePropagation
Source
Declared in /home/jesper/git/extendj/java4/frontend/LookupType.jrag at line 307
Aspect
TypeScopePropagation
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.SimpleSet qualifiedLookupVariable(java.lang.String name)
Overrides:qualifiedLookupVariable in class Expr
Source
Declared in /home/jesper/git/extendj/java4/frontend/LookupVariable.jrag at line 237
Aspect
VariableScope
Has package name (not @primitive)
Source
Declared in /home/jesper/git/extendj/java4/frontend/PrettyPrintUtil.jrag at line 213
Aspect
PrettyPrintUtil
@ASTNodeAnnotation.Attribute
syn java.lang.String name()
Source
Declared in /home/jesper/git/extendj/java4/frontend/QualifiedNames.jrag at line 40
Aspect
Names
Overrides:packageName in class Expr
Source
Declared in /home/jesper/git/extendj/java4/frontend/QualifiedNames.jrag at line 44
Aspect
Names
Source
Declared in /home/jesper/git/extendj/java4/frontend/QualifiedNames.jrag at line 58
Aspect
Names
@ASTNodeAnnotation.Attribute
syn java.lang.String typeName()
Overrides:typeName in class Expr
Source
Declared in /home/jesper/git/extendj/java4/frontend/QualifiedNames.jrag at line 72
Aspect
Names
Overrides:isTypeAccess in class Expr
Source
Declared in /home/jesper/git/extendj/java4/frontend/ResolveAmbiguousNames.jrag at line 35
Aspect
AccessTypes
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.NameType predNameType()
Defines the expected kind of name for the left hand side in a qualified expression.
Overrides:predNameType in class Access
Source
Declared in /home/jesper/git/extendj/java4/frontend/SyntacticClassification.jrag at line 58
Aspect
SyntacticClassification
Overrides:type in class Access
Source
Declared in /home/jesper/git/extendj/java4/frontend/TypeAnalysis.jrag at line 302
Aspect
TypeAnalysis
Overrides:staticContextQualifier in class Expr
Source
Declared in /home/jesper/git/extendj/java4/frontend/TypeHierarchyCheck.jrag at line 199
Aspect
TypeHierarchyCheck
Overrides:usesTypeVariable in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java5/frontend/Generics.jrag at line 1240
Aspect
LookupParTypeDecl
Finds the host type declaration of a class access. Call this attribute only on expressions that return true for isClassAccess or it may throw an error!
Overrides:classAccess in class Expr
Returns:
The TypeDecl corresponding to the accesssed class
Source
Declared in /home/jesper/git/extendj/java5/backend/AnnotationsCodegen.jrag at line 241
Aspect
AnnotationsCodegen
@ASTNodeAnnotation.Attribute
syn Access substituted(java.util.Collection<TypeVariable> original,
                                               List<TypeVariable> substitution)
Builds a copy of this Access node where all occurrences of type variables in the original type parameter list have been replaced by the substitution type parameters.
Overrides:substituted in class Access
Returns:
the substituted Access node
Source
Declared in /home/jesper/git/extendj/java7/frontend/Diamond.jrag at line 361
Aspect
Diamond

Methods

public void accessControl()
Overrides:accessControl in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java4/frontend/AccessControl.jrag at line 153
Aspect
AccessControl
public void nameCheck()
Overrides:nameCheck in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java4/frontend/NameCheck.jrag at line 213
Aspect
NameCheck
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/java4/frontend/PrettyPrint.jadd at line 600
Aspect
Java4PrettyPrint
public void checkModifiers()
Source
Declared in /home/jesper/git/extendj/java5/frontend/Annotations.jrag at line 404
Aspect
Annotations
public boolean isRaw()
This method assumes that the bound type is generic.
Source
Declared in /home/jesper/git/extendj/java5/frontend/Generics.jrag at line 369
Aspect
GenericsTypeAnalysis
public void typeCheck()
Overrides:typeCheck in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java5/frontend/Generics.jrag at line 659
Aspect
GenericsTypeCheck
public boolean sameType(TypeAccess t)
Source
Declared in /home/jesper/git/extendj/java8/frontend/FunctionalInterface.jrag at line 196
Aspect
FunctionalInterface
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class Access
Source
Declared in /home/jesper/git/extendj/ASTNode at line 10
protected int numChildren()
Overrides:numChildren in class Access
Source
Declared in /home/jesper/git/extendj/ASTNode at line 23
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class Access
Source
Declared in /home/jesper/git/extendj/ASTNode at line 29
public void flushAttrCache()
Overrides:flushAttrCache in class Access
Source
Declared in /home/jesper/git/extendj/ASTNode at line 35
public void flushCollectionCache()
Overrides:flushCollectionCache in class Access
Source
Declared in /home/jesper/git/extendj/ASTNode at line 44
public void flushRewriteCache()
Overrides:flushRewriteCache in class Access
Source
Declared in /home/jesper/git/extendj/ASTNode at line 50
public TypeAccess clone()
                 throws java.lang.CloneNotSupportedException
Overrides:clone in class Access
Throws:
java.lang.CloneNotSupportedException
Source
Declared in /home/jesper/git/extendj/ASTNode at line 56
public TypeAccess copy()
Overrides:copy in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/ASTNode at line 63
@Deprecated
public TypeAccess 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 Access
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 82
public TypeAccess 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 Access
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 92
public TypeAccess 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 Access
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 112
protected boolean is$Equal(ASTNode node)
Overrides:is$Equal in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/ASTNode at line 119
public void setPackage(java.lang.String value)
Replaces the lexeme Package.
Parameters:
value - The new value for the lexeme Package.
public void setPackage(beaver.Symbol symbol)
JastAdd-internal setter for lexeme Package using the Beaver parser.
Parameters:
symbol - Symbol containing the new value for the lexeme Package
@ASTNodeAnnotation.Token(name="Package")
public java.lang.String getPackage()
Retrieves the value for the lexeme Package.
Returns:
The value for the lexeme Package.
public void setID(java.lang.String value)
Replaces the lexeme ID.
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.
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.
Returns:
The value for the lexeme ID.
public void transformation()
Overrides:transformation in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java5/backend/GenericsCodegen.jrag at line 305
Aspect
GenericsCodegen
Overrides:rewriteTo in class Access

Fields

protected java.lang.String tokenString_Package
public int Packagestart
public int Packageend
protected java.lang.String tokenString_ID
public int IDstart
public int IDend
protected boolean decls_computed
protected org.extendj.ast.SimpleSet decls_value
protected boolean decl_computed
protected boolean type_computed

Inherited Members

Attributes inherited from org.extendj.ast.Access

Attributes inherited from org.extendj.ast.Expr

Attributes inherited from org.extendj.ast.ASTNode

Methods inherited from class org.extendj.ast.Access

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.Access

Fields inherited from org.extendj.ast.Expr

Fields inherited from org.extendj.ast.ASTNode

Fields inherited from beaver.Symbol

end
id
start
value