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()`
  Creates a textifier that uses the default compiler configuration for stack-trace enrichment.
  `LoggableTextifier(CompilerConfiguration compilerConfiguration)`
  Creates a textifier that logs emitted bytecode using the supplied compiler configuration.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected org.objectweb.asm.util.Textifier`
  `createTextifier()`
  `protected void`
  `log()`
  Logs any newly collected bytecode text since the previous visitor callback.
  `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 varIndex, 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)`
  Deprecated.
  `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`
  `visitPermittedSubclass(String permittedSubclass)`
  `void`
  `visitProvide(String provide, String... providers)`
  `org.objectweb.asm.util.Printer`
  `visitRecordComponent(String name, String descriptor, String signature)`
  `org.objectweb.asm.util.Textifier`
  `visitRecordComponentAnnotation(String descriptor, boolean visible)`
  `void`
  `visitRecordComponentAttribute(org.objectweb.asm.Attribute attribute)`
  `void`
  `visitRecordComponentEnd()`
  `org.objectweb.asm.util.Printer`
  `visitRecordComponentTypeAnnotation(int typeRef, org.objectweb.asm.TypePath typePath, String descriptor, boolean visible)`
  `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 varIndex)`

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

  `appendDescriptor, appendHandle, appendHandle, appendLabel, main`

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

  - ### LoggableTextifier

    public LoggableTextifier()
    Creates a textifier that uses the default compiler configuration for stack-trace enrichment.

  - ### LoggableTextifier

    public LoggableTextifier(CompilerConfiguration compilerConfiguration)
    Creates a textifier that logs emitted bytecode using the supplied compiler configuration.

- ## Method Details

  - ### createTextifier

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

  - ### log

    protected void log()
    Logs any newly collected bytecode text since the previous visitor callback.

  - ### 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 varIndex)
    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

    @Deprecated public void visitMethodInsn(int opcode, String owner, String name, String desc)
    Deprecated.
    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 varIndex, 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`

  - ### visitRecordComponent

    public org.objectweb.asm.util.Printer visitRecordComponent(String name, String descriptor, String signature)
    Overrides:
      `visitRecordComponent` in class `org.objectweb.asm.util.Textifier`

  - ### visitRecordComponentAnnotation

    public org.objectweb.asm.util.Textifier visitRecordComponentAnnotation(String descriptor, boolean visible)
    Overrides:
      `visitRecordComponentAnnotation` in class `org.objectweb.asm.util.Textifier`

  - ### visitRecordComponentTypeAnnotation

    public org.objectweb.asm.util.Printer visitRecordComponentTypeAnnotation(int typeRef, org.objectweb.asm.TypePath typePath, String descriptor, boolean visible)
    Overrides:
      `visitRecordComponentTypeAnnotation` in class `org.objectweb.asm.util.Textifier`

  - ### visitRecordComponentAttribute

    public void visitRecordComponentAttribute(org.objectweb.asm.Attribute attribute)
    Overrides:
      `visitRecordComponentAttribute` in class `org.objectweb.asm.util.Textifier`

  - ### visitRecordComponentEnd

    public void visitRecordComponentEnd()
    Overrides:
      `visitRecordComponentEnd` in class `org.objectweb.asm.util.Textifier`

  - ### visitPermittedSubclass

    public void visitPermittedSubclass(String permittedSubclass)
    Overrides:
      `visitPermittedSubclass` in class `org.objectweb.asm.util.Textifier`