AST
node type ParInterfaceDecl

General Info

Production
ParInterfaceDecl : InterfaceDecl ::= Argument:Access* SuperInterfaceId:Access* BodyDecl*;
Type Hierarchy:
java.lang.Object
  extended by beaver.Symbol
      extended by AST.ASTNode<ASTNode>
          extended by AST.TypeDecl
              extended by AST.ReferenceType
                  extended by AST.InterfaceDecl
                      extended by AST.ParInterfaceDecl
All Implemented Interfaces:
MemberSubstitutor, Parameterization, ParTypeDecl, SimpleSet, VariableScope, java.lang.Cloneable, java.lang.Iterable<ASTNode>, java.util.Iterator
Direct Known Subclasses:
RawInterfaceDecl

Nested classes/interfaces inherited from interface AST.SimpleSet

Description

Source
Declared in Java1.5Frontend/Generics.ast at line 9

Member Filters

API level:

Aspect:

Constructors

 
public ParInterfaceDecl(Modifiers p0,
                        java.lang.String p1,
                        List<Access> p2)
 
public ParInterfaceDecl(Modifiers p0,
                        beaver.Symbol p1,
                        List<Access> p2)
 

Attributes

syn boolean involvesTypeParameters()
Overrides:involvesTypeParameters in class TypeDecl
Source
Declared in Java1.5Frontend/GenericMethodsInference.jrag at line 24
Aspect
GenericMethodsInference
Overrides:hostType in class TypeDecl
Source
Declared in Java1.4Frontend/TypeAnalysis.jrag at line 569
Aspect
NestedTypes
syn boolean isRawType()
Specified by:isRawType in interface ParameterizationSpecified by:isRawType in interface ParTypeDeclOverrides:isRawType in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 245
Aspect
Generics
Overrides:erasure in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 351
Aspect
GenericsErasure
Description copied from class: InterfaceDecl
Retrieves the SuperInterfaceId list.
Overrides:getSuperInterfaceIdList in class InterfaceDecl
Returns:
The node representing the SuperInterfaceId list.
Source
Declared in Java1.5Frontend/Generics.jrag at line 1037
Aspect
LookupParTypeDecl
Description copied from class: InterfaceDecl
Retrieves the BodyDecl list.
Overrides:getBodyDeclList in class InterfaceDecl
Returns:
The node representing the BodyDecl list.
Source
Declared in Java1.5Frontend/Generics.jrag at line 1047
Aspect
LookupParTypeDecl
Overrides:supertypeGenericClassDecl in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 14
Aspect
GenericsSubtype
Overrides:supertypeGenericInterfaceDecl in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 20
Aspect
GenericsSubtype
syn boolean supertypeClassDecl(ClassDecl type)
Overrides:supertypeClassDecl in class InterfaceDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 421
Aspect
GenericsSubtype
syn boolean subtype(TypeDecl type)
Overrides:subtype in class InterfaceDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 128
Aspect
GenericsSubtype
Overrides:supertypeRawClassDecl in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 26
Aspect
GenericsSubtype
Overrides:supertypeRawInterfaceDecl in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 30
Aspect
GenericsSubtype
syn boolean sameStructure(TypeDecl t)
Overrides:sameStructure in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 194
Aspect
GenericsSubtype
Overrides:supertypeParClassDecl in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 125
Aspect
GenericsSubtype
Overrides:supertypeParInterfaceDecl in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 129
Aspect
GenericsSubtype
syn boolean instanceOf(TypeDecl type)
Overrides:instanceOf in class InterfaceDecl
Source
Declared in Java1.5Frontend/GenericsSubtype.jrag at line 398
Aspect
GenericsSubtype
syn java.lang.String typeDescriptor()
Overrides:typeDescriptor in class InterfaceDecl
Source
Declared in Java1.5Backend/GenericsCodegen.jrag at line 17
Aspect
GenericsCodegen
syn java.lang.String arrayTypeDescriptor()
Overrides:arrayTypeDescriptor in class InterfaceDecl
Source
Declared in Java1.4Backend/CreateBCode.jrag at line 820
Aspect
CreateBCode
syn java.lang.String constantPoolName()
Overrides:constantPoolName in class TypeDecl
Source
Declared in Java1.5Backend/GenericsCodegen.jrag at line 174
Aspect
GenericsCodegen
Overrides:needsSignatureAttribute in class InterfaceDecl
Source
Declared in Java1.5Backend/GenericsCodegen.jrag at line 343
Aspect
GenericsCodegen
syn boolean isReifiable()
A type is reifiable if it either refers to a non-parameterized type, is a raw type, is a parameterized type with only unbound wildcard parameters or is an array type with a reifiable type parameter.
Overrides:isReifiable in class TypeDecl
See Also:
"JLSv3 §4.7"
Source
Declared in Java7Frontend/SafeVarargs.jrag at line 106
Aspect
SafeVarargs
syn boolean isParameterizedType()
Specified by:isParameterizedType in interface ParTypeDeclOverrides:isParameterizedType in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 244
Aspect
Generics
syn boolean sameArgument(ParTypeDecl decl)
Specified by:sameArgument in interface ParTypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 380
Aspect
GenericsTypeCheck
syn boolean sameSignature(Access a)
Specified by:sameSignature in interface ParTypeDeclOverrides:sameSignature in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 577
Aspect
LookupParTypeDecl
syn boolean sameSignature(java.util.ArrayList list)
Specified by:sameSignature in interface ParTypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 612
Aspect
LookupParTypeDecl
syn boolean usesTypeVariable()
Overrides:usesTypeVariable in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 1069
Aspect
LookupParTypeDecl
Specified by:original in interface MemberSubstitutorOverrides:original in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 1306
Aspect
LookupParTypeDecl
Overrides:sourceTypeDecl in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 1505
Aspect
SourceDeclarations
syn java.lang.String fullName()
Overrides:fullName in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsParTypeDecl.jrag at line 12
Aspect
GenericsParTypeDecl
syn java.lang.String typeName()
Specified by:typeName in interface ParTypeDeclOverrides:typeName in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsParTypeDecl.jrag at line 21
Aspect
GenericsParTypeDecl
syn java.lang.String nameWithArgs()
Specified by:nameWithArgs in interface ParTypeDecl
Source
Declared in Java1.5Frontend/GenericsParTypeDecl.jrag at line 30
Aspect
GenericsParTypeDecl
syn java.util.Collection unimplementedMethods()
Overrides:unimplementedMethods in class TypeDecl
Source
Declared in Java1.5Frontend/MethodSignature.jrag at line 406
Aspect
MethodSignature15
syn int uniqueIndex()
Overrides:uniqueIndex in class TypeDecl
Source
Declared in Java1.5Backend/GenericsCodegen.jrag at line 33
Aspect
GenericsCodegen
syn java.lang.String typeArgumentsOpt()
Overrides:typeArgumentsOpt in class TypeDecl
Source
Declared in Java1.5Backend/GenericsCodegen.jrag at line 470
Aspect
GenericsCodegen
syn java.util.HashMap localMethodsSignatureMap()
Specified by:localMethodsSignatureMap in interface MemberSubstitutorSpecified by:localMethodsSignatureMap in interface ParTypeDeclOverrides:localMethodsSignatureMap in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 1084
Aspect
LookupParTypeDecl
syn SimpleSet localFields(java.lang.String name)
Specified by:localFields in interface MemberSubstitutorSpecified by:localFields in interface ParTypeDeclOverrides:localFields in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 1119
Aspect
LookupParTypeDecl
syn SimpleSet localTypeDecls(java.lang.String name)
Specified by:localTypeDecls in interface MemberSubstitutorOverrides:localTypeDecls in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 1154
Aspect
LookupParTypeDecl
syn java.util.Collection constructors()
Specified by:constructors in interface MemberSubstitutorOverrides:constructors in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 1213
Aspect
LookupParTypeDecl
Specified by:genericDecl in interface ParTypeDecl
Source
Declared in Java1.5Frontend/GenericsParTypeDecl.jrag at line 45
Aspect
GenericsParTypeDecl

Methods

public void flushCache()
Overrides:flushCache in class InterfaceDecl
public void flushCollectionCache()
Overrides:flushCollectionCache in class InterfaceDecl
public ParInterfaceDecl clone()
                       throws java.lang.CloneNotSupportedException
Overrides:clone in class InterfaceDecl
Throws:
java.lang.CloneNotSupportedException
Overrides:copy in class InterfaceDecl
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.
Overrides:fullCopy in class InterfaceDecl
Returns:
dangling copy of the subtree at this node
public void collectErrors()
Description copied from class: ASTNodeThe collectErrors method is refined so that it calls the checkWarnings method on each ASTNode to report unchecked warnings.
Overrides:collectErrors in class ASTNode<ASTNode>
Source
Declared in Java1.5Frontend/Generics.jrag at line 557
Aspect
GenericsNameBinding
public TypeDecl substitute(TypeVariable typeVariable)
Specified by:substitute in interface MemberSubstitutorSpecified by:substitute in interface ParameterizationSpecified by:substitute in interface ParTypeDeclOverrides:substitute in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 840
Aspect
LookupParTypeDecl
public int numTypeParameter()
Specified by:numTypeParameter in interface ParTypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 853
Aspect
LookupParTypeDecl
public TypeVariable typeParameter(int index)
Specified by:typeParameter in interface ParTypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 856
Aspect
LookupParTypeDecl
public Access substitute(Parameterization parTypeDecl)
Specified by:substitute in interface ParTypeDeclOverrides:substitute in class TypeDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 888
Aspect
LookupParTypeDecl
Specified by:createQualifiedAccess in interface ParTypeDeclOverrides:createQualifiedAccess in class TypeDecl
Source
Declared in Java1.5Frontend/GenericsParTypeDecl.jrag at line 76
Aspect
GenericsParTypeDecl
public void transformation()
Specified by:transformation in interface ParTypeDeclOverrides:transformation in class TypeDecl
Source
Declared in Java1.5Backend/GenericsCodegen.jrag at line 300
Aspect
GenericsCodegen
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class InterfaceDecl
protected int numChildren()
Overrides:numChildren in class InterfaceDecl
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class InterfaceDecl
public void setModifiers(Modifiers node)
Replaces the Modifiers child.
Overrides:setModifiers in class InterfaceDecl
Parameters:
node - The new node to replace the Modifiers child.
Retrieves the Modifiers child.
Overrides:getModifiers in class InterfaceDecl
Returns:
The current node used as the Modifiers child.
Retrieves the Modifiers child.

This method does not invoke AST transformations.

Overrides:getModifiersNoTransform in class InterfaceDecl
Returns:
The current node used as the Modifiers child.
public void setID(java.lang.String value)
Replaces the lexeme ID.
Overrides:setID in class InterfaceDecl
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 InterfaceDecl
public java.lang.String getID()
Retrieves the value for the lexeme ID.
Overrides:getID in class InterfaceDecl
Returns:
The value for the lexeme ID.
public void setArgumentList(List<Access> list)
Replaces the Argument list.
Parameters:
list - The new list node to be used as the Argument list.
public int getNumArgument()
Retrieves the number of children in the Argument list.
Specified by:getNumArgument in interface ParTypeDecl
Returns:
Number of children in the Argument list.
Retrieves the number of children in the Argument list. Calling this method will not trigger rewrites..
Returns:
Number of children in the Argument list.
public Access getArgument(int i)
Retrieves the element at index i in the Argument list..
Specified by:getArgument in interface ParTypeDecl
Parameters:
i - Index of the element to return.
Returns:
The element at position i in the Argument list.
public void addArgument(Access node)
Append an element to the Argument list.
Parameters:
node - The element to append to the Argument list.
public void addArgumentNoTransform(Access node)
public void setArgument(Access node,
                        int i)
Replaces the Argument 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.
Retrieves the Argument list.
Returns:
The node representing the Argument list.
Retrieves the Argument list.

This method does not invoke AST transformations.

Returns:
The node representing the Argument list.
Retrieves the Argument list.
Returns:
The node representing the Argument list.
Retrieves the Argument list.

This method does not invoke AST transformations.

Returns:
The node representing the Argument list.
public void setSuperInterfaceIdList(List<Access> list)
Replaces the SuperInterfaceId list.
Overrides:setSuperInterfaceIdList in class InterfaceDecl
Parameters:
list - The new list node to be used as the SuperInterfaceId list.
Retrieves the number of children in the SuperInterfaceId list.
Overrides:getNumSuperInterfaceId in class InterfaceDecl
Returns:
Number of children in the SuperInterfaceId list.
Retrieves the number of children in the SuperInterfaceId list. Calling this method will not trigger rewrites..
Overrides:getNumSuperInterfaceIdNoTransform in class InterfaceDecl
Returns:
Number of children in the SuperInterfaceId list.
Retrieves the element at index i in the SuperInterfaceId list..
Overrides:getSuperInterfaceId in class InterfaceDecl
Parameters:
i - Index of the element to return.
Returns:
The element at position i in the SuperInterfaceId list.
public void addSuperInterfaceId(Access node)
Append an element to the SuperInterfaceId list.
Overrides:addSuperInterfaceId in class InterfaceDecl
Parameters:
node - The element to append to the SuperInterfaceId list.
public void setSuperInterfaceId(Access node,
                                int i)
Replaces the SuperInterfaceId list element at index i with the new node node.
Overrides:setSuperInterfaceId in class InterfaceDecl
Parameters:
node - The new node to replace the old list element.
i - The list index of the node to be replaced.
Retrieves the SuperInterfaceId list.
Overrides:getSuperInterfaceIds in class InterfaceDecl
Returns:
The node representing the SuperInterfaceId list.
Retrieves the SuperInterfaceId list.

This method does not invoke AST transformations.

Overrides:getSuperInterfaceIdsNoTransform in class InterfaceDecl
Returns:
The node representing the SuperInterfaceId list.
Retrieves the SuperInterfaceId list.

This method does not invoke AST transformations.

Overrides:getSuperInterfaceIdListNoTransform in class InterfaceDecl
Returns:
The node representing the SuperInterfaceId list.
Retrieves the child position of the SuperInterfaceId list.
Returns:
The the child position of the SuperInterfaceId list.
public void setBodyDeclList(List<BodyDecl> list)
Replaces the BodyDecl list.
Overrides:setBodyDeclList in class InterfaceDecl
Parameters:
list - The new list node to be used as the BodyDecl list.
public int getNumBodyDecl()
Retrieves the number of children in the BodyDecl list.
Overrides:getNumBodyDecl in class InterfaceDecl
Returns:
Number of children in the BodyDecl list.
Retrieves the number of children in the BodyDecl list. Calling this method will not trigger rewrites..
Overrides:getNumBodyDeclNoTransform in class InterfaceDecl
Returns:
Number of children in the BodyDecl list.
public BodyDecl getBodyDecl(int i)
Retrieves the element at index i in the BodyDecl list..
Overrides:getBodyDecl in class InterfaceDecl
Parameters:
i - Index of the element to return.
Returns:
The element at position i in the BodyDecl list.
public void addBodyDecl(BodyDecl node)
Append an element to the BodyDecl list.
Specified by:addBodyDecl in interface MemberSubstitutorOverrides:addBodyDecl in class InterfaceDecl
Parameters:
node - The element to append to the BodyDecl list.
public void setBodyDecl(BodyDecl node,
                        int i)
Replaces the BodyDecl list element at index i with the new node node.
Overrides:setBodyDecl in class InterfaceDecl
Parameters:
node - The new node to replace the old list element.
i - The list index of the node to be replaced.
Retrieves the BodyDecl list.
Overrides:getBodyDecls in class InterfaceDecl
Returns:
The node representing the BodyDecl list.
Retrieves the BodyDecl list.

This method does not invoke AST transformations.

Overrides:getBodyDeclsNoTransform in class InterfaceDecl
Returns:
The node representing the BodyDecl list.
Retrieves the BodyDecl list.

This method does not invoke AST transformations.

Overrides:getBodyDeclListNoTransform in class InterfaceDecl
Returns:
The node representing the BodyDecl list.
Retrieves the child position of the BodyDecl list.
Returns:
The the child position of the BodyDecl list.
Overrides:Define_NameType_nameType in class InterfaceDecl
Source
Declared in Java1.5Frontend/Generics.jrag at line 477
Overrides:Define_TypeDecl_genericDecl in class ASTNode<ASTNode>
Source
Declared in Java1.5Frontend/GenericsParTypeDecl.jrag at line 59
Overrides:rewriteTo in class InterfaceDecl

Fields

protected boolean erasure_computed
protected boolean getBodyDeclList_computed
protected java.util.Map subtype_TypeDecl_values
protected java.util.Map sameStructure_TypeDecl_values
protected java.util.Map instanceOf_TypeDecl_values
protected boolean typeDescriptor_computed
protected java.lang.String typeDescriptor_value
protected boolean constantPoolName_computed
protected java.lang.String constantPoolName_value
protected java.util.Map sameSignature_ArrayList_values
protected boolean usesTypeVariable_computed
protected boolean usesTypeVariable_value
protected boolean sourceTypeDecl_computed
protected boolean fullName_computed
protected java.lang.String fullName_value
protected boolean typeName_computed
protected java.lang.String typeName_value
protected java.util.Collection unimplementedMethods_value
protected boolean uniqueIndex_computed
protected int uniqueIndex_value
protected java.util.HashMap localMethodsSignatureMap_value
protected java.util.Map localFields_String_values
protected java.util.Map localTypeDecls_String_values
protected boolean constructors_computed
protected java.util.Collection constructors_value
protected boolean genericDecl_computed

Inherited Members

Attributes inherited from AST.InterfaceDecl

Attributes inherited from AST.ReferenceType

Attributes inherited from AST.TypeDecl

Attributes inherited from AST.ASTNode

Methods inherited from class AST.InterfaceDecl

Methods inherited from class AST.ReferenceType

Methods inherited from class AST.TypeDecl

Methods inherited from class 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

Methods inherited from interface AST.ParTypeDecl

Methods inherited from interface AST.MemberSubstitutor

Methods inherited from interface AST.Parameterization

Methods inherited from interface AST.SimpleSet

Methods inherited from interface AST.VariableScope

Fields inherited from AST.InterfaceDecl

Fields inherited from AST.ReferenceType

Fields inherited from AST.TypeDecl

Fields inherited from AST.ASTNode

Fields inherited from beaver.Symbol

end
id
start
value

Fields inherited from interface AST.SimpleSet