public class DeclareParents extends Declare
Modifier and Type | Field and Description |
---|---|
protected TypePattern |
child |
protected boolean |
isExtends |
protected TypePatternList |
parents |
ANNOTATION, DOMINATES, ERROR_OR_WARNING, PARENTS, PARENTSMIXIN, SOFT, TYPE_ERROR_OR_WARNING
end, sourceContext, start
Modifier | Constructor and Description |
---|---|
|
DeclareParents(TypePattern child,
java.util.List parents,
boolean isExtends) |
protected |
DeclareParents(TypePattern child,
TypePatternList parents,
boolean isExtends) |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
accept(PatternNodeVisitor visitor,
java.lang.Object data) |
boolean |
equals(java.lang.Object other) |
java.util.List<ResolvedType> |
findMatchingNewParents(ResolvedType onType,
boolean reportErrors) |
TypePattern |
getChild() |
java.lang.String |
getNameSuffix()
Declares have methods in the .class file against which info can be stored (for example, the annotation in the case of declare
annotation).
|
TypePatternList |
getParents() |
int |
hashCode() |
boolean |
isAdviceLike()
Indicates if this declare should be treated like advice.
|
boolean |
isExtends() |
boolean |
isMixin() |
boolean |
match(ResolvedType typeX) |
Declare |
parameterizeWith(java.util.Map typeVariableBindingMap,
World w)
Returns a version of this declare element in which all references to type variables are replaced with their bindings given in
the map.
|
boolean |
parentsIncludeClass(World w) |
boolean |
parentsIncludeInterface(World w) |
static Declare |
read(VersionedDataInputStream s,
ISourceContext context) |
void |
resolve(IScope scope)
Returns this declare mutated
|
java.lang.String |
toString() |
void |
write(CompressingDataOutputStream s) |
getDeclaringType, setDeclaringType
copyLocationFrom, getEnd, getFileName, getSourceContext, getSourceLocation, getStart, readLocation, setLocation, traverse, writeLocation
protected TypePattern child
protected TypePatternList parents
protected boolean isExtends
public DeclareParents(TypePattern child, java.util.List parents, boolean isExtends)
protected DeclareParents(TypePattern child, TypePatternList parents, boolean isExtends)
public boolean match(ResolvedType typeX)
public java.lang.Object accept(PatternNodeVisitor visitor, java.lang.Object data)
accept
in class PatternNode
public Declare parameterizeWith(java.util.Map typeVariableBindingMap, World w)
Declare
parameterizeWith
in class Declare
public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object other)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public void write(CompressingDataOutputStream s) throws java.io.IOException
write
in class PatternNode
java.io.IOException
public static Declare read(VersionedDataInputStream s, ISourceContext context) throws java.io.IOException
java.io.IOException
public boolean parentsIncludeInterface(World w)
public boolean parentsIncludeClass(World w)
public void resolve(IScope scope)
Declare
public TypePatternList getParents()
public TypePattern getChild()
public boolean isExtends()
public boolean isAdviceLike()
Declare
isAdviceLike
in class Declare
public java.util.List<ResolvedType> findMatchingNewParents(ResolvedType onType, boolean reportErrors)
public java.lang.String getNameSuffix()
Declare
getNameSuffix
in class Declare
public boolean isMixin()