RECODER 0.92

recoder.abstraction
Interface ClassType

All Superinterfaces:
AccessFlags, ClassTypeContainer, Member, ModelElement, NamedModelElement, ProgramModelElement, Type
All Known Subinterfaces:
TypeParameter
All Known Implementing Classes:
AnnotationDeclaration, ArrayType, ClassDeclaration, ClassFile, EnumDeclaration, ErasedType, InterfaceDeclaration, IntersectionType, NullType, ParameterizedType, ParameterizedType.CapturedType, TypeArgument.CapturedTypeArgument, TypeDeclaration, TypeParameterDeclaration, TypeParameterInfo

public interface ClassType
extends Type, Member, ClassTypeContainer

A program model element representing class types.

Author:
AL, RN

Nested Class Summary
 
Nested classes/interfaces inherited from interface recoder.abstraction.ProgramModelElement
ProgramModelElement.LexicalOrder
 
Nested classes/interfaces inherited from interface recoder.abstraction.ProgramModelElement
ProgramModelElement.LexicalOrder
 
Nested classes/interfaces inherited from interface recoder.abstraction.ProgramModelElement
ProgramModelElement.LexicalOrder
 
Field Summary
 
Fields inherited from interface recoder.abstraction.ProgramModelElement
LEXICAL_ORDER
 
Fields inherited from interface recoder.bytecode.AccessFlags
ABSTRACT, ANNOTATION, BRIDGE, ENUM, FINAL, INTERFACE, NATIVE, PRIVATE, PROTECTED, PUBLIC, STATIC, STRICT, SUPER, SYNCHRONIZED, SYNTHETIC, TRANSIENT, VARARGS, VOLATILE
 
Fields inherited from interface recoder.abstraction.ProgramModelElement
LEXICAL_ORDER
 
Fields inherited from interface recoder.bytecode.AccessFlags
ABSTRACT, ANNOTATION, BRIDGE, ENUM, FINAL, INTERFACE, NATIVE, PRIVATE, PROTECTED, PUBLIC, STATIC, STRICT, SUPER, SYNCHRONIZED, SYNTHETIC, TRANSIENT, VARARGS, VOLATILE
 
Fields inherited from interface recoder.abstraction.ProgramModelElement
LEXICAL_ORDER
 
Fields inherited from interface recoder.bytecode.AccessFlags
ABSTRACT, ANNOTATION, BRIDGE, ENUM, FINAL, INTERFACE, NATIVE, PRIVATE, PROTECTED, PUBLIC, STATIC, STRICT, SUPER, SYNCHRONIZED, SYNTHETIC, TRANSIENT, VARARGS, VOLATILE
 
Method Summary
 java.util.List<Field> getAllFields()
          Returns all visible fields that are defined in this class type or any of its supertypes.
 java.util.List<Method> getAllMethods()
          Returns all visible methods that are defined in this class type or any of its supertypes.
 java.util.List<ClassType> getAllSupertypes()
          Returns the list of all supertypes of this class type, in topological order, including the class type itself as first element.
 java.util.List<ClassType> getAllTypes()
          Returns all class types that are inner types of this class type, including visible inherited types.
 java.util.List<? extends Constructor> getConstructors()
          Returns the constructors locally defined within this class type.
 ErasedType getErasedType()
           
 java.util.List<? extends Field> getFields()
          Returns the fields locally defined within this class type.
 java.util.List<Method> getMethods()
          Returns the methods locally defined within this class type.
 java.util.List<ClassType> getSupertypes()
          Returns the list of locally declared supertypes of this class type.
 java.util.List<? extends TypeParameter> getTypeParameters()
          Returns the type parameters of this class type.
 boolean isAbstract()
          Checks if this member is abstract.
 boolean isAnnotationType()
          Checks if this class type denotes an annotation type
 boolean isEnumType()
          Checks if this class type denotes an enum type
 boolean isInner()
          Checks if this type is an inner class, as described in JLS, 3rd edition, §8.1.3
 boolean isInterface()
          Checks if this class type denotes an interface (i.e. ordinary interface or annotation type).
 boolean isOrdinaryClass()
          Checks if this class type denotes an ordinary (i.e. not an enum) class.
 boolean isOrdinaryInterface()
          Checks if this class type denotes an ordinary (i.e. not annotation type) interface.
 
Methods inherited from interface recoder.abstraction.Type
createArrayType, getArrayType, getFullSignature
 
Methods inherited from interface recoder.abstraction.ProgramModelElement
getBinaryName, getFullName, getProgramModelInfo, setProgramModelInfo
 
Methods inherited from interface recoder.NamedModelElement
getName
 
Methods inherited from interface recoder.ModelElement
validate
 
Methods inherited from interface recoder.abstraction.Member
getAnnotations, getContainingClassType, isFinal, isPrivate, isProtected, isPublic, isStatic, isStrictFp
 
Methods inherited from interface recoder.abstraction.ProgramModelElement
getBinaryName, getFullName, getProgramModelInfo, setProgramModelInfo
 
Methods inherited from interface recoder.NamedModelElement
getName
 
Methods inherited from interface recoder.ModelElement
validate
 
Methods inherited from interface recoder.abstraction.ClassTypeContainer
getContainer, getPackage, getTypes
 
Methods inherited from interface recoder.abstraction.ProgramModelElement
getBinaryName, getFullName, getProgramModelInfo, setProgramModelInfo
 
Methods inherited from interface recoder.NamedModelElement
getName
 
Methods inherited from interface recoder.ModelElement
validate
 

Method Detail

isInterface

boolean isInterface()
Checks if this class type denotes an interface (i.e. ordinary interface or annotation type).

Returns:
true if this object represents an interface, false otherwise.

isOrdinaryInterface

boolean isOrdinaryInterface()
Checks if this class type denotes an ordinary (i.e. not annotation type) interface.

Returns:
true if this object represents an ordinary interface, false otherwise.

isAnnotationType

boolean isAnnotationType()
Checks if this class type denotes an annotation type

Returns:
true if this object represents an annotation type, false otherwise

isEnumType

boolean isEnumType()
Checks if this class type denotes an enum type

Returns:
true if this object represents an enum type, false otherwise

isOrdinaryClass

boolean isOrdinaryClass()
Checks if this class type denotes an ordinary (i.e. not an enum) class.

Returns:
true if this object represents an ordinary class type, false otherwise

isAbstract

boolean isAbstract()
Checks if this member is abstract. An interface will report true .

Returns:
true if this member is abstract, false otherwise.
See Also:
isInterface()

isInner

boolean isInner()
Checks if this type is an inner class, as described in JLS, 3rd edition, §8.1.3

Returns:

getSupertypes

java.util.List<ClassType> getSupertypes()
Returns the list of locally declared supertypes of this class type.

Returns:
the list of locally defined supertypes of this type.

getAllSupertypes

java.util.List<ClassType> getAllSupertypes()
Returns the list of all supertypes of this class type, in topological order, including the class type itself as first element. The order allows to resolve member overloading or overloading.

Returns:
the list of all supertypes of this type in topological order.

getFields

java.util.List<? extends Field> getFields()
Returns the fields locally defined within this class type.

Returns:
the list of field members of this type.

getAllFields

java.util.List<Field> getAllFields()
Returns all visible fields that are defined in this class type or any of its supertypes. The fields are in topological order with respect to the inheritance hierarchy.

Returns:
the list of visible field members of this type and its supertypes.

getMethods

java.util.List<Method> getMethods()
Returns the methods locally defined within this class type.

Returns:
the list of methods of this type.

getAllMethods

java.util.List<Method> getAllMethods()
Returns all visible methods that are defined in this class type or any of its supertypes. The methods are in topological order with respect to the inheritance hierarchy.

Returns:
the list of visible methods of this type and its supertypes.

getConstructors

java.util.List<? extends Constructor> getConstructors()
Returns the constructors locally defined within this class type.

Returns:
the list of constructors of this type.

getAllTypes

java.util.List<ClassType> getAllTypes()
Returns all class types that are inner types of this class type, including visible inherited types.

Returns:
a list of class types that are members of this type or any of its supertypes.
See Also:
getAllSupertypes()

getTypeParameters

java.util.List<? extends TypeParameter> getTypeParameters()
Returns the type parameters of this class type.

Returns:
the list of type parameters of this class type.

getErasedType

ErasedType getErasedType()

RECODER 0.92