Package 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 | Description
    --- | ---
    `LoggableTextifier()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | 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, visitRecordComponent, visitRecordComponentAnnotation, visitRecordComponentAttribute, visitRecordComponentEnd, visitRecordComponentTypeAnnotation`

    - ### 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`