@Internal public class JavaClassElement extends AbstractJavaElement implements ClassElement
TypeElement.CLASS_NAME_SUFFIX, EMPTY_METADATA, VALUE_MEMBEREMPTY| Modifier | Constructor and Description |
|---|---|
protected |
JavaClassElement(TypeElement classElement,
AnnotationMetadata annotationMetadata,
JavaVisitorContext visitorContext) |
| Modifier and Type | Method and Description |
|---|---|
AnnotationMetadata |
getAnnotationMetadata()
Supplies the metadata.
|
List<PropertyElement> |
getBeanProperties()
Returns the bean properties (getters and setters) for this class element.
|
List<FieldElement> |
getFields(Predicate<Set<ElementModifier>> modifierFilter)
Return fields contained with the given modifiers include / exclude rules.
|
String |
getName() |
Optional<ConstructorElement> |
getPrimaryConstructor()
Find and return a single primary constructor.
|
Optional<ClassElement> |
getSuperType()
Returns the super type of this element or empty if the element has no super type.
|
Map<String,ClassElement> |
getTypeArguments() |
Map<String,ClassElement> |
getTypeArguments(String type)
Get the type arguments for the given type name.
|
boolean |
isAbstract() |
boolean |
isArray()
Returns whether the class element is an array.
|
boolean |
isAssignable(String type)
Tests whether one type is assignable to another.
|
boolean |
isInterface() |
boolean |
isPrimitive()
Whether the type is primitive.
|
annotate, getNativeType, isFinal, isPrivate, isProtected, isPublic, isStatic, mirrorToClassElement, mirrorToClassElement, parameterizedClassElement, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetFields, getFirstTypeArgument, getPackageName, getSimpleName, getType, getTypeArguments, isAssignable, isEnum, isIterablegetGenericTypeannotate, annotate, annotate, annotate, getDocumentation, getNativeType, isFinal, isPrivate, isProtected, isPublic, isStaticbooleanValue, booleanValue, booleanValue, booleanValue, classValue, classValue, classValue, classValue, classValues, classValues, classValues, classValues, doubleValue, doubleValue, doubleValue, enumValue, enumValue, enumValue, enumValue, findAnnotation, findAnnotation, findDeclaredAnnotation, findDeclaredAnnotation, getAnnotation, getAnnotation, getAnnotationNameByStereotype, getAnnotationNameByStereotype, getAnnotationNames, getAnnotationNamesByStereotype, getAnnotationNamesByStereotype, getAnnotationType, getAnnotationTypeByStereotype, getAnnotationTypeByStereotype, getAnnotationTypesByStereotype, getAnnotationValuesByType, getDeclaredAnnotation, getDeclaredAnnotation, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationNames, getDeclaredAnnotationNamesByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationValuesByType, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValues, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValues, getValues, hasAnnotation, hasAnnotation, hasDeclaredAnnotation, hasDeclaredAnnotation, hasDeclaredStereotype, hasDeclaredStereotype, hasDeclaredStereotype, hasStereotype, hasStereotype, hasStereotype, hasStereotype, intValue, intValue, intValue, isAnnotationPresent, isDeclaredAnnotationPresent, isEmpty, isFalse, isFalse, isPresent, isPresent, isTrue, isTrue, longValue, longValue, stringValue, stringValue, stringValue, stringValue, stringValues, stringValues, synthesize, synthesizeAll, synthesizeAnnotationsByType, synthesizeDeclared, synthesizeDeclared, synthesizeDeclaredAnnotationsByTypehasSimpleAnnotation, hasSimpleDeclaredAnnotationisDeclaredNullable, isNullableprotected JavaClassElement(TypeElement classElement, AnnotationMetadata annotationMetadata, JavaVisitorContext visitorContext)
classElement - The TypeElementannotationMetadata - The annotation metadatavisitorContext - The visitor context@Nonnull public Map<String,ClassElement> getTypeArguments(@Nonnull String type)
ClassElementgetTypeArguments in interface ClassElementtype - The type to retrieve type arguments forpublic boolean isPrimitive()
TypedElementisPrimitive in interface TypedElementpublic Optional<ClassElement> getSuperType()
ClassElementgetSuperType in interface ClassElementpublic boolean isAbstract()
isAbstract in interface ClassElementisAbstract in interface ElementisAbstract in class AbstractJavaElementpublic boolean isInterface()
isInterface in interface ClassElementpublic List<PropertyElement> getBeanProperties()
ClassElementgetBeanProperties in interface ClassElementpublic List<FieldElement> getFields(@Nonnull Predicate<Set<ElementModifier>> modifierFilter)
ClassElementgetFields in interface ClassElementmodifierFilter - Can be used to filter fields by modifierpublic boolean isArray()
ClassElementisArray in interface ClassElementisArray in interface TypedElementpublic String getName()
public boolean isAssignable(String type)
ClassElementisAssignable in interface ClassElementtype - The type to checktrue if and only if the this type is assignable to the secondpublic AnnotationMetadata getAnnotationMetadata()
AnnotationMetadataProviderAnnotationMetadata.EMPTY_METADATA.getAnnotationMetadata in interface AnnotationMetadataProvidergetAnnotationMetadata in class AbstractJavaElementAnnotationMetadata@Nonnull public Optional<ConstructorElement> getPrimaryConstructor()
ClassElementCreator or Inject.getPrimaryConstructor in interface ClassElement@Nonnull public Map<String,ClassElement> getTypeArguments()
getTypeArguments in interface ClassElement