Class ScalaInheritedPropertyMutationVisitor

java.lang.Object
io.micronaut.scala.processing.test.ScalaInheritedPropertyMutationVisitor
All Implemented Interfaces:
io.micronaut.core.order.Ordered, io.micronaut.core.util.Toggleable, io.micronaut.inject.visitor.TypeElementVisitor<Object,Object>

public final class ScalaInheritedPropertyMutationVisitor extends Object implements io.micronaut.inject.visitor.TypeElementVisitor<Object,Object>
Annotates the properties a type names in its own @IgnoreProps, the way micronaut-serialization does for @JsonIgnoreProperties, and records once every type was visited which properties and fields carry the annotation when read through each type. The Scala counterpart of the two visitors in Core's InheritedPropertyAnnotationMutationSpec.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    What one compilation recorded, by type name.

    Nested classes/interfaces inherited from interface io.micronaut.inject.visitor.TypeElementVisitor

    io.micronaut.inject.visitor.TypeElementVisitor.VisitorKind
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    The annotation naming the properties to annotate.
    static final String
    The annotation added to the named properties.

    Fields inherited from interface io.micronaut.core.order.Ordered

    HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    finish(io.micronaut.inject.visitor.VisitorContext visitorContext)
     
    record(Runnable compilation)
    Executes a compilation with this visitor enabled.
    void
    visitClass(io.micronaut.inject.ast.ClassElement element, io.micronaut.inject.visitor.VisitorContext context)
     

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.micronaut.core.order.Ordered

    getOrder

    Methods inherited from interface io.micronaut.core.util.Toggleable

    isEnabled

    Methods inherited from interface io.micronaut.inject.visitor.TypeElementVisitor

    getClassType, getElementType, getSupportedAnnotationNames, getSupportedOptions, getVisitorKind, query, start, visitConstructor, visitEnumConstant, visitField, visitMethod
  • Field Details

  • Constructor Details

    • ScalaInheritedPropertyMutationVisitor

      public ScalaInheritedPropertyMutationVisitor()
  • Method Details

    • record

      public static ScalaInheritedPropertyMutationVisitor.Recording record(Runnable compilation)
      Executes a compilation with this visitor enabled.
      Parameters:
      compilation - The compilation
      Returns:
      The recording
    • visitClass

      public void visitClass(io.micronaut.inject.ast.ClassElement element, io.micronaut.inject.visitor.VisitorContext context)
      Specified by:
      visitClass in interface io.micronaut.inject.visitor.TypeElementVisitor<Object,Object>
    • finish

      public void finish(io.micronaut.inject.visitor.VisitorContext visitorContext)
      Specified by:
      finish in interface io.micronaut.inject.visitor.TypeElementVisitor<Object,Object>