Class TypeWriter.Default.ForInlining<U>

    • Field Detail

      • IGNORE_FIELD

        private static final org.objectweb.asm.FieldVisitor IGNORE_FIELD
        Indicates that a field should be ignored.
      • IGNORE_METHOD

        private static final org.objectweb.asm.MethodVisitor IGNORE_METHOD
        Indicates that a method should be ignored.
      • IGNORE_RECORD_COMPONENT

        private static final org.objectweb.asm.RecordComponentVisitor IGNORE_RECORD_COMPONENT
        Indicates that a record component should be ignored.
      • IGNORE_ANNOTATION

        private static final org.objectweb.asm.AnnotationVisitor IGNORE_ANNOTATION
        Indicates that an annotation should be ignored.
      • originalType

        protected final TypeDescription originalType
        The original type's description.
      • classFileLocator

        protected final ClassFileLocator classFileLocator
        The class file locator for locating the original type's class file.
    • Constructor Detail

      • ForInlining

        protected ForInlining​(TypeDescription instrumentedType,
                              ClassFileVersion classFileVersion,
                              TypeWriter.FieldPool fieldPool,
                              TypeWriter.RecordComponentPool recordComponentPool,
                              java.util.List<? extends DynamicType> auxiliaryTypes,
                              FieldList<FieldDescription.InDefinedShape> fields,
                              MethodList<?> methods,
                              MethodList<?> instrumentedMethods,
                              RecordComponentList<RecordComponentDescription.InDefinedShape> recordComponents,
                              LoadedTypeInitializer loadedTypeInitializer,
                              TypeInitializer typeInitializer,
                              TypeAttributeAppender typeAttributeAppender,
                              AsmVisitorWrapper asmVisitorWrapper,
                              AnnotationValueFilter.Factory annotationValueFilterFactory,
                              AnnotationRetention annotationRetention,
                              AuxiliaryType.NamingStrategy auxiliaryTypeNamingStrategy,
                              Implementation.Context.Factory implementationContextFactory,
                              TypeValidation typeValidation,
                              ClassWriterStrategy classWriterStrategy,
                              TypePool typePool,
                              TypeDescription originalType,
                              ClassFileLocator classFileLocator)
        Creates a new inlining type writer.
        Parameters:
        instrumentedType - The instrumented type to be created.
        classFileVersion - The class file specified by the user.
        fieldPool - The field pool to use.
        recordComponentPool - The record component pool to use.
        auxiliaryTypes - The explicit auxiliary types to add to the created type.
        fields - The instrumented type's declared fields.
        methods - The instrumented type's declared and virtually inherited methods.
        instrumentedMethods - The instrumented methods relevant to this type creation.
        recordComponents - The instrumented type's record components.
        loadedTypeInitializer - The loaded type initializer to apply onto the created type after loading.
        typeInitializer - The type initializer to include in the created type's type initializer.
        typeAttributeAppender - The type attribute appender to apply onto the instrumented type.
        asmVisitorWrapper - The ASM visitor wrapper to apply onto the class writer.
        annotationValueFilterFactory - The annotation value filter factory to apply.
        annotationRetention - The annotation retention to apply.
        auxiliaryTypeNamingStrategy - The naming strategy for auxiliary types to apply.
        implementationContextFactory - The implementation context factory to apply.
        typeValidation - Determines if a type should be explicitly validated.
        classWriterStrategy - The class writer strategy to use.
        typePool - The type pool to use for computing stack map frames, if required.
        originalType - The original type's description.
        classFileLocator - The class file locator for locating the original type's class file.
    • Method Detail

      • writeTo

        protected abstract org.objectweb.asm.ClassVisitor writeTo​(org.objectweb.asm.ClassVisitor classVisitor,
                                                                  TypeInitializer typeInitializer,
                                                                  TypeWriter.Default.ForInlining.ContextRegistry contextRegistry,
                                                                  int writerFlags,
                                                                  int readerFlags)
        Creates a class visitor which weaves all changes and additions on the fly.
        Parameters:
        classVisitor - The class visitor to which this entry is to be written to.
        typeInitializer - The type initializer to apply.
        contextRegistry - A context registry to register the lazily created implementation context to.
        writerFlags - The writer flags being used.
        readerFlags - The reader flags being used.
        Returns:
        A class visitor which is capable of applying the changes.