org.codehaus.groovy.classgen.asm.util

## Class LoggableTextifier

- java.lang.Object
- - org.objectweb.asm.util.Printer
  - - org.objectweb.asm.util.Textifier
    - - org.codehaus.groovy.classgen.asm.util.LoggableTextifier

-     public class LoggableTextifier
      extends org.objectweb.asm.util.Textifier

  Logging bytecode generation, which can make debugging easy
  Since:
    2.5.0

- - ### Field Summary

    - ### Fields inherited from class org.objectweb.asm.util.Textifier

      `CLASS_SIGNATURE, FIELD_DESCRIPTOR, FIELD_SIGNATURE, HANDLE_DESCRIPTOR, INTERNAL_NAME, labelNames, ltab, METHOD_DESCRIPTOR, METHOD_SIGNATURE, tab, tab2, tab3`

    - ### Fields inherited from class org.objectweb.asm.util.Printer

      `api, HANDLE_TAG, OPCODES, stringBuilder, text, TYPES`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `LoggableTextifier()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected org.objectweb.asm.util.Textifier` | `createTextifier()`
    `protected void` | `log()`
    `void` | `visit(int version, int access, String name, String signature, String superName, String[] interfaces)`
    `void` | `visit(String name, Object value)`
    `org.objectweb.asm.util.Textifier` | `visitAnnotableParameterCount(int parameterCount, boolean visible)`
    `org.objectweb.asm.util.Textifier` | `visitAnnotation(String desc, boolean visible)`
    `org.objectweb.asm.util.Textifier` | `visitAnnotation(String name, String desc)`
    `org.objectweb.asm.util.Textifier` | `visitAnnotationDefault()`
    `void` | `visitAnnotationEnd()`
    `org.objectweb.asm.util.Textifier` | `visitArray(String name)`
    `void` | `visitAttribute(org.objectweb.asm.Attribute attr)`
    `org.objectweb.asm.util.Textifier` | `visitClassAnnotation(String desc, boolean visible)`
    `void` | `visitClassAttribute(org.objectweb.asm.Attribute attr)`
    `void` | `visitClassEnd()`
    `org.objectweb.asm.util.Printer` | `visitClassTypeAnnotation(int typeRef, org.objectweb.asm.TypePath typePath, String desc, boolean visible)`
    `void` | `visitCode()`
    `void` | `visitEnum(String name, String desc, String value)`
    `void` | `visitExport(String export, int access, String... modules)`
    `org.objectweb.asm.util.Textifier` | `visitField(int access, String name, String desc, String signature, Object value)`
    `org.objectweb.asm.util.Textifier` | `visitFieldAnnotation(String desc, boolean visible)`
    `void` | `visitFieldAttribute(org.objectweb.asm.Attribute attr)`
    `void` | `visitFieldEnd()`
    `void` | `visitFieldInsn(int opcode, String owner, String name, String desc)`
    `org.objectweb.asm.util.Printer` | `visitFieldTypeAnnotation(int typeRef, org.objectweb.asm.TypePath typePath, String desc, boolean visible)`
    `void` | `visitFrame(int type, int nLocal, Object[] local, int nStack, Object[] stack)`
    `void` | `visitIincInsn(int var, int increment)`
    `void` | `visitInnerClass(String name, String outerName, String innerName, int access)`
    `void` | `visitInsn(int opcode)`
    `org.objectweb.asm.util.Printer` | `visitInsnAnnotation(int typeRef, org.objectweb.asm.TypePath typePath, String desc, boolean visible)`
    `void` | `visitIntInsn(int opcode, int operand)`
    `void` | `visitInvokeDynamicInsn(String name, String desc, org.objectweb.asm.Handle bsm, Object... bsmArgs)`
    `void` | `visitJumpInsn(int opcode, org.objectweb.asm.Label label)`
    `void` | `visitLabel(org.objectweb.asm.Label label)`
    `void` | `visitLdcInsn(Object cst)`
    `void` | `visitLineNumber(int line, org.objectweb.asm.Label start)`
    `void` | `visitLocalVariable(String name, String desc, String signature, org.objectweb.asm.Label start, org.objectweb.asm.Label end, int index)`
    `org.objectweb.asm.util.Printer` | `visitLocalVariableAnnotation(int typeRef, org.objectweb.asm.TypePath typePath, org.objectweb.asm.Label[] start, org.objectweb.asm.Label[] end, int[] index, String desc, boolean visible)`
    `void` | `visitLookupSwitchInsn(org.objectweb.asm.Label dflt, int[] keys, org.objectweb.asm.Label[] labels)`
    `void` | `visitMainClass(String mainClass)`
    `void` | `visitMaxs(int maxStack, int maxLocals)`
    `org.objectweb.asm.util.Textifier` | `visitMethod(int access, String name, String desc, String signature, String[] exceptions)`
    `org.objectweb.asm.util.Textifier` | `visitMethodAnnotation(String desc, boolean visible)`
    `void` | `visitMethodAttribute(org.objectweb.asm.Attribute attr)`
    `void` | `visitMethodEnd()`
    `void` | `visitMethodInsn(int opcode, String owner, String name, String desc)`
    `void` | `visitMethodInsn(int opcode, String owner, String name, String desc, boolean itf)`
    `org.objectweb.asm.util.Printer` | `visitMethodTypeAnnotation(int typeRef, org.objectweb.asm.TypePath typePath, String desc, boolean visible)`
    `org.objectweb.asm.util.Printer` | `visitModule(String name, int access, String version)`
    `void` | `visitModuleEnd()`
    `void` | `visitMultiANewArrayInsn(String desc, int dims)`
    `void` | `visitNestHost(String nestHost)`
    `void` | `visitNestMember(String nestMember)`
    `void` | `visitOpen(String packaze, int access, String... modules)`
    `void` | `visitOuterClass(String owner, String name, String desc)`
    `void` | `visitPackage(String packaze)`
    `void` | `visitParameter(String name, int access)`
    `org.objectweb.asm.util.Textifier` | `visitParameterAnnotation(int parameter, String desc, boolean visible)`
    `void` | `visitProvide(String provide, String... providers)`
    `void` | `visitRequire(String require, int access, String version)`
    `void` | `visitSource(String file, String debug)`
    `void` | `visitTableSwitchInsn(int min, int max, org.objectweb.asm.Label dflt, org.objectweb.asm.Label... labels)`
    `org.objectweb.asm.util.Printer` | `visitTryCatchAnnotation(int typeRef, org.objectweb.asm.TypePath typePath, String desc, boolean visible)`
    `void` | `visitTryCatchBlock(org.objectweb.asm.Label start, org.objectweb.asm.Label end, org.objectweb.asm.Label handler, String type)`
    `org.objectweb.asm.util.Textifier` | `visitTypeAnnotation(int typeRef, org.objectweb.asm.TypePath typePath, String desc, boolean visible)`
    `void` | `visitTypeInsn(int opcode, String type)`
    `void` | `visitUse(String use)`
    `void` | `visitVarInsn(int opcode, int var)`

    - ### Methods inherited from class org.objectweb.asm.util.Textifier

      `appendDescriptor, appendHandle, appendLabel, main, visitPermittedSubtypeExperimental, visitRecordComponentAnnotationExperimental, visitRecordComponentAttributeExperimental, visitRecordComponentEndExperimental, visitRecordComponentExperimental, visitRecordComponentTypeAnnotationExperimental`

    - ### Methods inherited from class org.objectweb.asm.util.Printer

      `appendString, getText, print`

    - ### Methods inherited from class java.lang.Object

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

- - ### Constructor Detail

    - #### LoggableTextifier

          public LoggableTextifier()

  - ### Method Detail

    - #### createTextifier

          protected org.objectweb.asm.util.Textifier createTextifier()

      Overrides:
        `createTextifier` in class `org.objectweb.asm.util.Textifier`

    - #### log

          protected void log()

    - #### visit

          public void visit(int version,
                            int access,
                            String name,
                            String signature,
                            String superName,
                            String[] interfaces)

      Overrides:
        `visit` in class `org.objectweb.asm.util.Textifier`

    - #### visitSource

          public void visitSource(String file,
                                  String debug)

      Overrides:
        `visitSource` in class `org.objectweb.asm.util.Textifier`

    - #### visitModule

          public org.objectweb.asm.util.Printer visitModule(String name,
                                                            int access,
                                                            String version)

      Overrides:
        `visitModule` in class `org.objectweb.asm.util.Textifier`

    - #### visitOuterClass

          public void visitOuterClass(String owner,
                                      String name,
                                      String desc)

      Overrides:
        `visitOuterClass` in class `org.objectweb.asm.util.Textifier`

    - #### visitClassAnnotation

          public org.objectweb.asm.util.Textifier visitClassAnnotation(String desc,
                                                                       boolean visible)

      Overrides:
        `visitClassAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitClassTypeAnnotation

          public org.objectweb.asm.util.Printer visitClassTypeAnnotation(int typeRef,
                                                                         org.objectweb.asm.TypePath typePath,
                                                                         String desc,
                                                                         boolean visible)

      Overrides:
        `visitClassTypeAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitClassAttribute

          public void visitClassAttribute(org.objectweb.asm.Attribute attr)

      Overrides:
        `visitClassAttribute` in class `org.objectweb.asm.util.Textifier`

    - #### visitInnerClass

          public void visitInnerClass(String name,
                                      String outerName,
                                      String innerName,
                                      int access)

      Overrides:
        `visitInnerClass` in class `org.objectweb.asm.util.Textifier`

    - #### visitField

          public org.objectweb.asm.util.Textifier visitField(int access,
                                                             String name,
                                                             String desc,
                                                             String signature,
                                                             Object value)

      Overrides:
        `visitField` in class `org.objectweb.asm.util.Textifier`

    - #### visitMethod

          public org.objectweb.asm.util.Textifier visitMethod(int access,
                                                              String name,
                                                              String desc,
                                                              String signature,
                                                              String[] exceptions)

      Overrides:
        `visitMethod` in class `org.objectweb.asm.util.Textifier`

    - #### visitClassEnd

          public void visitClassEnd()

      Overrides:
        `visitClassEnd` in class `org.objectweb.asm.util.Textifier`

    - #### visitRequire

          public void visitRequire(String require,
                                   int access,
                                   String version)

      Overrides:
        `visitRequire` in class `org.objectweb.asm.util.Textifier`

    - #### visitExport

          public void visitExport(String export,
                                  int access,
                                  String... modules)

      Overrides:
        `visitExport` in class `org.objectweb.asm.util.Textifier`

    - #### visitUse

          public void visitUse(String use)

      Overrides:
        `visitUse` in class `org.objectweb.asm.util.Textifier`

    - #### visitProvide

          public void visitProvide(String provide,
                                   String... providers)

      Overrides:
        `visitProvide` in class `org.objectweb.asm.util.Textifier`

    - #### visitModuleEnd

          public void visitModuleEnd()

      Overrides:
        `visitModuleEnd` in class `org.objectweb.asm.util.Textifier`

    - #### visit

          public void visit(String name,
                            Object value)

      Overrides:
        `visit` in class `org.objectweb.asm.util.Textifier`

    - #### visitEnum

          public void visitEnum(String name,
                                String desc,
                                String value)

      Overrides:
        `visitEnum` in class `org.objectweb.asm.util.Textifier`

    - #### visitAnnotation

          public org.objectweb.asm.util.Textifier visitAnnotation(String name,
                                                                  String desc)

      Overrides:
        `visitAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitArray

          public org.objectweb.asm.util.Textifier visitArray(String name)

      Overrides:
        `visitArray` in class `org.objectweb.asm.util.Textifier`

    - #### visitAnnotationEnd

          public void visitAnnotationEnd()

      Overrides:
        `visitAnnotationEnd` in class `org.objectweb.asm.util.Textifier`

    - #### visitFieldAnnotation

          public org.objectweb.asm.util.Textifier visitFieldAnnotation(String desc,
                                                                       boolean visible)

      Overrides:
        `visitFieldAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitFieldTypeAnnotation

          public org.objectweb.asm.util.Printer visitFieldTypeAnnotation(int typeRef,
                                                                         org.objectweb.asm.TypePath typePath,
                                                                         String desc,
                                                                         boolean visible)

      Overrides:
        `visitFieldTypeAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitFieldAttribute

          public void visitFieldAttribute(org.objectweb.asm.Attribute attr)

      Overrides:
        `visitFieldAttribute` in class `org.objectweb.asm.util.Textifier`

    - #### visitFieldEnd

          public void visitFieldEnd()

      Overrides:
        `visitFieldEnd` in class `org.objectweb.asm.util.Textifier`

    - #### visitParameter

          public void visitParameter(String name,
                                     int access)

      Overrides:
        `visitParameter` in class `org.objectweb.asm.util.Textifier`

    - #### visitAnnotationDefault

          public org.objectweb.asm.util.Textifier visitAnnotationDefault()

      Overrides:
        `visitAnnotationDefault` in class `org.objectweb.asm.util.Textifier`

    - #### visitMethodAnnotation

          public org.objectweb.asm.util.Textifier visitMethodAnnotation(String desc,
                                                                        boolean visible)

      Overrides:
        `visitMethodAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitMethodTypeAnnotation

          public org.objectweb.asm.util.Printer visitMethodTypeAnnotation(int typeRef,
                                                                          org.objectweb.asm.TypePath typePath,
                                                                          String desc,
                                                                          boolean visible)

      Overrides:
        `visitMethodTypeAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitParameterAnnotation

          public org.objectweb.asm.util.Textifier visitParameterAnnotation(int parameter,
                                                                           String desc,
                                                                           boolean visible)

      Overrides:
        `visitParameterAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitMethodAttribute

          public void visitMethodAttribute(org.objectweb.asm.Attribute attr)

      Overrides:
        `visitMethodAttribute` in class `org.objectweb.asm.util.Textifier`

    - #### visitCode

          public void visitCode()

      Overrides:
        `visitCode` in class `org.objectweb.asm.util.Textifier`

    - #### visitFrame

          public void visitFrame(int type,
                                 int nLocal,
                                 Object[] local,
                                 int nStack,
                                 Object[] stack)

      Overrides:
        `visitFrame` in class `org.objectweb.asm.util.Textifier`

    - #### visitInsn

          public void visitInsn(int opcode)

      Overrides:
        `visitInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitIntInsn

          public void visitIntInsn(int opcode,
                                   int operand)

      Overrides:
        `visitIntInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitVarInsn

          public void visitVarInsn(int opcode,
                                   int var)

      Overrides:
        `visitVarInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitTypeInsn

          public void visitTypeInsn(int opcode,
                                    String type)

      Overrides:
        `visitTypeInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitFieldInsn

          public void visitFieldInsn(int opcode,
                                     String owner,
                                     String name,
                                     String desc)

      Overrides:
        `visitFieldInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitMethodInsn

          public void visitMethodInsn(int opcode,
                                      String owner,
                                      String name,
                                      String desc)

      Overrides:
        `visitMethodInsn` in class `org.objectweb.asm.util.Printer`

    - #### visitMethodInsn

          public void visitMethodInsn(int opcode,
                                      String owner,
                                      String name,
                                      String desc,
                                      boolean itf)

      Overrides:
        `visitMethodInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitInvokeDynamicInsn

          public void visitInvokeDynamicInsn(String name,
                                             String desc,
                                             org.objectweb.asm.Handle bsm,
                                             Object... bsmArgs)

      Overrides:
        `visitInvokeDynamicInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitJumpInsn

          public void visitJumpInsn(int opcode,
                                    org.objectweb.asm.Label label)

      Overrides:
        `visitJumpInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitLabel

          public void visitLabel(org.objectweb.asm.Label label)

      Overrides:
        `visitLabel` in class `org.objectweb.asm.util.Textifier`

    - #### visitLdcInsn

          public void visitLdcInsn(Object cst)

      Overrides:
        `visitLdcInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitIincInsn

          public void visitIincInsn(int var,
                                    int increment)

      Overrides:
        `visitIincInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitTableSwitchInsn

          public void visitTableSwitchInsn(int min,
                                           int max,
                                           org.objectweb.asm.Label dflt,
                                           org.objectweb.asm.Label... labels)

      Overrides:
        `visitTableSwitchInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitLookupSwitchInsn

          public void visitLookupSwitchInsn(org.objectweb.asm.Label dflt,
                                            int[] keys,
                                            org.objectweb.asm.Label[] labels)

      Overrides:
        `visitLookupSwitchInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitMultiANewArrayInsn

          public void visitMultiANewArrayInsn(String desc,
                                              int dims)

      Overrides:
        `visitMultiANewArrayInsn` in class `org.objectweb.asm.util.Textifier`

    - #### visitInsnAnnotation

          public org.objectweb.asm.util.Printer visitInsnAnnotation(int typeRef,
                                                                    org.objectweb.asm.TypePath typePath,
                                                                    String desc,
                                                                    boolean visible)

      Overrides:
        `visitInsnAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitTryCatchBlock

          public void visitTryCatchBlock(org.objectweb.asm.Label start,
                                         org.objectweb.asm.Label end,
                                         org.objectweb.asm.Label handler,
                                         String type)

      Overrides:
        `visitTryCatchBlock` in class `org.objectweb.asm.util.Textifier`

    - #### visitTryCatchAnnotation

          public org.objectweb.asm.util.Printer visitTryCatchAnnotation(int typeRef,
                                                                        org.objectweb.asm.TypePath typePath,
                                                                        String desc,
                                                                        boolean visible)

      Overrides:
        `visitTryCatchAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitLocalVariable

          public void visitLocalVariable(String name,
                                         String desc,
                                         String signature,
                                         org.objectweb.asm.Label start,
                                         org.objectweb.asm.Label end,
                                         int index)

      Overrides:
        `visitLocalVariable` in class `org.objectweb.asm.util.Textifier`

    - #### visitLocalVariableAnnotation

          public org.objectweb.asm.util.Printer visitLocalVariableAnnotation(int typeRef,
                                                                             org.objectweb.asm.TypePath typePath,
                                                                             org.objectweb.asm.Label[] start,
                                                                             org.objectweb.asm.Label[] end,
                                                                             int[] index,
                                                                             String desc,
                                                                             boolean visible)

      Overrides:
        `visitLocalVariableAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitLineNumber

          public void visitLineNumber(int line,
                                      org.objectweb.asm.Label start)

      Overrides:
        `visitLineNumber` in class `org.objectweb.asm.util.Textifier`

    - #### visitMaxs

          public void visitMaxs(int maxStack,
                                int maxLocals)

      Overrides:
        `visitMaxs` in class `org.objectweb.asm.util.Textifier`

    - #### visitMethodEnd

          public void visitMethodEnd()

      Overrides:
        `visitMethodEnd` in class `org.objectweb.asm.util.Textifier`

    - #### visitAnnotation

          public org.objectweb.asm.util.Textifier visitAnnotation(String desc,
                                                                  boolean visible)

      Overrides:
        `visitAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitTypeAnnotation

          public org.objectweb.asm.util.Textifier visitTypeAnnotation(int typeRef,
                                                                      org.objectweb.asm.TypePath typePath,
                                                                      String desc,
                                                                      boolean visible)

      Overrides:
        `visitTypeAnnotation` in class `org.objectweb.asm.util.Textifier`

    - #### visitAttribute

          public void visitAttribute(org.objectweb.asm.Attribute attr)

      Overrides:
        `visitAttribute` in class `org.objectweb.asm.util.Textifier`

    - #### visitNestHost

          public void visitNestHost(String nestHost)

      Overrides:
        `visitNestHost` in class `org.objectweb.asm.util.Textifier`

    - #### visitNestMember

          public void visitNestMember(String nestMember)

      Overrides:
        `visitNestMember` in class `org.objectweb.asm.util.Textifier`

    - #### visitMainClass

          public void visitMainClass(String mainClass)

      Overrides:
        `visitMainClass` in class `org.objectweb.asm.util.Textifier`

    - #### visitPackage

          public void visitPackage(String packaze)

      Overrides:
        `visitPackage` in class `org.objectweb.asm.util.Textifier`

    - #### visitOpen

          public void visitOpen(String packaze,
                                int access,
                                String... modules)

      Overrides:
        `visitOpen` in class `org.objectweb.asm.util.Textifier`

    - #### visitAnnotableParameterCount

          public org.objectweb.asm.util.Textifier visitAnnotableParameterCount(int parameterCount,
                                                                               boolean visible)

      Overrides:
        `visitAnnotableParameterCount` in class `org.objectweb.asm.util.Textifier`