Class MethodCreator

  • All Implemented Interfaces:
    ClassVisitor

    public class MethodCreator
    extends java.lang.Object
    implements ClassVisitor
    This class visitor is able to create a method and add it to a program class in case it does not exist yet.
    • Constructor Detail

      • MethodCreator

        public MethodCreator​(ClassPool programClassPool,
                             ClassPool libraryClassPool,
                             java.lang.String name,
                             java.lang.String descriptor,
                             int requiredSetAccessFlags,
                             int processingFlags,
                             boolean callSuper)
        Create a new MethodCreator.
        Parameters:
        programClassPool - The program class pool.
        libraryClassPool - The library class pool.
        name - The name of the method to add.
        descriptor - The descriptor of the method to add.
        requiredSetAccessFlags - The access flags of the method to add.
        processingFlags - The processing flags to attach to the method.
        callSuper - Whether the method should call a super method.
    • Method Detail

      • visitAnyClass

        public void visitAnyClass​(Clazz clazz)
        Description copied from interface: ClassVisitor
        Visits any Clazz instance. The more specific default implementations of this interface delegate to this method.
        Specified by:
        visitAnyClass in interface ClassVisitor
      • addReturnInstructions

        public static void addReturnInstructions​(InstructionSequenceBuilder builder,
                                                 java.lang.String returnType)
        Adds a return instruction to this builder for a super call that resulted in the given return type.