public class io.vertx.lang.js.JSDocGenerator implements io.vertx.docgen.DocGenerator
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.lang.js.JSDocGenerator
  super_class: java.lang.Object
{
  private io.vertx.codegen.type.TypeMirrorFactory factory;
    descriptor: Lio/vertx/codegen/type/TypeMirrorFactory;
    flags: (0x0002) ACC_PRIVATE

  private io.vertx.codetrans.CodeTranslator translator;
    descriptor: Lio/vertx/codetrans/CodeTranslator;
    flags: (0x0002) ACC_PRIVATE

  private javax.annotation.processing.ProcessingEnvironment env;
    descriptor: Ljavax/annotation/processing/ProcessingEnvironment;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.lang.js.JSDocGenerator this
         0: .line 24
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // io.vertx.lang.js.JSDocGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/lang/js/JSDocGenerator;

  public void init(javax.annotation.processing.ProcessingEnvironment);
    descriptor: (Ljavax/annotation/processing/ProcessingEnvironment;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // io.vertx.lang.js.JSDocGenerator this
        start local 1 // javax.annotation.processing.ProcessingEnvironment processingEnv
         0: .line 32
            aload 0 /* this */
            new io.vertx.codegen.type.TypeMirrorFactory
            dup
            aload 1 /* processingEnv */
            invokeinterface javax.annotation.processing.ProcessingEnvironment.getElementUtils:()Ljavax/lang/model/util/Elements;
            aload 1 /* processingEnv */
            invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
            invokespecial io.vertx.codegen.type.TypeMirrorFactory.<init>:(Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;)V
            putfield io.vertx.lang.js.JSDocGenerator.factory:Lio/vertx/codegen/type/TypeMirrorFactory;
         1: .line 33
            aload 0 /* this */
            new io.vertx.codetrans.CodeTranslator
            dup
            aload 1 /* processingEnv */
            invokespecial io.vertx.codetrans.CodeTranslator.<init>:(Ljavax/annotation/processing/ProcessingEnvironment;)V
            putfield io.vertx.lang.js.JSDocGenerator.translator:Lio/vertx/codetrans/CodeTranslator;
         2: .line 34
            aload 0 /* this */
            aload 1 /* processingEnv */
            putfield io.vertx.lang.js.JSDocGenerator.env:Ljavax/annotation/processing/ProcessingEnvironment;
         3: .line 35
            return
        end local 1 // javax.annotation.processing.ProcessingEnvironment processingEnv
        end local 0 // io.vertx.lang.js.JSDocGenerator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lio/vertx/lang/js/JSDocGenerator;
            0    4     1  processingEnv  Ljavax/annotation/processing/ProcessingEnvironment;
    MethodParameters:
               Name  Flags
      processingEnv  

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.lang.js.JSDocGenerator this
         0: .line 39
            ldc "js"
            areturn
        end local 0 // io.vertx.lang.js.JSDocGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/lang/js/JSDocGenerator;

  public java.lang.String renderSource(javax.lang.model.element.ExecutableElement, java.lang.String);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // io.vertx.lang.js.JSDocGenerator this
        start local 1 // javax.lang.model.element.ExecutableElement elt
        start local 2 // java.lang.String source
         0: .line 44
            new io.vertx.codetrans.lang.js.JavaScriptLang
            dup
            invokespecial io.vertx.codetrans.lang.js.JavaScriptLang.<init>:()V
            astore 3 /* lang */
        start local 3 // io.vertx.codetrans.lang.js.JavaScriptLang lang
         1: .line 46
            aload 0 /* this */
            getfield io.vertx.lang.js.JSDocGenerator.translator:Lio/vertx/codetrans/CodeTranslator;
            aload 1 /* elt */
            aload 3 /* lang */
            invokevirtual io.vertx.codetrans.CodeTranslator.translate:(Ljavax/lang/model/element/ExecutableElement;Lio/vertx/codetrans/Lang;)Ljava/lang/String;
         2: areturn
         3: .line 47
      StackMap locals: io.vertx.lang.js.JSDocGenerator javax.lang.model.element.ExecutableElement java.lang.String io.vertx.codetrans.lang.js.JavaScriptLang
      StackMap stack: java.lang.Exception
            astore 4 /* e */
        start local 4 // java.lang.Exception e
         4: .line 48
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Cannot generate "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
            invokeinterface javax.lang.model.element.Element.getSimpleName:()Ljavax/lang/model/element/Name;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "#"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " : "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         5: .line 49
            ldc "Code not translatable"
            areturn
        end local 4 // java.lang.Exception e
        end local 3 // io.vertx.codetrans.lang.js.JavaScriptLang lang
        end local 2 // java.lang.String source
        end local 1 // javax.lang.model.element.ExecutableElement elt
        end local 0 // io.vertx.lang.js.JSDocGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lio/vertx/lang/js/JSDocGenerator;
            0    6     1     elt  Ljavax/lang/model/element/ExecutableElement;
            0    6     2  source  Ljava/lang/String;
            1    6     3    lang  Lio/vertx/codetrans/lang/js/JavaScriptLang;
            4    6     4       e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception
    MethodParameters:
        Name  Flags
      elt     
      source  

  public java.lang.String resolveTypeLink(javax.lang.model.element.TypeElement, io.vertx.docgen.Coordinate);
    descriptor: (Ljavax/lang/model/element/TypeElement;Lio/vertx/docgen/Coordinate;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // io.vertx.lang.js.JSDocGenerator this
        start local 1 // javax.lang.model.element.TypeElement elt
        start local 2 // io.vertx.docgen.Coordinate coordinate
         0: .line 57
            aload 0 /* this */
            getfield io.vertx.lang.js.JSDocGenerator.factory:Lio/vertx/codegen/type/TypeMirrorFactory;
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
            invokevirtual io.vertx.codegen.type.TypeMirrorFactory.create:(Ljavax/lang/model/type/TypeMirror;)Lio/vertx/codegen/type/TypeInfo;
            astore 3 /* type */
        start local 3 // io.vertx.codegen.type.TypeInfo type
         1: .line 58
            goto 5
        end local 3 // io.vertx.codegen.type.TypeInfo type
      StackMap locals:
      StackMap stack: java.lang.Exception
         2: pop
         3: .line 59
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Could not resolve doc link for type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 60
            aconst_null
            areturn
        start local 3 // io.vertx.codegen.type.TypeInfo type
         5: .line 62
      StackMap locals: io.vertx.codegen.type.TypeInfo
      StackMap stack:
            aload 3 /* type */
            invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
            getstatic io.vertx.codegen.type.ClassKind.ENUM:Lio/vertx/codegen/type/ClassKind;
            if_acmpne 11
            aload 3 /* type */
            checkcast io.vertx.codegen.type.EnumTypeInfo
            invokevirtual io.vertx.codegen.type.EnumTypeInfo.isGen:()Z
            ifeq 11
         6: .line 64
            aload 2 /* coordinate */
            ifnonnull 9
         7: .line 65
            ldc "../"
            astore 4 /* baselink */
        start local 4 // java.lang.String baselink
         8: .line 66
            goto 10
        end local 4 // java.lang.String baselink
         9: .line 67
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "../../"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* coordinate */
            invokevirtual io.vertx.docgen.Coordinate.getArtifactId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* baselink */
        start local 4 // java.lang.String baselink
        10: .line 69
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 4 /* baselink */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "enums.html#"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.TypeElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.String baselink
        11: .line 71
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
            getstatic io.vertx.codegen.type.ClassKind.DATA_OBJECT:Lio/vertx/codegen/type/ClassKind;
            if_acmpne 17
        12: .line 73
            aload 2 /* coordinate */
            ifnonnull 15
        13: .line 74
            ldc "../"
            astore 4 /* baselink */
        start local 4 // java.lang.String baselink
        14: .line 75
            goto 16
        end local 4 // java.lang.String baselink
        15: .line 76
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "../../"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* coordinate */
            invokevirtual io.vertx.docgen.Coordinate.getArtifactId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* baselink */
        start local 4 // java.lang.String baselink
        16: .line 78
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 4 /* baselink */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "dataobjects.html#"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.TypeElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.String baselink
        17: .line 80
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
            getstatic io.vertx.codegen.type.ClassKind.API:Lio/vertx/codegen/type/ClassKind;
            if_acmpne 20
        18: .line 81
            aload 3 /* type */
            invokevirtual io.vertx.codegen.type.TypeInfo.getRaw:()Lio/vertx/codegen/type/ClassTypeInfo;
            astore 4 /* ct */
        start local 4 // io.vertx.codegen.type.ClassTypeInfo ct
        19: .line 83
            new java.lang.StringBuilder
            dup
            ldc "../../jsdoc/module-"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* ct */
            invokevirtual io.vertx.codegen.type.ClassTypeInfo.getModule:()Lio/vertx/codegen/ModuleInfo;
            getstatic io.vertx.codegen.Case.KEBAB:Lio/vertx/codegen/Case;
            invokevirtual io.vertx.codegen.ModuleInfo.getName:(Lio/vertx/codegen/Case;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "-js_"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            getstatic io.vertx.codegen.Case.SNAKE:Lio/vertx/codegen/Case;
            getstatic io.vertx.codegen.Case.CAMEL:Lio/vertx/codegen/Case;
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.TypeElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            invokevirtual io.vertx.codegen.Case.parse:(Ljava/lang/String;)Ljava/util/List;
            invokevirtual io.vertx.codegen.Case.format:(Ljava/lang/Iterable;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.TypeElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ".html"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // io.vertx.codegen.type.ClassTypeInfo ct
        20: .line 85
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // io.vertx.codegen.type.TypeInfo type
        end local 2 // io.vertx.docgen.Coordinate coordinate
        end local 1 // javax.lang.model.element.TypeElement elt
        end local 0 // io.vertx.lang.js.JSDocGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Lio/vertx/lang/js/JSDocGenerator;
            0   21     1         elt  Ljavax/lang/model/element/TypeElement;
            0   21     2  coordinate  Lio/vertx/docgen/Coordinate;
            1    2     3        type  Lio/vertx/codegen/type/TypeInfo;
            5   21     3        type  Lio/vertx/codegen/type/TypeInfo;
            8    9     4    baselink  Ljava/lang/String;
           10   11     4    baselink  Ljava/lang/String;
           14   15     4    baselink  Ljava/lang/String;
           16   17     4    baselink  Ljava/lang/String;
           19   20     4          ct  Lio/vertx/codegen/type/ClassTypeInfo;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception
    MethodParameters:
            Name  Flags
      elt         
      coordinate  

  public java.lang.String resolveMethodLink(javax.lang.model.element.ExecutableElement, io.vertx.docgen.Coordinate);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;Lio/vertx/docgen/Coordinate;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // io.vertx.lang.js.JSDocGenerator this
        start local 1 // javax.lang.model.element.ExecutableElement elt
        start local 2 // io.vertx.docgen.Coordinate coordinate
         0: .line 90
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
            checkcast javax.lang.model.element.TypeElement
            astore 3 /* typeElt */
        start local 3 // javax.lang.model.element.TypeElement typeElt
         1: .line 91
            aload 0 /* this */
            aload 3 /* typeElt */
            aload 2 /* coordinate */
            invokevirtual io.vertx.lang.js.JSDocGenerator.resolveTypeLink:(Ljavax/lang/model/element/TypeElement;Lio/vertx/docgen/Coordinate;)Ljava/lang/String;
            astore 4 /* link */
        start local 4 // java.lang.String link
         2: .line 92
            aload 4 /* link */
            ifnull 7
         3: .line 93
            aload 4 /* link */
            ldc "cheatsheet"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 6
         4: .line 94
            new java.lang.StringBuilder
            dup
            aload 4 /* link */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 35
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            iconst_3
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic java.beans.Introspector.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* link */
         5: .line 95
            goto 7
         6: .line 96
      StackMap locals: javax.lang.model.element.TypeElement java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 4 /* link */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 35
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* link */
         7: .line 99
      StackMap locals:
      StackMap stack:
            aload 4 /* link */
            areturn
        end local 4 // java.lang.String link
        end local 3 // javax.lang.model.element.TypeElement typeElt
        end local 2 // io.vertx.docgen.Coordinate coordinate
        end local 1 // javax.lang.model.element.ExecutableElement elt
        end local 0 // io.vertx.lang.js.JSDocGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lio/vertx/lang/js/JSDocGenerator;
            0    8     1         elt  Ljavax/lang/model/element/ExecutableElement;
            0    8     2  coordinate  Lio/vertx/docgen/Coordinate;
            1    8     3     typeElt  Ljavax/lang/model/element/TypeElement;
            2    8     4        link  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      elt         
      coordinate  

  public java.lang.String resolveLabel(javax.lang.model.element.Element, java.lang.String);
    descriptor: (Ljavax/lang/model/element/Element;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // io.vertx.lang.js.JSDocGenerator this
        start local 1 // javax.lang.model.element.Element elt
        start local 2 // java.lang.String defaultLabel
         0: .line 104
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
            getstatic javax.lang.model.element.ElementKind.METHOD:Ljavax/lang/model/element/ElementKind;
            if_acmpne 7
         1: .line 105
            aload 0 /* this */
            getfield io.vertx.lang.js.JSDocGenerator.factory:Lio/vertx/codegen/type/TypeMirrorFactory;
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.Element.getEnclosingElement:()Ljavax/lang/model/element/Element;
            invokeinterface javax.lang.model.element.Element.asType:()Ljavax/lang/model/type/TypeMirror;
            invokevirtual io.vertx.codegen.type.TypeMirrorFactory.create:(Ljavax/lang/model/type/TypeMirror;)Lio/vertx/codegen/type/TypeInfo;
            astore 3 /* type */
        start local 3 // io.vertx.codegen.type.TypeInfo type
         2: .line 106
            aload 3 /* type */
            invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
            getstatic io.vertx.codegen.type.ClassKind.DATA_OBJECT:Lio/vertx/codegen/type/ClassKind;
            if_acmpne 7
         3: .line 107
            aload 1 /* elt */
            invokeinterface javax.lang.model.element.Element.getSimpleName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
         4: .line 108
            aload 4 /* name */
            ldc "set"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 6
            aload 4 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_3
            if_icmple 6
            aload 4 /* name */
            iconst_3
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isUpperCase:(C)Z
            ifeq 6
         5: .line 109
            aload 4 /* name */
            iconst_3
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic java.beans.Introspector.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* name */
         6: .line 111
      StackMap locals: io.vertx.codegen.type.TypeInfo java.lang.String
      StackMap stack:
            aload 4 /* name */
            areturn
        end local 4 // java.lang.String name
        end local 3 // io.vertx.codegen.type.TypeInfo type
         7: .line 114
      StackMap locals:
      StackMap stack:
            aload 2 /* defaultLabel */
            areturn
        end local 2 // java.lang.String defaultLabel
        end local 1 // javax.lang.model.element.Element elt
        end local 0 // io.vertx.lang.js.JSDocGenerator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lio/vertx/lang/js/JSDocGenerator;
            0    8     1           elt  Ljavax/lang/model/element/Element;
            0    8     2  defaultLabel  Ljava/lang/String;
            2    7     3          type  Lio/vertx/codegen/type/TypeInfo;
            4    7     4          name  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      elt           
      defaultLabel  

  public java.lang.String resolveConstructorLink(javax.lang.model.element.ExecutableElement, io.vertx.docgen.Coordinate);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;Lio/vertx/docgen/Coordinate;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // io.vertx.lang.js.JSDocGenerator this
        start local 1 // javax.lang.model.element.ExecutableElement elt
        start local 2 // io.vertx.docgen.Coordinate coordinate
         0: .line 119
            ldc "todo"
            areturn
        end local 2 // io.vertx.docgen.Coordinate coordinate
        end local 1 // javax.lang.model.element.ExecutableElement elt
        end local 0 // io.vertx.lang.js.JSDocGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lio/vertx/lang/js/JSDocGenerator;
            0    1     1         elt  Ljavax/lang/model/element/ExecutableElement;
            0    1     2  coordinate  Lio/vertx/docgen/Coordinate;
    MethodParameters:
            Name  Flags
      elt         
      coordinate  

  public java.lang.String resolveFieldLink(javax.lang.model.element.VariableElement, io.vertx.docgen.Coordinate);
    descriptor: (Ljavax/lang/model/element/VariableElement;Lio/vertx/docgen/Coordinate;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // io.vertx.lang.js.JSDocGenerator this
        start local 1 // javax.lang.model.element.VariableElement elt
        start local 2 // io.vertx.docgen.Coordinate coordinate
         0: .line 124
            ldc "todo"
            areturn
        end local 2 // io.vertx.docgen.Coordinate coordinate
        end local 1 // javax.lang.model.element.VariableElement elt
        end local 0 // io.vertx.lang.js.JSDocGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lio/vertx/lang/js/JSDocGenerator;
            0    1     1         elt  Ljavax/lang/model/element/VariableElement;
            0    1     2  coordinate  Lio/vertx/docgen/Coordinate;
    MethodParameters:
            Name  Flags
      elt         
      coordinate  
}
SourceFile: "JSDocGenerator.java"