Package io.micronaut.ast.groovy.visitor
Class GroovyClassElement
- java.lang.Object
-
- io.micronaut.ast.groovy.visitor.AbstractGroovyElement
-
- io.micronaut.ast.groovy.visitor.GroovyClassElement
-
- All Implemented Interfaces:
io.micronaut.core.annotation.AnnotatedElement,io.micronaut.core.annotation.AnnotationMetadata,io.micronaut.core.annotation.AnnotationMetadataDelegate,io.micronaut.core.annotation.AnnotationMetadataProvider,io.micronaut.core.annotation.AnnotationSource,io.micronaut.core.naming.Described,io.micronaut.core.naming.Named,io.micronaut.inject.ast.ArrayableClassElement,io.micronaut.inject.ast.ClassElement,io.micronaut.inject.ast.Element,io.micronaut.inject.ast.TypedElement
@Internal public class GroovyClassElement extends AbstractGroovyElement implements io.micronaut.inject.ast.ArrayableClassElement
A class element returning data from aClassNode.- Since:
- 1.0
-
-
Field Summary
Fields Modifier and Type Field Description protected org.codehaus.groovy.ast.ClassNodeclassNode-
Fields inherited from class io.micronaut.ast.groovy.visitor.AbstractGroovyElement
compilationUnit, sourceUnit, visitorContext
-
-
Constructor Summary
Constructors Constructor Description GroovyClassElement(GroovyVisitorContext visitorContext, org.codehaus.groovy.ast.ClassNode classNode, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Map<java.lang.String,java.util.Map<java.lang.String,io.micronaut.inject.ast.ClassElement>>getAllTypeArguments()intgetArrayDimensions()java.util.List<io.micronaut.inject.ast.PropertyElement>getBeanProperties()java.util.List<? extends io.micronaut.inject.ast.ClassElement>getBoundGenericTypes()java.util.List<? extends io.micronaut.inject.ast.GenericPlaceholderElement>getDeclaredGenericPlaceholders()java.util.Optional<io.micronaut.inject.ast.MethodElement>getDefaultConstructor()<T extends io.micronaut.inject.ast.Element>
java.util.List<T>getEnclosedElements(io.micronaut.inject.ast.ElementQuery<T> query)java.util.Optional<io.micronaut.inject.ast.ClassElement>getEnclosingType()java.util.Map<java.lang.String,java.util.Map<java.lang.String,org.codehaus.groovy.ast.ClassNode>>getGenericTypeInfo()Builds and returns the generic type information.java.util.Collection<io.micronaut.inject.ast.ClassElement>getInterfaces()java.util.Set<io.micronaut.inject.ast.ElementModifier>getModifiers()java.lang.StringgetName()java.lang.ObjectgetNativeType()io.micronaut.inject.ast.PackageElementgetPackage()java.lang.StringgetPackageName()java.util.Optional<io.micronaut.inject.ast.MethodElement>getPrimaryConstructor()java.lang.StringgetSimpleName()java.util.Optional<io.micronaut.inject.ast.ClassElement>getSuperType()java.util.Map<java.lang.String,io.micronaut.inject.ast.ClassElement>getTypeArguments()java.util.Map<java.lang.String,io.micronaut.inject.ast.ClassElement>getTypeArguments(java.lang.String type)booleanisAbstract()booleanisArray()booleanisAssignable(io.micronaut.inject.ast.ClassElement type)booleanisAssignable(java.lang.String type)booleanisFinal()booleanisInner()booleanisInterface()booleanisPrimitive()booleanisPrivate()booleanisProtected()booleanisPublic()booleanisStatic()booleanisTypeVariable()protected io.micronaut.inject.ast.ClassElementtoClassElement(org.codehaus.groovy.ast.ClassNode classNode)java.lang.StringtoString()io.micronaut.inject.ast.ClassElementwithArrayDimensions(int arrayDimensions)io.micronaut.inject.ast.ClassElementwithBoundGenericTypes(java.util.List<? extends io.micronaut.inject.ast.ClassElement> typeArguments)-
Methods inherited from class io.micronaut.ast.groovy.visitor.AbstractGroovyElement
alignNewGenericsInfo, annotate, annotate, equals, getAnnotationMetadata, getDocumentation, getGenericElement, hashCode, isPackagePrivate, removeAnnotation, removeAnnotationIf, removeStereotype, resolveAnnotationMetadata, resolveModifiers, resolveModifiers, resolveModifiers
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.micronaut.core.annotation.AnnotatedElement
isDeclaredNonNull, isDeclaredNullable, isNonNull, isNullable
-
Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadata
getAnnotationValuesByName, getAnnotationValuesByStereotype, getDeclaredAnnotationValuesByName, getValues, hasDeclaredStereotype, isAnnotationPresent, isDeclaredAnnotationPresent
-
Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataDelegate
booleanValue, booleanValue, booleanValue, booleanValue, classValue, classValue, classValue, classValue, classValues, classValues, classValues, classValues, doubleValue, doubleValue, doubleValue, enumValue, enumValue, enumValue, enumValue, enumValues, enumValues, enumValues, enumValues, findAnnotation, findAnnotation, findDeclaredAnnotation, findDeclaredAnnotation, findRepeatableAnnotation, findRepeatableAnnotation, getAnnotation, getAnnotation, getAnnotationNameByStereotype, getAnnotationNameByStereotype, getAnnotationNames, getAnnotationNamesByStereotype, getAnnotationNamesByStereotype, getAnnotationType, getAnnotationType, getAnnotationTypeByStereotype, getAnnotationTypeByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getAnnotationValuesByType, getDeclaredAnnotation, getDeclaredAnnotation, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationNames, getDeclaredAnnotationNamesByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationValuesByType, getDeclaredMetadata, getDeclaredStereotypeAnnotationNames, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValues, getStereotypeAnnotationNames, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValues, getValues, hasAnnotation, hasAnnotation, hasDeclaredAnnotation, hasDeclaredAnnotation, hasDeclaredStereotype, hasDeclaredStereotype, hasDeclaredStereotype, hasPropertyExpressions, hasSimpleAnnotation, hasSimpleDeclaredAnnotation, hasStereotype, hasStereotype, hasStereotype, hasStereotype, intValue, intValue, intValue, isAnnotationPresent, isDeclaredAnnotationPresent, isEmpty, isFalse, isFalse, isPresent, isPresent, isRepeatableAnnotation, isRepeatableAnnotation, isTrue, isTrue, longValue, longValue, stringValue, stringValue, stringValue, stringValue, stringValues, stringValues, stringValues, stringValues, synthesize, synthesize, synthesizeAll, synthesizeAnnotationsByType, synthesizeDeclared, synthesizeDeclared, synthesizeDeclared, synthesizeDeclaredAnnotationsByType
-
Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataProvider
getAnnotationMetadata
-
Methods inherited from interface io.micronaut.inject.ast.ClassElement
addAssociatedBean, foldBoundGenericTypes, getCanonicalName, getEnclosedElement, getFields, getFields, getFirstTypeArgument, getRawClassElement, getType, getTypeArguments, isAssignable, isEnum, isGenericPlaceholder, isIterable, isOptional, isProxy, isRecord, isWildcard
-
-
-
-
Constructor Detail
-
GroovyClassElement
public GroovyClassElement(GroovyVisitorContext visitorContext, org.codehaus.groovy.ast.ClassNode classNode, io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
- Parameters:
visitorContext- The visitor contextclassNode- TheClassNodeannotationMetadata- The annotation metadata
-
-
Method Detail
-
isTypeVariable
public boolean isTypeVariable()
- Specified by:
isTypeVariablein interfaceio.micronaut.inject.ast.ClassElement
-
getEnclosedElements
public <T extends io.micronaut.inject.ast.Element> java.util.List<T> getEnclosedElements(@NonNull io.micronaut.inject.ast.ElementQuery<T> query)- Specified by:
getEnclosedElementsin interfaceio.micronaut.inject.ast.ClassElement
-
getModifiers
public java.util.Set<io.micronaut.inject.ast.ElementModifier> getModifiers()
- Specified by:
getModifiersin interfaceio.micronaut.inject.ast.Element
-
isInner
public boolean isInner()
- Specified by:
isInnerin interfaceio.micronaut.inject.ast.ClassElement
-
getEnclosingType
public java.util.Optional<io.micronaut.inject.ast.ClassElement> getEnclosingType()
- Specified by:
getEnclosingTypein interfaceio.micronaut.inject.ast.ClassElement
-
isInterface
public boolean isInterface()
- Specified by:
isInterfacein interfaceio.micronaut.inject.ast.ClassElement
-
isPrimitive
public boolean isPrimitive()
- Specified by:
isPrimitivein interfaceio.micronaut.inject.ast.TypedElement
-
getInterfaces
public java.util.Collection<io.micronaut.inject.ast.ClassElement> getInterfaces()
- Specified by:
getInterfacesin interfaceio.micronaut.inject.ast.ClassElement
-
getSuperType
public java.util.Optional<io.micronaut.inject.ast.ClassElement> getSuperType()
- Specified by:
getSuperTypein interfaceio.micronaut.inject.ast.ClassElement
-
getPrimaryConstructor
@NonNull public java.util.Optional<io.micronaut.inject.ast.MethodElement> getPrimaryConstructor()
- Specified by:
getPrimaryConstructorin interfaceio.micronaut.inject.ast.ClassElement
-
getDefaultConstructor
@NonNull public java.util.Optional<io.micronaut.inject.ast.MethodElement> getDefaultConstructor()
- Specified by:
getDefaultConstructorin interfaceio.micronaut.inject.ast.ClassElement
-
getGenericTypeInfo
public java.util.Map<java.lang.String,java.util.Map<java.lang.String,org.codehaus.groovy.ast.ClassNode>> getGenericTypeInfo()
Builds and returns the generic type information.- Returns:
- The generic type info
-
getTypeArguments
@NonNull public java.util.Map<java.lang.String,io.micronaut.inject.ast.ClassElement> getTypeArguments(@NonNull java.lang.String type)- Specified by:
getTypeArgumentsin interfaceio.micronaut.inject.ast.ClassElement
-
getAllTypeArguments
@NonNull public java.util.Map<java.lang.String,java.util.Map<java.lang.String,io.micronaut.inject.ast.ClassElement>> getAllTypeArguments()
- Specified by:
getAllTypeArgumentsin interfaceio.micronaut.inject.ast.ClassElement
-
getTypeArguments
@NonNull public java.util.Map<java.lang.String,io.micronaut.inject.ast.ClassElement> getTypeArguments()
- Specified by:
getTypeArgumentsin interfaceio.micronaut.inject.ast.ClassElement
-
getBeanProperties
public java.util.List<io.micronaut.inject.ast.PropertyElement> getBeanProperties()
- Specified by:
getBeanPropertiesin interfaceio.micronaut.inject.ast.ClassElement
-
isArray
public boolean isArray()
- Specified by:
isArrayin interfaceio.micronaut.inject.ast.TypedElement
-
withArrayDimensions
public io.micronaut.inject.ast.ClassElement withArrayDimensions(int arrayDimensions)
- Specified by:
withArrayDimensionsin interfaceio.micronaut.inject.ast.ArrayableClassElement
-
getArrayDimensions
public int getArrayDimensions()
- Specified by:
getArrayDimensionsin interfaceio.micronaut.inject.ast.TypedElement
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
getName
public java.lang.String getName()
- Specified by:
getNamein interfaceio.micronaut.inject.ast.Element- Specified by:
getNamein interfaceio.micronaut.core.naming.Named
-
getSimpleName
public java.lang.String getSimpleName()
- Specified by:
getSimpleNamein interfaceio.micronaut.inject.ast.ClassElement- Specified by:
getSimpleNamein interfaceio.micronaut.inject.ast.Element
-
getPackageName
public java.lang.String getPackageName()
- Specified by:
getPackageNamein interfaceio.micronaut.inject.ast.ClassElement
-
getPackage
public io.micronaut.inject.ast.PackageElement getPackage()
- Specified by:
getPackagein interfaceio.micronaut.inject.ast.ClassElement
-
isAbstract
public boolean isAbstract()
- Specified by:
isAbstractin interfaceio.micronaut.inject.ast.Element
-
isStatic
public boolean isStatic()
- Specified by:
isStaticin interfaceio.micronaut.inject.ast.Element
-
isPublic
public boolean isPublic()
- Specified by:
isPublicin interfaceio.micronaut.inject.ast.Element
-
isPrivate
public boolean isPrivate()
- Specified by:
isPrivatein interfaceio.micronaut.inject.ast.Element
-
isFinal
public boolean isFinal()
- Specified by:
isFinalin interfaceio.micronaut.inject.ast.Element
-
isProtected
public boolean isProtected()
- Specified by:
isProtectedin interfaceio.micronaut.inject.ast.Element
-
getNativeType
public java.lang.Object getNativeType()
- Specified by:
getNativeTypein interfaceio.micronaut.inject.ast.Element
-
isAssignable
public boolean isAssignable(java.lang.String type)
- Specified by:
isAssignablein interfaceio.micronaut.inject.ast.ClassElement
-
isAssignable
public boolean isAssignable(io.micronaut.inject.ast.ClassElement type)
- Specified by:
isAssignablein interfaceio.micronaut.inject.ast.ClassElement
-
getBoundGenericTypes
@NonNull public java.util.List<? extends io.micronaut.inject.ast.ClassElement> getBoundGenericTypes()
- Specified by:
getBoundGenericTypesin interfaceio.micronaut.inject.ast.ClassElement
-
getDeclaredGenericPlaceholders
@NonNull public java.util.List<? extends io.micronaut.inject.ast.GenericPlaceholderElement> getDeclaredGenericPlaceholders()
- Specified by:
getDeclaredGenericPlaceholdersin interfaceio.micronaut.inject.ast.ClassElement
-
toClassElement
protected final io.micronaut.inject.ast.ClassElement toClassElement(org.codehaus.groovy.ast.ClassNode classNode)
-
withBoundGenericTypes
@NonNull public io.micronaut.inject.ast.ClassElement withBoundGenericTypes(@NonNull java.util.List<? extends io.micronaut.inject.ast.ClassElement> typeArguments)- Specified by:
withBoundGenericTypesin interfaceio.micronaut.inject.ast.ClassElement
-
-