Class ScalaConstructorElement

java.lang.Object
io.micronaut.scala.processing.visitor.ScalaMethodElement
io.micronaut.scala.processing.visitor.ScalaConstructorElement
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.annotation.MutableAnnotationMetadataDelegate<io.micronaut.inject.ast.Element>, io.micronaut.inject.ast.ConstructorElement, io.micronaut.inject.ast.Element, io.micronaut.inject.ast.MemberElement, io.micronaut.inject.ast.MethodElement

public final class ScalaConstructorElement extends ScalaMethodElement implements io.micronaut.inject.ast.ConstructorElement
Scala constructor element.
  • Field Summary

    Fields inherited from interface io.micronaut.core.annotation.AnnotationMetadata

    CLASS_NAME_SUFFIX, EMPTY_METADATA, VALUE_MEMBER

    Fields inherited from interface io.micronaut.core.annotation.AnnotationSource

    EMPTY

    Fields inherited from interface io.micronaut.inject.ast.Element

    EMPTY_ELEMENT_ARRAY

    Fields inherited from interface io.micronaut.inject.ast.annotation.MutableAnnotationMetadataDelegate

    EMPTY
  • Method Summary

    Modifier and Type
    Method
    Description
    <T extends Annotation>
    io.micronaut.inject.ast.Element
    annotate(io.micronaut.core.annotation.AnnotationValue<T> annotationValue)
     
    <T extends Annotation>
    io.micronaut.inject.ast.Element
    annotate(String annotationType, Consumer<io.micronaut.core.annotation.AnnotationValueBuilder<T>> consumer)
     
    protected Class<?>
     
    boolean
     
    io.micronaut.inject.ast.ClassElement
     
    getDocumentation(boolean parse)
     
    protected io.micronaut.inject.ast.annotation.ElementAnnotationMetadata
     
    Set<io.micronaut.inject.ast.ElementModifier>
     
     
     
    int
     
    protected boolean
    Whether an absent nullability annotation on this member means non-null.
    boolean
     
    boolean
     
    boolean
     
    boolean
     
    boolean
     
    boolean
     
    boolean
     
    boolean
     
    protected Optional<String>
     
    io.micronaut.inject.ast.Element
    removeAnnotation(String annotationType)
     
    <T extends Annotation>
    io.micronaut.inject.ast.Element
    removeAnnotationIf(Predicate<io.micronaut.core.annotation.AnnotationValue<T>> predicate)
     
    io.micronaut.inject.ast.Element
    removeStereotype(String annotationType)
     
    io.micronaut.inject.ast.ConstructorElement
    withAnnotationMetadata(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
     
    io.micronaut.inject.ast.MethodElement
    withParameters(io.micronaut.inject.ast.ParameterElement... newParameters)
     

    Methods inherited from class Object

    clone, finalize, getClass, notify, notifyAll, toString, 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

    enumValuesSet, enumValuesSet, getValues, hasDeclaredStereotype, hasStereotypeNonRepeating, isAnnotationPresent, isDeclaredAnnotationPresent

    Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataDelegate

    booleanValue, booleanValue, booleanValue, booleanValue, classValue, classValue, classValue, classValue, classValues, classValues, classValues, classValues, copyAnnotationMetadata, 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, getAnnotationValuesByName, getAnnotationValuesByStereotype, getAnnotationValuesByType, getDeclaredAnnotation, getDeclaredAnnotation, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationNames, getDeclaredAnnotationNamesByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationValuesByName, getDeclaredAnnotationValuesByType, getDeclaredMetadata, getDeclaredStereotypeAnnotationNames, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValues, getStereotypeAnnotationNames, getTargetAnnotationMetadata, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValues, getValues, hasAnnotation, hasAnnotation, hasDeclaredAnnotation, hasDeclaredAnnotation, hasDeclaredStereotype, hasDeclaredStereotype, hasDeclaredStereotype, hasEvaluatedExpressions, 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.ConstructorElement

    getName, getReturnType, hides, hides, overrides

    Methods inherited from interface io.micronaut.inject.ast.Element

    annotate, annotate, annotate, annotate, annotate, getDescription, getDocumentation, getDocumentation, getNativeType, getSimpleName, isAbstract, isFinal, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic, isSynthetic, removeAnnotation, removeAnnotation, removeAnnotationIf, removeStereotype, removeStereotype

    Methods inherited from interface io.micronaut.inject.ast.MemberElement

    getDeclaringType, getModifiers, getOwningType, isAccessible, isAccessible, isAccessible, isReflectionRequired, isReflectionRequired

    Methods inherited from interface io.micronaut.inject.ast.MethodElement

    addAssociatedBean, findParameterIndex, getDeclaredMethodAnnotationMetadata, getDeclaredTypeArguments, getDeclaredTypeVariables, getDescription, getGenericReturnType, getMethodAnnotationMetadata, getOverriddenMethods, getParameter, getParameters, getReceiverType, getSuspendParameters, getThrownTypes, getTypeArguments, hasParameters, isDefault, isSubSignature, isSuspend, isVarArgs, withNewOwningType, withNewParameters
  • Method Details

    • withAnnotationMetadata

      public io.micronaut.inject.ast.ConstructorElement withAnnotationMetadata(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
      Specified by:
      withAnnotationMetadata in interface io.micronaut.inject.ast.Element
      Specified by:
      withAnnotationMetadata in interface io.micronaut.inject.ast.MemberElement
      Specified by:
      withAnnotationMetadata in interface io.micronaut.inject.ast.MethodElement
      Overrides:
      withAnnotationMetadata in class ScalaMethodElement
    • withParameters

      public io.micronaut.inject.ast.MethodElement withParameters(io.micronaut.inject.ast.ParameterElement... newParameters)
      Specified by:
      withParameters in interface io.micronaut.inject.ast.MethodElement
      Overrides:
      withParameters in class ScalaMethodElement
    • getDeclaringType

      public io.micronaut.inject.ast.ClassElement getDeclaringType()
      Specified by:
      getDeclaringType in interface io.micronaut.inject.ast.MemberElement
    • hasNullMarked

      protected boolean hasNullMarked()
      Whether an absent nullability annotation on this member means non-null.

      `@NullMarked` annotates nothing itself: it changes what saying nothing means for everything inside it. Core leaves that to the language module -- `isNonNull()` on the shared `AnnotatedElement` only asks whether the stereotype is present -- and the Java module implements it by walking from the member out to its owning type. Without the same walk here, every unannotated member of a `@NullMarked` Scala class reported neither nullable nor non-null, so binding and validation treated it as unconstrained.

      Returns:
      true when this member, or the type declaring it, is null-marked
    • isNonNull

      public boolean isNonNull()
      Specified by:
      isNonNull in interface io.micronaut.core.annotation.AnnotatedElement
    • rawDocumentation

      protected Optional<String> rawDocumentation()
      Returns:
      The raw Scaladoc comment written on this element, if any
    • getDocumentation

      public Optional<String> getDocumentation(boolean parse)
      Specified by:
      getDocumentation in interface io.micronaut.inject.ast.Element
    • getName

      public String getName()
      Specified by:
      getName in interface io.micronaut.inject.ast.Element
      Specified by:
      getName in interface io.micronaut.core.naming.Named
    • isProtected

      public boolean isProtected()
      Specified by:
      isProtected in interface io.micronaut.inject.ast.Element
    • isPublic

      public boolean isPublic()
      Specified by:
      isPublic in interface io.micronaut.inject.ast.Element
    • isPrivate

      public boolean isPrivate()
      Specified by:
      isPrivate in interface io.micronaut.inject.ast.Element
    • isPackagePrivate

      public boolean isPackagePrivate()
      Specified by:
      isPackagePrivate in interface io.micronaut.inject.ast.Element
    • isAbstract

      public boolean isAbstract()
      Specified by:
      isAbstract in interface io.micronaut.inject.ast.Element
    • isStatic

      public boolean isStatic()
      Specified by:
      isStatic in interface io.micronaut.inject.ast.Element
    • isFinal

      public boolean isFinal()
      Specified by:
      isFinal in interface io.micronaut.inject.ast.Element
    • getModifiers

      public Set<io.micronaut.inject.ast.ElementModifier> getModifiers()
      Specified by:
      getModifiers in interface io.micronaut.inject.ast.Element
    • getNativeType

      public Object getNativeType()
      Specified by:
      getNativeType in interface io.micronaut.inject.ast.Element
    • getElementAnnotationMetadata

      protected io.micronaut.inject.ast.annotation.ElementAnnotationMetadata getElementAnnotationMetadata()
    • annotate

      public <T extends Annotation> io.micronaut.inject.ast.Element annotate(String annotationType, Consumer<io.micronaut.core.annotation.AnnotationValueBuilder<T>> consumer)
      Specified by:
      annotate in interface io.micronaut.inject.ast.Element
      Specified by:
      annotate in interface io.micronaut.inject.ast.annotation.MutableAnnotationMetadataDelegate<io.micronaut.inject.ast.Element>
    • annotate

      public <T extends Annotation> io.micronaut.inject.ast.Element annotate(io.micronaut.core.annotation.AnnotationValue<T> annotationValue)
      Specified by:
      annotate in interface io.micronaut.inject.ast.Element
      Specified by:
      annotate in interface io.micronaut.inject.ast.annotation.MutableAnnotationMetadataDelegate<io.micronaut.inject.ast.Element>
    • removeAnnotation

      public io.micronaut.inject.ast.Element removeAnnotation(String annotationType)
      Specified by:
      removeAnnotation in interface io.micronaut.inject.ast.Element
      Specified by:
      removeAnnotation in interface io.micronaut.inject.ast.annotation.MutableAnnotationMetadataDelegate<io.micronaut.inject.ast.Element>
    • removeAnnotationIf

      public <T extends Annotation> io.micronaut.inject.ast.Element removeAnnotationIf(Predicate<io.micronaut.core.annotation.AnnotationValue<T>> predicate)
      Specified by:
      removeAnnotationIf in interface io.micronaut.inject.ast.Element
      Specified by:
      removeAnnotationIf in interface io.micronaut.inject.ast.annotation.MutableAnnotationMetadataDelegate<io.micronaut.inject.ast.Element>
    • removeStereotype

      public io.micronaut.inject.ast.Element removeStereotype(String annotationType)
      Specified by:
      removeStereotype in interface io.micronaut.inject.ast.Element
      Specified by:
      removeStereotype in interface io.micronaut.inject.ast.annotation.MutableAnnotationMetadataDelegate<io.micronaut.inject.ast.Element>
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equalityType

      protected Class<?> equalityType()