public class io.vertx.codegen.Helper
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.codegen.Helper
  super_class: java.lang.Object
{
  public static final java.util.function.Function<javax.lang.model.element.Element, java.util.stream.Stream<javax.lang.model.element.ExecutableElement>> FILTER_METHOD;
    descriptor: Ljava/util/function/Function;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/Function<Ljavax/lang/model/element/Element;Ljava/util/stream/Stream<Ljavax/lang/model/element/ExecutableElement;>;>;

  public static final java.util.function.Function<javax.lang.model.element.Element, java.util.stream.Stream<javax.lang.model.element.VariableElement>> FILTER_FIELD;
    descriptor: Ljava/util/function/Function;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/Function<Ljavax/lang/model/element/Element;Ljava/util/stream/Stream<Ljavax/lang/model/element/VariableElement;>;>;

  static final java.util.function.Function<javax.lang.model.element.Element, java.util.stream.Stream<javax.lang.model.element.ExecutableElement>> CAST;
    descriptor: Ljava/util/function/Function;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/Function<Ljavax/lang/model/element/Element;Ljava/util/stream/Stream<Ljavax/lang/model/element/ExecutableElement;>;>;

  private static final java.util.regex.Pattern SIGNATURE_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final java.util.regex.Pattern LINK_REFERENCE_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern WHITESPACE_CLUSTER_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.Set<java.lang.String> dataObjectTypes;
    descriptor: Ljava/util/Set;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private static volatile int[] $SWITCH_TABLE$javax$lang$model$type$TypeKind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 46
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/codegen/Helper.lambda$1(Ljavax/lang/model/element/Element;)Ljava/util/stream/Stream; (6)
                  (Ljavax/lang/model/element/Element;)Ljava/util/stream/Stream;
            putstatic io.vertx.codegen.Helper.FILTER_METHOD:Ljava/util/function/Function;
         1: .line 54
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/codegen/Helper.lambda$0(Ljavax/lang/model/element/Element;)Ljava/util/stream/Stream; (6)
                  (Ljavax/lang/model/element/Element;)Ljava/util/stream/Stream;
            putstatic io.vertx.codegen.Helper.FILTER_FIELD:Ljava/util/function/Function;
         2: .line 76
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/codegen/Helper.lambda$2(Ljavax/lang/model/element/Element;)Ljava/util/stream/Stream; (6)
                  (Ljavax/lang/model/element/Element;)Ljava/util/stream/Stream;
            putstatic io.vertx.codegen.Helper.CAST:Ljava/util/function/Function;
         3: .line 336
            ldc "#(\\p{javaJavaIdentifierStart}(?:\\p{javaJavaIdentifierPart})*)(?:\\((.*)\\))?$"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic io.vertx.codegen.Helper.SIGNATURE_PATTERN:Ljava/util/regex/Pattern;
         4: .line 338
            new java.lang.StringBuilder
            dup
            ldc "(?:(?:\\p{javaJavaIdentifierStart}\\p{javaJavaIdentifierPart}*\\.)*\\p{javaJavaIdentifierStart}\\p{javaJavaIdentifierPart}*)?(?:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 339
            getstatic io.vertx.codegen.Helper.SIGNATURE_PATTERN:Ljava/util/regex/Pattern;
            invokevirtual java.util.regex.Pattern.pattern:()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;
         6: .line 338
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 337
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic io.vertx.codegen.Helper.LINK_REFERENCE_PATTERN:Ljava/util/regex/Pattern;
         8: .line 478
            ldc "\\s+"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic io.vertx.codegen.Helper.WHITESPACE_CLUSTER_PATTERN:Ljava/util/regex/Pattern;
         9: .line 707
            new java.util.HashSet
            dup
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "io.vertx.core.json.JsonObject"
            aastore
            dup
            iconst_1
            ldc "java.lang.String"
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            putstatic io.vertx.codegen.Helper.dataObjectTypes:Ljava/util/Set;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

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

  static <T> java.util.function.Function<java.lang.Object, java.util.stream.Stream<T>> instanceOf(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/util/function/Function;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Class type
         0: .line 63
            aload 0 /* type */
            invokedynamic apply(Ljava/lang/Class;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/codegen/Helper.lambda$3(Ljava/lang/Class;Ljava/lang/Object;)Ljava/util/stream/Stream; (6)
                  (Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/util/function/Function<Ljava/lang/Object;Ljava/util/stream/Stream<TT;>;>;
    MethodParameters:
      Name  Flags
      type  

  static <T> java.util.function.Function<java.lang.Object, java.util.stream.Stream<T>> cast(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/util/function/Function;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Class type
         0: .line 73
            aload 0 /* type */
            invokedynamic apply(Ljava/lang/Class;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/codegen/Helper.lambda$4(Ljava/lang/Class;Ljava/lang/Object;)Ljava/util/stream/Stream; (6)
                  (Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/util/function/Function<Ljava/lang/Object;Ljava/util/stream/Stream<TT;>;>;
    MethodParameters:
      Name  Flags
      type  

  public static java.lang.String normalizePropertyName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.lang.String propertyName
         0: .line 105
            aload 0 /* propertyName */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isUpperCase:(C)Z
            ifeq 7
         1: .line 106
            new java.lang.StringBuilder
            dup
            aload 0 /* propertyName */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* buffer */
        start local 1 // java.lang.StringBuilder buffer
         2: .line 107
            iconst_0
            istore 2 /* index */
        start local 2 // int index
         3: .line 109
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 1 /* buffer */
            iload 2 /* index */
            aload 1 /* buffer */
            iload 2 /* index */
            iinc 2 /* index */ 1
            invokevirtual java.lang.StringBuilder.charAt:(I)C
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokevirtual java.lang.StringBuilder.setCharAt:(IC)V
         4: .line 110
            iload 2 /* index */
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuilder.length:()I
            if_icmpge 6
            aload 1 /* buffer */
            iload 2 /* index */
            invokevirtual java.lang.StringBuilder.charAt:(I)C
            invokestatic java.lang.Character.isUpperCase:(C)Z
            ifeq 6
         5: .line 111
            iload 2 /* index */
            iconst_1
            iadd
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuilder.length:()I
            if_icmpge 3
            aload 1 /* buffer */
            iload 2 /* index */
            iconst_1
            iadd
            invokevirtual java.lang.StringBuilder.charAt:(I)C
            invokestatic java.lang.Character.isLowerCase:(C)Z
            ifeq 3
         6: .line 118
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 0 /* propertyName */
        end local 2 // int index
        end local 1 // java.lang.StringBuilder buffer
         7: .line 120
      StackMap locals:
      StackMap stack:
            aload 0 /* propertyName */
            areturn
        end local 0 // java.lang.String propertyName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0  propertyName  Ljava/lang/String;
            2    7     1        buffer  Ljava/lang/StringBuilder;
            3    7     2         index  I
    MethodParameters:
              Name  Flags
      propertyName  

  public static java.lang.String decapitaliseFirstLetter(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.lang.String str
         0: .line 124
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            ifne 2
         1: .line 125
            aload 0 /* str */
            areturn
         2: .line 127
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* str */
            iconst_0
            iconst_1
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* str */
            iconst_1
            invokevirtual java.lang.String.substring:(I)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 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  public static java.lang.String convertCamelCaseToUnderscores(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String str
         0: .line 132
            aload 0 /* str */
            ldc "([A-Z]+)([A-Z][a-z])"
            ldc "$1_$2"
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            ldc "([a-z\\d])([A-Z])"
            ldc "$1_$2"
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  public static java.lang.String getSimpleName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String type
         0: .line 136
            aload 0 /* type */
            aload 0 /* type */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      type  

  public static java.lang.String getPackageName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String type
         0: .line 140
            aload 0 /* type */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 1 /* index */
        start local 1 // int index
         1: .line 141
            iload 1 /* index */
            iflt 3
         2: .line 142
            aload 0 /* type */
            iconst_0
            iload 1 /* index */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
         3: .line 144
      StackMap locals: int
      StackMap stack:
            ldc ""
            areturn
        end local 1 // int index
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   type  Ljava/lang/String;
            1    4     1  index  I
    MethodParameters:
      Name  Flags
      type  

  public static java.lang.String getNonGenericType(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.String type
         0: .line 149
            aload 0 /* type */
            ldc "<"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 1 /* pos */
        start local 1 // int pos
         1: .line 150
            iload 1 /* pos */
            iflt 4
         2: .line 151
            aload 0 /* type */
            iconst_0
            iload 1 /* pos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* nonGenericType */
        start local 2 // java.lang.String nonGenericType
         3: .line 152
            aload 2 /* nonGenericType */
            areturn
        end local 2 // java.lang.String nonGenericType
         4: .line 154
      StackMap locals: int
      StackMap stack:
            aload 0 /* type */
            areturn
        end local 1 // int pos
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            type  Ljava/lang/String;
            1    5     1             pos  I
            3    4     2  nonGenericType  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      type  

  public static java.lang.String indentString(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.lang.String str
        start local 1 // java.lang.String indent
         0: .line 159
            new java.lang.StringBuilder
            dup
            aload 1 /* indent */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         1: .line 160
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 8
         3: .line 161
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 0 /* str */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* ch */
        start local 4 // char ch
         4: .line 162
            aload 2 /* sb */
            iload 4 /* ch */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         5: .line 163
            iload 4 /* ch */
            bipush 10
            if_icmpne 7
            iload 3 /* i */
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            if_icmpeq 7
         6: .line 164
            aload 2 /* sb */
            aload 1 /* indent */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // char ch
         7: .line 160
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            if_icmplt 3
        end local 3 // int i
         9: .line 167
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder sb
        end local 1 // java.lang.String indent
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0     str  Ljava/lang/String;
            0   10     1  indent  Ljava/lang/String;
            1   10     2      sb  Ljava/lang/StringBuilder;
            2    9     3       i  I
            4    7     4      ch  C
    MethodParameters:
        Name  Flags
      str     
      indent  

  public static java.lang.String getJavadocTag(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.lang.String comment
        start local 1 // java.lang.String tagName
         0: .line 171
            aload 0 /* comment */
            aload 1 /* tagName */
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 2 /* pos */
        start local 2 // int pos
         1: .line 172
            aload 0 /* comment */
            ldc "\n"
            iload 2 /* pos */
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
            istore 3 /* endPos */
        start local 3 // int endPos
         2: .line 173
            aload 0 /* comment */
            iload 2 /* pos */
            aload 1 /* tagName */
            invokevirtual java.lang.String.length:()I
            iadd
            iconst_1
            iadd
            iload 3 /* endPos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* tag */
        start local 4 // java.lang.String tag
         3: .line 174
            aload 4 /* tag */
            areturn
        end local 4 // java.lang.String tag
        end local 3 // int endPos
        end local 2 // int pos
        end local 1 // java.lang.String tagName
        end local 0 // java.lang.String comment
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  comment  Ljava/lang/String;
            0    4     1  tagName  Ljava/lang/String;
            1    4     2      pos  I
            2    4     3   endPos  I
            3    4     4      tag  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      comment  
      tagName  

  public static java.lang.String removeTags(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.lang.String comment
         0: .line 180
            aload 0 /* comment */
            bipush 64
            invokevirtual java.lang.String.indexOf:(I)I
            istore 1 /* pos */
        start local 1 // int pos
         1: .line 181
            iload 1 /* pos */
            iconst_m1
            if_icmpne 3
         2: .line 182
            aload 0 /* comment */
            areturn
         3: .line 184
      StackMap locals: int
      StackMap stack:
            iload 1 /* pos */
            ifle 10
         4: .line 185
            aload 0 /* comment */
            iconst_0
            iload 1 /* pos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* beforePos */
        start local 2 // java.lang.String beforePos
         5: .line 186
            aload 2 /* beforePos */
            bipush 10
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 3 /* prevReturn */
        start local 3 // int prevReturn
         6: .line 187
            iload 3 /* prevReturn */
            iconst_m1
            if_icmpeq 9
         7: .line 188
            iload 3 /* prevReturn */
            istore 1 /* pos */
         8: .line 189
            goto 10
         9: .line 190
      StackMap locals: java.lang.String int
      StackMap stack:
            iconst_0
            istore 1 /* pos */
        end local 3 // int prevReturn
        end local 2 // java.lang.String beforePos
        10: .line 193
      StackMap locals:
      StackMap stack:
            aload 0 /* comment */
            iconst_0
            iload 1 /* pos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
        end local 1 // int pos
        end local 0 // java.lang.String comment
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0     comment  Ljava/lang/String;
            1   11     1         pos  I
            5   10     2   beforePos  Ljava/lang/String;
            6   10     3  prevReturn  I
    MethodParameters:
         Name  Flags
      comment  

  public static javax.lang.model.element.AnnotationMirror resolveMethodAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation>, javax.lang.model.util.Elements, javax.lang.model.util.Types, javax.lang.model.element.TypeElement, javax.lang.model.element.ExecutableElement);
    descriptor: (Ljava/lang/Class;Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;Ljavax/lang/model/element/ExecutableElement;)Ljavax/lang/model/element/AnnotationMirror;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // java.lang.Class annotationType
        start local 1 // javax.lang.model.util.Elements elementUtils
        start local 2 // javax.lang.model.util.Types typeUtils
        start local 3 // javax.lang.model.element.TypeElement declaring
        start local 4 // javax.lang.model.element.ExecutableElement method
         0: .line 211
            aload 1 /* elementUtils */
            aload 0 /* annotationType */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokeinterface javax.lang.model.util.Elements.getTypeElement:(Ljava/lang/CharSequence;)Ljavax/lang/model/element/TypeElement;
            invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
            checkcast javax.lang.model.type.DeclaredType
         1: .line 212
            aload 1 /* elementUtils */
            aload 2 /* typeUtils */
            aload 3 /* declaring */
            aload 4 /* method */
         2: .line 210
            invokestatic io.vertx.codegen.Helper.resolveMethodAnnotation:(Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;Ljavax/lang/model/element/ExecutableElement;)Ljavax/lang/model/element/AnnotationMirror;
            areturn
        end local 4 // javax.lang.model.element.ExecutableElement method
        end local 3 // javax.lang.model.element.TypeElement declaring
        end local 2 // javax.lang.model.util.Types typeUtils
        end local 1 // javax.lang.model.util.Elements elementUtils
        end local 0 // java.lang.Class annotationType
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0  annotationType  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
            0    3     1    elementUtils  Ljavax/lang/model/util/Elements;
            0    3     2       typeUtils  Ljavax/lang/model/util/Types;
            0    3     3       declaring  Ljavax/lang/model/element/TypeElement;
            0    3     4          method  Ljavax/lang/model/element/ExecutableElement;
    Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;Ljavax/lang/model/element/ExecutableElement;)Ljavax/lang/model/element/AnnotationMirror;
    MethodParameters:
                Name  Flags
      annotationType  
      elementUtils    
      typeUtils       
      declaring       
      method          

  public static javax.lang.model.element.AnnotationMirror resolveMethodAnnotation(javax.lang.model.type.DeclaredType, javax.lang.model.util.Elements, javax.lang.model.util.Types, javax.lang.model.element.TypeElement, javax.lang.model.element.ExecutableElement);
    descriptor: (Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;Ljavax/lang/model/element/ExecutableElement;)Ljavax/lang/model/element/AnnotationMirror;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // javax.lang.model.type.DeclaredType annotationType
        start local 1 // javax.lang.model.util.Elements elementUtils
        start local 2 // javax.lang.model.util.Types typeUtils
        start local 3 // javax.lang.model.element.TypeElement declaring
        start local 4 // javax.lang.model.element.ExecutableElement method
         0: .line 229
            aload 4 /* method */
            invokeinterface javax.lang.model.element.ExecutableElement.getAnnotationMirrors:()Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            aload 2 /* typeUtils */
            aload 0 /* annotationType */
            invokedynamic test(Ljavax/lang/model/util/Types;Ljavax/lang/model/type/DeclaredType;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$5(Ljavax/lang/model/util/Types;Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/element/AnnotationMirror;)Z (6)
                  (Ljavax/lang/model/element/AnnotationMirror;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.findFirst:()Ljava/util/Optional;
            astore 5 /* annotation */
        start local 5 // java.util.Optional annotation
         1: .line 230
            aload 5 /* annotation */
            invokevirtual java.util.Optional.isPresent:()Z
            ifeq 3
         2: .line 231
            aload 5 /* annotation */
            invokevirtual java.util.Optional.get:()Ljava/lang/Object;
            checkcast javax.lang.model.element.AnnotationMirror
            areturn
         3: .line 233
      StackMap locals: java.util.Optional
      StackMap stack:
            aload 0 /* annotationType */
            aload 1 /* elementUtils */
            aload 2 /* typeUtils */
            aload 3 /* declaring */
            aload 4 /* method */
            aload 4 /* method */
            invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
            invokeinterface javax.lang.model.element.Element.asType:()Ljavax/lang/model/type/TypeMirror;
            invokestatic io.vertx.codegen.Helper.isFluent:(Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;Ljavax/lang/model/element/ExecutableElement;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/AnnotationMirror;
            areturn
        end local 5 // java.util.Optional annotation
        end local 4 // javax.lang.model.element.ExecutableElement method
        end local 3 // javax.lang.model.element.TypeElement declaring
        end local 2 // javax.lang.model.util.Types typeUtils
        end local 1 // javax.lang.model.util.Elements elementUtils
        end local 0 // javax.lang.model.type.DeclaredType annotationType
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0  annotationType  Ljavax/lang/model/type/DeclaredType;
            0    4     1    elementUtils  Ljavax/lang/model/util/Elements;
            0    4     2       typeUtils  Ljavax/lang/model/util/Types;
            0    4     3       declaring  Ljavax/lang/model/element/TypeElement;
            0    4     4          method  Ljavax/lang/model/element/ExecutableElement;
            1    4     5      annotation  Ljava/util/Optional<+Ljavax/lang/model/element/AnnotationMirror;>;
    MethodParameters:
                Name  Flags
      annotationType  
      elementUtils    
      typeUtils       
      declaring       
      method          

  private static javax.lang.model.element.AnnotationMirror isFluent(javax.lang.model.type.DeclaredType, javax.lang.model.util.Elements, javax.lang.model.util.Types, javax.lang.model.element.TypeElement, javax.lang.model.element.ExecutableElement, javax.lang.model.type.TypeMirror);
    descriptor: (Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;Ljavax/lang/model/element/ExecutableElement;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/AnnotationMirror;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=13, args_size=6
        start local 0 // javax.lang.model.type.DeclaredType annotationType
        start local 1 // javax.lang.model.util.Elements elementUtils
        start local 2 // javax.lang.model.util.Types typeUtils
        start local 3 // javax.lang.model.element.TypeElement declaring
        start local 4 // javax.lang.model.element.ExecutableElement method
        start local 5 // javax.lang.model.type.TypeMirror type
         0: .line 239
            aload 2 /* typeUtils */
            aload 5 /* type */
            invokeinterface javax.lang.model.util.Types.directSupertypes:(Ljavax/lang/model/type/TypeMirror;)Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 18
      StackMap locals: javax.lang.model.type.DeclaredType javax.lang.model.util.Elements javax.lang.model.util.Types javax.lang.model.element.TypeElement javax.lang.model.element.ExecutableElement javax.lang.model.type.TypeMirror top java.util.Iterator
      StackMap stack:
         1: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.lang.model.type.TypeMirror
            astore 6 /* directSuperType */
        start local 6 // javax.lang.model.type.TypeMirror directSuperType
         2: .line 240
            aload 2 /* typeUtils */
            aload 6 /* directSuperType */
            invokeinterface javax.lang.model.util.Types.asElement:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/Element;
            astore 8 /* directSuperTypeElt */
        start local 8 // javax.lang.model.element.Element directSuperTypeElt
         3: .line 241
            aload 8 /* directSuperTypeElt */
            instanceof javax.lang.model.element.TypeElement
            ifeq 18
         4: .line 242
            aload 8 /* directSuperTypeElt */
            checkcast javax.lang.model.element.TypeElement
            invokeinterface javax.lang.model.element.TypeElement.getEnclosedElements:()Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         5: .line 243
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$6(Ljavax/lang/model/element/Element;)Z (6)
                  (Ljavax/lang/model/element/Element;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/codegen/Helper.lambda$7(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/ExecutableElement; (6)
                  (Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/ExecutableElement;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         6: .line 244
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
         7: .line 242
            astore 9 /* methods */
        start local 9 // java.util.List methods
         8: .line 245
            aload 9 /* methods */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 14
      StackMap locals: javax.lang.model.type.DeclaredType javax.lang.model.util.Elements javax.lang.model.util.Types javax.lang.model.element.TypeElement javax.lang.model.element.ExecutableElement javax.lang.model.type.TypeMirror javax.lang.model.type.TypeMirror java.util.Iterator javax.lang.model.element.Element java.util.List top java.util.Iterator
      StackMap stack:
         9: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.lang.model.element.ExecutableElement
            astore 10 /* m */
        start local 10 // javax.lang.model.element.ExecutableElement m
        10: .line 246
            aload 1 /* elementUtils */
            aload 4 /* method */
            aload 10 /* m */
            aload 3 /* declaring */
            invokeinterface javax.lang.model.util.Elements.overrides:(Ljavax/lang/model/element/ExecutableElement;Ljavax/lang/model/element/ExecutableElement;Ljavax/lang/model/element/TypeElement;)Z
            ifeq 14
        11: .line 247
            aload 0 /* annotationType */
            aload 1 /* elementUtils */
            aload 2 /* typeUtils */
            aload 8 /* directSuperTypeElt */
            checkcast javax.lang.model.element.TypeElement
            aload 10 /* m */
            invokestatic io.vertx.codegen.Helper.resolveMethodAnnotation:(Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;Ljavax/lang/model/element/ExecutableElement;)Ljavax/lang/model/element/AnnotationMirror;
            astore 12 /* annotation */
        start local 12 // javax.lang.model.element.AnnotationMirror annotation
        12: .line 248
            aload 12 /* annotation */
            ifnull 14
        13: .line 249
            aload 12 /* annotation */
            areturn
        end local 12 // javax.lang.model.element.AnnotationMirror annotation
        end local 10 // javax.lang.model.element.ExecutableElement m
        14: .line 245
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        15: .line 253
            aload 0 /* annotationType */
            aload 1 /* elementUtils */
            aload 2 /* typeUtils */
            aload 3 /* declaring */
            aload 4 /* method */
            aload 6 /* directSuperType */
            invokestatic io.vertx.codegen.Helper.isFluent:(Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;Ljavax/lang/model/element/ExecutableElement;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/AnnotationMirror;
            astore 10 /* annotation */
        start local 10 // javax.lang.model.element.AnnotationMirror annotation
        16: .line 254
            aload 10 /* annotation */
            ifnull 18
        17: .line 255
            aload 10 /* annotation */
            areturn
        end local 10 // javax.lang.model.element.AnnotationMirror annotation
        end local 9 // java.util.List methods
        end local 8 // javax.lang.model.element.Element directSuperTypeElt
        end local 6 // javax.lang.model.type.TypeMirror directSuperType
        18: .line 239
      StackMap locals: javax.lang.model.type.DeclaredType javax.lang.model.util.Elements javax.lang.model.util.Types javax.lang.model.element.TypeElement javax.lang.model.element.ExecutableElement javax.lang.model.type.TypeMirror top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        19: .line 259
            aconst_null
            areturn
        end local 5 // javax.lang.model.type.TypeMirror type
        end local 4 // javax.lang.model.element.ExecutableElement method
        end local 3 // javax.lang.model.element.TypeElement declaring
        end local 2 // javax.lang.model.util.Types typeUtils
        end local 1 // javax.lang.model.util.Elements elementUtils
        end local 0 // javax.lang.model.type.DeclaredType annotationType
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   20     0      annotationType  Ljavax/lang/model/type/DeclaredType;
            0   20     1        elementUtils  Ljavax/lang/model/util/Elements;
            0   20     2           typeUtils  Ljavax/lang/model/util/Types;
            0   20     3           declaring  Ljavax/lang/model/element/TypeElement;
            0   20     4              method  Ljavax/lang/model/element/ExecutableElement;
            0   20     5                type  Ljavax/lang/model/type/TypeMirror;
            2   18     6     directSuperType  Ljavax/lang/model/type/TypeMirror;
            3   18     8  directSuperTypeElt  Ljavax/lang/model/element/Element;
            8   18     9             methods  Ljava/util/List<Ljavax/lang/model/element/ExecutableElement;>;
           10   14    10                   m  Ljavax/lang/model/element/ExecutableElement;
           12   14    12          annotation  Ljavax/lang/model/element/AnnotationMirror;
           16   18    10          annotation  Ljavax/lang/model/element/AnnotationMirror;
    MethodParameters:
                Name  Flags
      annotationType  
      elementUtils    
      typeUtils       
      declaring       
      method          
      type            

  public static javax.lang.model.type.TypeMirror resolveTypeParameter(javax.lang.model.util.Types, javax.lang.model.type.DeclaredType, javax.lang.model.element.TypeParameterElement);
    descriptor: (Ljavax/lang/model/util/Types;Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/element/TypeParameterElement;)Ljavax/lang/model/type/TypeMirror;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // javax.lang.model.util.Types typeUtils
        start local 1 // javax.lang.model.type.DeclaredType subType
        start local 2 // javax.lang.model.element.TypeParameterElement typeParam
         0: .line 274
            aload 0 /* typeUtils */
            aload 2 /* typeParam */
            invokeinterface javax.lang.model.element.TypeParameterElement.getGenericElement:()Ljavax/lang/model/element/Element;
            invokeinterface javax.lang.model.element.Element.asType:()Ljavax/lang/model/type/TypeMirror;
            invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
            astore 3 /* erased */
        start local 3 // javax.lang.model.type.TypeMirror erased
         1: .line 275
            aload 0 /* typeUtils */
            aload 1 /* subType */
            invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
            astore 4 /* erasedSubType */
        start local 4 // javax.lang.model.type.TypeMirror erasedSubType
         2: .line 276
            aload 0 /* typeUtils */
            aload 3 /* erased */
            aload 4 /* erasedSubType */
            invokeinterface javax.lang.model.util.Types.isSameType:(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z
            ifeq 4
         3: .line 277
            aload 0 /* typeUtils */
            aload 1 /* subType */
            aload 2 /* typeParam */
            invokeinterface javax.lang.model.element.TypeParameterElement.asType:()Ljavax/lang/model/type/TypeMirror;
            checkcast javax.lang.model.type.TypeVariable
            invokeinterface javax.lang.model.type.TypeVariable.asElement:()Ljavax/lang/model/element/Element;
            invokeinterface javax.lang.model.util.Types.asMemberOf:(Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/element/Element;)Ljavax/lang/model/type/TypeMirror;
            areturn
         4: .line 278
      StackMap locals: javax.lang.model.type.TypeMirror javax.lang.model.type.TypeMirror
      StackMap stack:
            aload 0 /* typeUtils */
            aload 4 /* erasedSubType */
            aload 3 /* erased */
            invokeinterface javax.lang.model.util.Types.isSubtype:(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z
            ifeq 11
         5: .line 279
            aload 0 /* typeUtils */
            aload 1 /* subType */
            invokeinterface javax.lang.model.util.Types.directSupertypes:(Ljavax/lang/model/type/TypeMirror;)Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 10
      StackMap locals: javax.lang.model.util.Types javax.lang.model.type.DeclaredType javax.lang.model.element.TypeParameterElement javax.lang.model.type.TypeMirror javax.lang.model.type.TypeMirror top java.util.Iterator
      StackMap stack:
         6: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.lang.model.type.TypeMirror
            astore 5 /* superType */
        start local 5 // javax.lang.model.type.TypeMirror superType
         7: .line 280
            aload 0 /* typeUtils */
            aload 5 /* superType */
            checkcast javax.lang.model.type.DeclaredType
            aload 2 /* typeParam */
            invokestatic io.vertx.codegen.Helper.resolveTypeParameter:(Ljavax/lang/model/util/Types;Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/element/TypeParameterElement;)Ljavax/lang/model/type/TypeMirror;
            astore 7 /* resolved */
        start local 7 // javax.lang.model.type.TypeMirror resolved
         8: .line 281
            aload 7 /* resolved */
            ifnull 10
         9: .line 282
            aload 7 /* resolved */
            areturn
        end local 7 // javax.lang.model.type.TypeMirror resolved
        end local 5 // javax.lang.model.type.TypeMirror superType
        10: .line 279
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        11: .line 286
      StackMap locals: javax.lang.model.util.Types javax.lang.model.type.DeclaredType javax.lang.model.element.TypeParameterElement javax.lang.model.type.TypeMirror javax.lang.model.type.TypeMirror
      StackMap stack:
            aconst_null
            areturn
        end local 4 // javax.lang.model.type.TypeMirror erasedSubType
        end local 3 // javax.lang.model.type.TypeMirror erased
        end local 2 // javax.lang.model.element.TypeParameterElement typeParam
        end local 1 // javax.lang.model.type.DeclaredType subType
        end local 0 // javax.lang.model.util.Types typeUtils
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     0      typeUtils  Ljavax/lang/model/util/Types;
            0   12     1        subType  Ljavax/lang/model/type/DeclaredType;
            0   12     2      typeParam  Ljavax/lang/model/element/TypeParameterElement;
            1   12     3         erased  Ljavax/lang/model/type/TypeMirror;
            2   12     4  erasedSubType  Ljavax/lang/model/type/TypeMirror;
            7   10     5      superType  Ljavax/lang/model/type/TypeMirror;
            8   10     7       resolved  Ljavax/lang/model/type/TypeMirror;
    MethodParameters:
           Name  Flags
      typeUtils  
      subType    
      typeParam  

  public static <T> java.lang.reflect.Type resolveTypeParameter(java.lang.reflect.Type, java.lang.reflect.TypeVariable<java.lang.Class<T>>);
    descriptor: (Ljava/lang/reflect/Type;Ljava/lang/reflect/TypeVariable;)Ljava/lang/reflect/Type;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // java.lang.reflect.Type type
        start local 1 // java.lang.reflect.TypeVariable typeParam
         0: .line 299
            aload 0 /* type */
            instanceof java.lang.Class
            ifeq 15
         1: .line 300
            aload 0 /* type */
            checkcast java.lang.Class
            astore 2 /* classType */
        start local 2 // java.lang.Class classType
         2: .line 301
            aload 2 /* classType */
            invokevirtual java.lang.Class.getTypeParameters:()[Ljava/lang/reflect/TypeVariable;
            invokestatic java.util.stream.Stream.of:([Ljava/lang/Object;)Ljava/util/stream/Stream;
            aload 1 /* typeParam */
            invokedynamic test(Ljava/lang/reflect/TypeVariable;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$8(Ljava/lang/reflect/TypeVariable;Ljava/lang/reflect/TypeVariable;)Z (6)
                  (Ljava/lang/reflect/TypeVariable;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.findFirst:()Ljava/util/Optional;
            invokevirtual java.util.Optional.isPresent:()Z
            ifeq 4
         3: .line 302
            aload 1 /* typeParam */
            areturn
         4: .line 304
      StackMap locals: java.lang.Class
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* superTypes */
        start local 3 // java.util.List superTypes
         5: .line 305
            aload 2 /* classType */
            invokevirtual java.lang.Class.getGenericSuperclass:()Ljava/lang/reflect/Type;
            ifnull 7
         6: .line 306
            aload 3 /* superTypes */
            aload 2 /* classType */
            invokevirtual java.lang.Class.getGenericSuperclass:()Ljava/lang/reflect/Type;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         7: .line 308
      StackMap locals: java.util.List
      StackMap stack:
            aload 3 /* superTypes */
            aload 2 /* classType */
            invokevirtual java.lang.Class.getGenericInterfaces:()[Ljava/lang/reflect/Type;
            invokestatic java.util.Collections.addAll:(Ljava/util/Collection;[Ljava/lang/Object;)Z
            pop
         8: .line 309
            aload 3 /* superTypes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 13
      StackMap locals: java.lang.reflect.Type java.lang.reflect.TypeVariable java.lang.Class java.util.List top java.util.Iterator
      StackMap stack:
         9: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.reflect.Type
            astore 4 /* superType */
        start local 4 // java.lang.reflect.Type superType
        10: .line 310
            aload 4 /* superType */
            aload 1 /* typeParam */
            invokestatic io.vertx.codegen.Helper.resolveTypeParameter:(Ljava/lang/reflect/Type;Ljava/lang/reflect/TypeVariable;)Ljava/lang/reflect/Type;
            astore 6 /* resolved */
        start local 6 // java.lang.reflect.Type resolved
        11: .line 311
            aload 6 /* resolved */
            ifnull 13
        12: .line 312
            aload 6 /* resolved */
            areturn
        end local 6 // java.lang.reflect.Type resolved
        end local 4 // java.lang.reflect.Type superType
        13: .line 309
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        end local 3 // java.util.List superTypes
        end local 2 // java.lang.Class classType
        14: .line 315
            goto 31
      StackMap locals: java.lang.reflect.Type java.lang.reflect.TypeVariable
      StackMap stack:
        15: aload 0 /* type */
            instanceof java.lang.reflect.ParameterizedType
            ifeq 30
        16: .line 316
            aload 0 /* type */
            checkcast java.lang.reflect.ParameterizedType
            astore 2 /* parameterizedType */
        start local 2 // java.lang.reflect.ParameterizedType parameterizedType
        17: .line 317
            aload 2 /* parameterizedType */
            invokeinterface java.lang.reflect.ParameterizedType.getRawType:()Ljava/lang/reflect/Type;
            astore 3 /* rawType */
        start local 3 // java.lang.reflect.Type rawType
        18: .line 318
            aload 3 /* rawType */
            aload 1 /* typeParam */
            invokestatic io.vertx.codegen.Helper.resolveTypeParameter:(Ljava/lang/reflect/Type;Ljava/lang/reflect/TypeVariable;)Ljava/lang/reflect/Type;
            astore 4 /* resolvedType */
        start local 4 // java.lang.reflect.Type resolvedType
        19: .line 319
            aload 4 /* resolvedType */
            instanceof java.lang.reflect.TypeVariable
            ifeq 31
        20: .line 320
            aload 4 /* resolvedType */
            checkcast java.lang.reflect.TypeVariable
            invokeinterface java.lang.reflect.TypeVariable.getGenericDeclaration:()Ljava/lang/reflect/GenericDeclaration;
            astore 5 /* owner */
        start local 5 // java.lang.reflect.GenericDeclaration owner
        21: .line 321
            aload 5 /* owner */
            aload 3 /* rawType */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 31
        22: .line 322
            aload 5 /* owner */
            invokeinterface java.lang.reflect.GenericDeclaration.getTypeParameters:()[Ljava/lang/reflect/TypeVariable;
            astore 6 /* typeParams */
        start local 6 // java.lang.reflect.TypeVariable[] typeParams
        23: .line 323
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        24: goto 28
        25: .line 324
      StackMap locals: java.lang.reflect.Type java.lang.reflect.TypeVariable java.lang.reflect.ParameterizedType java.lang.reflect.Type java.lang.reflect.Type java.lang.reflect.GenericDeclaration java.lang.reflect.TypeVariable[] int
      StackMap stack:
            aload 6 /* typeParams */
            iload 7 /* i */
            aaload
            aload 4 /* resolvedType */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 27
        26: .line 325
            aload 2 /* parameterizedType */
            invokeinterface java.lang.reflect.ParameterizedType.getActualTypeArguments:()[Ljava/lang/reflect/Type;
            iload 7 /* i */
            aaload
            areturn
        27: .line 323
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 7 /* i */
            aload 6 /* typeParams */
            arraylength
            if_icmplt 25
        end local 7 // int i
        end local 6 // java.lang.reflect.TypeVariable[] typeParams
        end local 5 // java.lang.reflect.GenericDeclaration owner
        end local 4 // java.lang.reflect.Type resolvedType
        end local 3 // java.lang.reflect.Type rawType
        end local 2 // java.lang.reflect.ParameterizedType parameterizedType
        29: .line 330
            goto 31
        30: .line 331
      StackMap locals: java.lang.reflect.Type java.lang.reflect.TypeVariable
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Todo "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* type */
            invokeinterface java.lang.reflect.Type.getTypeName:()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 0 /* type */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        31: .line 333
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.reflect.TypeVariable typeParam
        end local 0 // java.lang.reflect.Type type
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   32     0               type  Ljava/lang/reflect/Type;
            0   32     1          typeParam  Ljava/lang/reflect/TypeVariable<Ljava/lang/Class<TT;>;>;
            2   14     2          classType  Ljava/lang/Class<*>;
            5   14     3         superTypes  Ljava/util/List<Ljava/lang/reflect/Type;>;
           10   13     4          superType  Ljava/lang/reflect/Type;
           11   13     6           resolved  Ljava/lang/reflect/Type;
           17   29     2  parameterizedType  Ljava/lang/reflect/ParameterizedType;
           18   29     3            rawType  Ljava/lang/reflect/Type;
           19   29     4       resolvedType  Ljava/lang/reflect/Type;
           21   29     5              owner  Ljava/lang/reflect/GenericDeclaration;
           23   29     6         typeParams  [Ljava/lang/reflect/TypeVariable;
           24   29     7                  i  I
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/Type;Ljava/lang/reflect/TypeVariable<Ljava/lang/Class<TT;>;>;)Ljava/lang/reflect/Type;
    MethodParameters:
           Name  Flags
      type       
      typeParam  

  public static javax.lang.model.element.Element resolveSignature(javax.lang.model.util.Elements, javax.lang.model.util.Types, javax.lang.model.element.TypeElement, java.lang.String);
    descriptor: (Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;Ljava/lang/String;)Ljavax/lang/model/element/Element;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=13, args_size=4
        start local 0 // javax.lang.model.util.Elements elementUtils
        start local 1 // javax.lang.model.util.Types typeUtils
        start local 2 // javax.lang.model.element.TypeElement declaringElt
        start local 3 // java.lang.String signature
         0: .line 355
            getstatic io.vertx.codegen.Helper.SIGNATURE_PATTERN:Ljava/util/regex/Pattern;
            aload 3 /* signature */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 4 /* signatureMatcher */
        start local 4 // java.util.regex.Matcher signatureMatcher
         1: .line 356
            aload 4 /* signatureMatcher */
            invokevirtual java.util.regex.Matcher.find:()Z
            ifeq 24
         2: .line 357
            aload 4 /* signatureMatcher */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            astore 5 /* memberName */
        start local 5 // java.lang.String memberName
         3: .line 358
            aload 3 /* signature */
            iconst_0
            aload 4 /* signatureMatcher */
            invokevirtual java.util.regex.Matcher.start:()I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 6 /* typeName */
        start local 6 // java.lang.String typeName
         4: .line 359
            aload 0 /* elementUtils */
            aload 2 /* declaringElt */
            aload 6 /* typeName */
            invokestatic io.vertx.codegen.Helper.resolveTypeElement:(Ljavax/lang/model/util/Elements;Ljavax/lang/model/element/TypeElement;Ljava/lang/String;)Ljavax/lang/model/element/TypeElement;
            astore 7 /* typeElt */
        start local 7 // javax.lang.model.element.TypeElement typeElt
         5: .line 360
            aload 7 /* typeElt */
            ifnull 23
         6: .line 362
            aload 4 /* signatureMatcher */
            iconst_2
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            ifnull 14
         7: .line 363
            aload 4 /* signatureMatcher */
            iconst_2
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 9 /* t */
        start local 9 // java.lang.String t
         8: .line 365
            aload 9 /* t */
            invokevirtual java.lang.String.length:()I
            ifne 11
         9: .line 366
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$9(Ljavax/lang/model/element/ExecutableElement;)Z (6)
                  (Ljavax/lang/model/element/ExecutableElement;)Z
            astore 10 /* parametersMatcher */
        start local 10 // java.util.function.Predicate parametersMatcher
        10: .line 367
            goto 12
        end local 10 // java.util.function.Predicate parametersMatcher
        11: .line 368
      StackMap locals: javax.lang.model.util.Elements javax.lang.model.util.Types javax.lang.model.element.TypeElement java.lang.String java.util.regex.Matcher java.lang.String java.lang.String javax.lang.model.element.TypeElement top java.lang.String
      StackMap stack:
            aload 1 /* typeUtils */
            aload 9 /* t */
            ldc "\\s*,\\s*"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic io.vertx.codegen.Helper.parametersMatcher:(Ljavax/lang/model/util/Types;[Ljava/lang/String;)Ljava/util/function/Predicate;
            astore 10 /* parametersMatcher */
        start local 10 // java.util.function.Predicate parametersMatcher
        12: .line 370
      StackMap locals: java.util.function.Predicate
      StackMap stack:
            aload 5 /* memberName */
            aload 10 /* parametersMatcher */
            invokedynamic test(Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$10(Ljava/lang/String;Ljava/util/function/Predicate;Ljavax/lang/model/element/Element;)Z (6)
                  (Ljavax/lang/model/element/Element;)Z
            astore 8 /* memberMatcher */
        end local 10 // java.util.function.Predicate parametersMatcher
        end local 9 // java.lang.String t
        start local 8 // java.util.function.Predicate memberMatcher
        13: .line 371
            goto 15
        end local 8 // java.util.function.Predicate memberMatcher
        14: .line 372
      StackMap locals: javax.lang.model.util.Elements javax.lang.model.util.Types javax.lang.model.element.TypeElement java.lang.String java.util.regex.Matcher java.lang.String java.lang.String javax.lang.model.element.TypeElement
      StackMap stack:
            aload 5 /* memberName */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$11(Ljava/lang/String;Ljavax/lang/model/element/Element;)Z (6)
                  (Ljavax/lang/model/element/Element;)Z
            astore 8 /* memberMatcher */
        start local 8 // java.util.function.Predicate memberMatcher
        15: .line 377
      StackMap locals: java.util.function.Predicate
      StackMap stack:
            iconst_3
            anewarray javax.lang.model.element.ElementKind
            dup
            iconst_0
            getstatic javax.lang.model.element.ElementKind.FIELD:Ljavax/lang/model/element/ElementKind;
            aastore
            dup
            iconst_1
            getstatic javax.lang.model.element.ElementKind.CONSTRUCTOR:Ljavax/lang/model/element/ElementKind;
            aastore
            dup
            iconst_2
            getstatic javax.lang.model.element.ElementKind.METHOD:Ljavax/lang/model/element/ElementKind;
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 22
      StackMap locals: javax.lang.model.util.Elements javax.lang.model.util.Types javax.lang.model.element.TypeElement java.lang.String java.util.regex.Matcher java.lang.String java.lang.String javax.lang.model.element.TypeElement java.util.function.Predicate top java.util.Iterator
      StackMap stack:
        16: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.lang.model.element.ElementKind
            astore 9 /* kind */
        start local 9 // javax.lang.model.element.ElementKind kind
        17: .line 378
            aload 0 /* elementUtils */
            aload 7 /* typeElt */
            invokeinterface javax.lang.model.util.Elements.getAllMembers:(Ljavax/lang/model/element/TypeElement;)Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 12
            goto 21
      StackMap locals: javax.lang.model.util.Elements javax.lang.model.util.Types javax.lang.model.element.TypeElement java.lang.String java.util.regex.Matcher java.lang.String java.lang.String javax.lang.model.element.TypeElement java.util.function.Predicate javax.lang.model.element.ElementKind java.util.Iterator top java.util.Iterator
      StackMap stack:
        18: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.lang.model.element.Element
            astore 11 /* memberElt */
        start local 11 // javax.lang.model.element.Element memberElt
        19: .line 379
            aload 11 /* memberElt */
            invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
            aload 9 /* kind */
            if_acmpne 21
            aload 8 /* memberMatcher */
            aload 11 /* memberElt */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 21
        20: .line 380
            aload 11 /* memberElt */
            areturn
        end local 11 // javax.lang.model.element.Element memberElt
        21: .line 378
      StackMap locals:
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        end local 9 // javax.lang.model.element.ElementKind kind
        22: .line 377
      StackMap locals: javax.lang.model.util.Elements javax.lang.model.util.Types javax.lang.model.element.TypeElement java.lang.String java.util.regex.Matcher java.lang.String java.lang.String javax.lang.model.element.TypeElement java.util.function.Predicate top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        end local 8 // java.util.function.Predicate memberMatcher
        23: .line 385
      StackMap locals: javax.lang.model.util.Elements javax.lang.model.util.Types javax.lang.model.element.TypeElement java.lang.String java.util.regex.Matcher java.lang.String java.lang.String javax.lang.model.element.TypeElement
      StackMap stack:
            aconst_null
            areturn
        end local 7 // javax.lang.model.element.TypeElement typeElt
        end local 6 // java.lang.String typeName
        end local 5 // java.lang.String memberName
        24: .line 387
      StackMap locals:
      StackMap stack:
            aload 0 /* elementUtils */
            aload 2 /* declaringElt */
            aload 3 /* signature */
            invokestatic io.vertx.codegen.Helper.resolveTypeElement:(Ljavax/lang/model/util/Elements;Ljavax/lang/model/element/TypeElement;Ljava/lang/String;)Ljavax/lang/model/element/TypeElement;
            areturn
        end local 4 // java.util.regex.Matcher signatureMatcher
        end local 3 // java.lang.String signature
        end local 2 // javax.lang.model.element.TypeElement declaringElt
        end local 1 // javax.lang.model.util.Types typeUtils
        end local 0 // javax.lang.model.util.Elements elementUtils
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   25     0       elementUtils  Ljavax/lang/model/util/Elements;
            0   25     1          typeUtils  Ljavax/lang/model/util/Types;
            0   25     2       declaringElt  Ljavax/lang/model/element/TypeElement;
            0   25     3          signature  Ljava/lang/String;
            1   25     4   signatureMatcher  Ljava/util/regex/Matcher;
            3   24     5         memberName  Ljava/lang/String;
            4   24     6           typeName  Ljava/lang/String;
            5   24     7            typeElt  Ljavax/lang/model/element/TypeElement;
           13   14     8      memberMatcher  Ljava/util/function/Predicate<-Ljavax/lang/model/element/Element;>;
           15   23     8      memberMatcher  Ljava/util/function/Predicate<-Ljavax/lang/model/element/Element;>;
            8   13     9                  t  Ljava/lang/String;
           10   11    10  parametersMatcher  Ljava/util/function/Predicate<Ljavax/lang/model/element/ExecutableElement;>;
           12   13    10  parametersMatcher  Ljava/util/function/Predicate<Ljavax/lang/model/element/ExecutableElement;>;
           17   22     9               kind  Ljavax/lang/model/element/ElementKind;
           19   21    11          memberElt  Ljavax/lang/model/element/Element;
    MethodParameters:
              Name  Flags
      elementUtils  
      typeUtils     
      declaringElt  
      signature     

  private static javax.lang.model.element.TypeElement resolveTypeElement(javax.lang.model.util.Elements, javax.lang.model.element.TypeElement, java.lang.String);
    descriptor: (Ljavax/lang/model/util/Elements;Ljavax/lang/model/element/TypeElement;Ljava/lang/String;)Ljavax/lang/model/element/TypeElement;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // javax.lang.model.util.Elements elementUtils
        start local 1 // javax.lang.model.element.TypeElement declaringElt
        start local 2 // java.lang.String typeName
         0: .line 393
            aload 2 /* typeName */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 3
         1: .line 394
            aload 1 /* declaringElt */
            astore 3 /* resolvedElt */
        start local 3 // javax.lang.model.element.TypeElement resolvedElt
         2: .line 395
            goto 10
        end local 3 // javax.lang.model.element.TypeElement resolvedElt
         3: .line 396
      StackMap locals:
      StackMap stack:
            aload 2 /* typeName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_m1
            if_icmpne 9
         4: .line 397
            aload 0 /* elementUtils */
            new java.lang.StringBuilder
            dup
            ldc "java.lang."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* typeName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface javax.lang.model.util.Elements.getTypeElement:(Ljava/lang/CharSequence;)Ljavax/lang/model/element/TypeElement;
            astore 3 /* resolvedElt */
        start local 3 // javax.lang.model.element.TypeElement resolvedElt
         5: .line 398
            aload 3 /* resolvedElt */
            ifnonnull 10
         6: .line 399
            aload 0 /* elementUtils */
            aload 1 /* declaringElt */
            invokeinterface javax.lang.model.util.Elements.getPackageOf:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/PackageElement;
            invokeinterface javax.lang.model.element.PackageElement.getQualifiedName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            astore 4 /* packageName */
        start local 4 // java.lang.String packageName
         7: .line 400
            aload 0 /* elementUtils */
            new java.lang.StringBuilder
            dup
            aload 4 /* packageName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 2 /* typeName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface javax.lang.model.util.Elements.getTypeElement:(Ljava/lang/CharSequence;)Ljavax/lang/model/element/TypeElement;
            astore 3 /* resolvedElt */
        end local 4 // java.lang.String packageName
         8: .line 402
            goto 10
        end local 3 // javax.lang.model.element.TypeElement resolvedElt
         9: .line 403
      StackMap locals:
      StackMap stack:
            aload 0 /* elementUtils */
            aload 2 /* typeName */
            invokeinterface javax.lang.model.util.Elements.getTypeElement:(Ljava/lang/CharSequence;)Ljavax/lang/model/element/TypeElement;
            astore 3 /* resolvedElt */
        start local 3 // javax.lang.model.element.TypeElement resolvedElt
        10: .line 406
      StackMap locals: javax.lang.model.element.TypeElement
      StackMap stack:
            aload 3 /* resolvedElt */
            areturn
        end local 3 // javax.lang.model.element.TypeElement resolvedElt
        end local 2 // java.lang.String typeName
        end local 1 // javax.lang.model.element.TypeElement declaringElt
        end local 0 // javax.lang.model.util.Elements elementUtils
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0  elementUtils  Ljavax/lang/model/util/Elements;
            0   11     1  declaringElt  Ljavax/lang/model/element/TypeElement;
            0   11     2      typeName  Ljava/lang/String;
            2    3     3   resolvedElt  Ljavax/lang/model/element/TypeElement;
            5    9     3   resolvedElt  Ljavax/lang/model/element/TypeElement;
           10   11     3   resolvedElt  Ljavax/lang/model/element/TypeElement;
            7    8     4   packageName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      elementUtils  
      declaringElt  
      typeName      

  private static boolean matchesConstructor(javax.lang.model.element.Element, java.lang.String, java.util.function.Predicate<javax.lang.model.element.ExecutableElement>);
    descriptor: (Ljavax/lang/model/element/Element;Ljava/lang/String;Ljava/util/function/Predicate;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // javax.lang.model.element.Element elt
        start local 1 // java.lang.String memberName
        start local 2 // java.util.function.Predicate parametersMatcher
         0: .line 410
            aload 0 /* elt */
            invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
            getstatic javax.lang.model.element.ElementKind.CONSTRUCTOR:Ljavax/lang/model/element/ElementKind;
            if_acmpne 5
         1: .line 411
            aload 0 /* elt */
            checkcast javax.lang.model.element.ExecutableElement
            astore 3 /* constructorElt */
        start local 3 // javax.lang.model.element.ExecutableElement constructorElt
         2: .line 412
            aload 3 /* constructorElt */
            invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
            checkcast javax.lang.model.element.TypeElement
            astore 4 /* typeElt */
        start local 4 // javax.lang.model.element.TypeElement typeElt
         3: .line 413
            aload 4 /* typeElt */
            invokeinterface javax.lang.model.element.TypeElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            aload 1 /* memberName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
            aload 2 /* parametersMatcher */
            aload 3 /* constructorElt */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 4
            iconst_1
            ireturn
      StackMap locals: javax.lang.model.element.ExecutableElement javax.lang.model.element.TypeElement
      StackMap stack:
         4: iconst_0
            ireturn
        end local 4 // javax.lang.model.element.TypeElement typeElt
        end local 3 // javax.lang.model.element.ExecutableElement constructorElt
         5: .line 415
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.util.function.Predicate parametersMatcher
        end local 1 // java.lang.String memberName
        end local 0 // javax.lang.model.element.Element elt
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0                elt  Ljavax/lang/model/element/Element;
            0    6     1         memberName  Ljava/lang/String;
            0    6     2  parametersMatcher  Ljava/util/function/Predicate<Ljavax/lang/model/element/ExecutableElement;>;
            2    5     3     constructorElt  Ljavax/lang/model/element/ExecutableElement;
            3    5     4            typeElt  Ljavax/lang/model/element/TypeElement;
    Signature: (Ljavax/lang/model/element/Element;Ljava/lang/String;Ljava/util/function/Predicate<Ljavax/lang/model/element/ExecutableElement;>;)Z
    MethodParameters:
                   Name  Flags
      elt                
      memberName         
      parametersMatcher  

  private static boolean matchesMethod(javax.lang.model.element.Element, java.lang.String, java.util.function.Predicate<javax.lang.model.element.ExecutableElement>);
    descriptor: (Ljavax/lang/model/element/Element;Ljava/lang/String;Ljava/util/function/Predicate;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // javax.lang.model.element.Element elt
        start local 1 // java.lang.String memberName
        start local 2 // java.util.function.Predicate parametersMatcher
         0: .line 419
            aload 0 /* 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 4
         1: .line 420
            aload 0 /* elt */
            checkcast javax.lang.model.element.ExecutableElement
            astore 3 /* methodElt */
        start local 3 // javax.lang.model.element.ExecutableElement methodElt
         2: .line 421
            aload 3 /* methodElt */
            invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            aload 1 /* memberName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 2 /* parametersMatcher */
            aload 3 /* methodElt */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_1
            ireturn
      StackMap locals: javax.lang.model.element.ExecutableElement
      StackMap stack:
         3: iconst_0
            ireturn
        end local 3 // javax.lang.model.element.ExecutableElement methodElt
         4: .line 423
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.util.function.Predicate parametersMatcher
        end local 1 // java.lang.String memberName
        end local 0 // javax.lang.model.element.Element elt
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0                elt  Ljavax/lang/model/element/Element;
            0    5     1         memberName  Ljava/lang/String;
            0    5     2  parametersMatcher  Ljava/util/function/Predicate<Ljavax/lang/model/element/ExecutableElement;>;
            2    4     3          methodElt  Ljavax/lang/model/element/ExecutableElement;
    Signature: (Ljavax/lang/model/element/Element;Ljava/lang/String;Ljava/util/function/Predicate<Ljavax/lang/model/element/ExecutableElement;>;)Z
    MethodParameters:
                   Name  Flags
      elt                
      memberName         
      parametersMatcher  

  private static boolean matchesField(javax.lang.model.element.Element, java.lang.String);
    descriptor: (Ljavax/lang/model/element/Element;Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.lang.model.element.Element elt
        start local 1 // java.lang.String memberName
         0: .line 427
            aload 0 /* elt */
            invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
            getstatic javax.lang.model.element.ElementKind.FIELD:Ljavax/lang/model/element/ElementKind;
            if_acmpne 1
            aload 0 /* elt */
            invokeinterface javax.lang.model.element.Element.getSimpleName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            aload 1 /* memberName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.String memberName
        end local 0 // javax.lang.model.element.Element elt
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0         elt  Ljavax/lang/model/element/Element;
            0    2     1  memberName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      elt         
      memberName  

  private static java.util.function.Predicate<javax.lang.model.element.ExecutableElement> parametersMatcher(javax.lang.model.util.Types, java.lang.String[]);
    descriptor: (Ljavax/lang/model/util/Types;[Ljava/lang/String;)Ljava/util/function/Predicate;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.lang.model.util.Types typeUtils
        start local 1 // java.lang.String[] parameterSignature
         0: .line 439
            aload 1 /* parameterSignature */
            aload 0 /* typeUtils */
            invokedynamic test([Ljava/lang/String;Ljavax/lang/model/util/Types;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$14([Ljava/lang/String;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/ExecutableElement;)Z (6)
                  (Ljavax/lang/model/element/ExecutableElement;)Z
            areturn
        end local 1 // java.lang.String[] parameterSignature
        end local 0 // javax.lang.model.util.Types typeUtils
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    1     0           typeUtils  Ljavax/lang/model/util/Types;
            0    1     1  parameterSignature  [Ljava/lang/String;
    Signature: (Ljavax/lang/model/util/Types;[Ljava/lang/String;)Ljava/util/function/Predicate<Ljavax/lang/model/element/ExecutableElement;>;
    MethodParameters:
                    Name  Flags
      typeUtils           
      parameterSignature  

  public static javax.lang.model.element.TypeElement getElementTypeOf(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/TypeElement;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // javax.lang.model.element.Element elt
         0: .line 467
            aload 0 /* elt */
            invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
            astore 1 /* kind */
        start local 1 // javax.lang.model.element.ElementKind kind
         1: .line 468
            aload 1 /* kind */
            getstatic javax.lang.model.element.ElementKind.CLASS:Ljavax/lang/model/element/ElementKind;
            if_acmpeq 2
            aload 1 /* kind */
            getstatic javax.lang.model.element.ElementKind.INTERFACE:Ljavax/lang/model/element/ElementKind;
            if_acmpeq 2
            aload 1 /* kind */
            getstatic javax.lang.model.element.ElementKind.ENUM:Ljavax/lang/model/element/ElementKind;
            if_acmpne 3
         2: .line 469
      StackMap locals: javax.lang.model.element.ElementKind
      StackMap stack:
            aload 0 /* elt */
            checkcast javax.lang.model.element.TypeElement
            areturn
         3: .line 471
      StackMap locals:
      StackMap stack:
            aload 0 /* elt */
            invokeinterface javax.lang.model.element.Element.getEnclosingElement:()Ljavax/lang/model/element/Element;
            astore 2 /* enclosingElt */
        start local 2 // javax.lang.model.element.Element enclosingElt
         4: .line 472
            aload 2 /* enclosingElt */
            ifnull 6
         5: .line 473
            aload 2 /* enclosingElt */
            invokestatic io.vertx.codegen.Helper.getElementTypeOf:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/TypeElement;
            areturn
         6: .line 475
      StackMap locals: javax.lang.model.element.Element
      StackMap stack:
            aconst_null
            areturn
        end local 2 // javax.lang.model.element.Element enclosingElt
        end local 1 // javax.lang.model.element.ElementKind kind
        end local 0 // javax.lang.model.element.Element elt
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0           elt  Ljavax/lang/model/element/Element;
            1    7     1          kind  Ljavax/lang/model/element/ElementKind;
            4    7     2  enclosingElt  Ljavax/lang/model/element/Element;
    MethodParameters:
      Name  Flags
      elt   

  public static java.lang.String normalizeWhitespaces(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String s
         0: .line 488
            getstatic io.vertx.codegen.Helper.WHITESPACE_CLUSTER_PATTERN:Ljava/util/regex/Pattern;
            aload 0 /* s */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 1 /* matcher */
        start local 1 // java.util.regex.Matcher matcher
         1: .line 489
            aload 1 /* matcher */
            ldc " "
            invokevirtual java.util.regex.Matcher.replaceAll:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            areturn
        end local 1 // java.util.regex.Matcher matcher
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0        s  Ljava/lang/String;
            1    2     1  matcher  Ljava/util/regex/Matcher;
    MethodParameters:
      Name  Flags
      s     

  public static java.util.Set<javax.lang.model.type.DeclaredType> resolveAncestorTypes(javax.lang.model.element.TypeElement, boolean, boolean);
    descriptor: (Ljavax/lang/model/element/TypeElement;ZZ)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // javax.lang.model.element.TypeElement typeElt
        start local 1 // boolean withSuper
        start local 2 // boolean withInterfaces
         0: .line 499
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 3 /* ancestors */
        start local 3 // java.util.Set ancestors
         1: .line 500
            aload 0 /* typeElt */
            aload 3 /* ancestors */
            iload 1 /* withSuper */
            iload 2 /* withInterfaces */
            invokestatic io.vertx.codegen.Helper.resolveAncestorTypes:(Ljavax/lang/model/element/TypeElement;Ljava/util/Set;ZZ)V
         2: .line 501
            aload 3 /* ancestors */
            areturn
        end local 3 // java.util.Set ancestors
        end local 2 // boolean withInterfaces
        end local 1 // boolean withSuper
        end local 0 // javax.lang.model.element.TypeElement typeElt
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0         typeElt  Ljavax/lang/model/element/TypeElement;
            0    3     1       withSuper  Z
            0    3     2  withInterfaces  Z
            1    3     3       ancestors  Ljava/util/Set<Ljavax/lang/model/type/DeclaredType;>;
    Signature: (Ljavax/lang/model/element/TypeElement;ZZ)Ljava/util/Set<Ljavax/lang/model/type/DeclaredType;>;
    MethodParameters:
                Name  Flags
      typeElt         
      withSuper       
      withInterfaces  

  private static void resolveAncestorTypes(javax.lang.model.element.TypeElement, java.util.Set<javax.lang.model.type.DeclaredType>, boolean, );
    descriptor: (Ljavax/lang/model/element/TypeElement;Ljava/util/Set;ZZ)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // javax.lang.model.element.TypeElement typeElt
        start local 1 // java.util.Set ancestors
        start local 2 // boolean withSuper
        start local 3 // boolean withInterfaces
         0: .line 505
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* superTypes */
        start local 4 // java.util.List superTypes
         1: .line 506
            iload 2 /* withSuper */
            ifeq 3
            aload 0 /* typeElt */
            invokeinterface javax.lang.model.element.TypeElement.getSuperclass:()Ljavax/lang/model/type/TypeMirror;
            ifnull 3
         2: .line 507
            aload 4 /* superTypes */
            aload 0 /* typeElt */
            invokeinterface javax.lang.model.element.TypeElement.getSuperclass:()Ljavax/lang/model/type/TypeMirror;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 509
      StackMap locals: java.util.List
      StackMap stack:
            iload 3 /* withInterfaces */
            ifeq 5
         4: .line 510
            aload 4 /* superTypes */
            aload 0 /* typeElt */
            invokeinterface javax.lang.model.element.TypeElement.getInterfaces:()Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         5: .line 512
      StackMap locals:
      StackMap stack:
            aload 4 /* superTypes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 12
      StackMap locals: javax.lang.model.element.TypeElement java.util.Set int int java.util.List top java.util.Iterator
      StackMap stack:
         6: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.lang.model.type.TypeMirror
            astore 5 /* superType */
        start local 5 // javax.lang.model.type.TypeMirror superType
         7: .line 513
            aload 5 /* superType */
            invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
            getstatic javax.lang.model.type.TypeKind.DECLARED:Ljavax/lang/model/type/TypeKind;
            if_acmpne 12
         8: .line 514
            aload 5 /* superType */
            checkcast javax.lang.model.type.DeclaredType
            astore 7 /* superDeclaredType */
        start local 7 // javax.lang.model.type.DeclaredType superDeclaredType
         9: .line 515
            aload 1 /* ancestors */
            aload 7 /* superDeclaredType */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 12
        10: .line 516
            aload 1 /* ancestors */
            aload 7 /* superDeclaredType */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 517
            aload 7 /* superDeclaredType */
            invokeinterface javax.lang.model.type.DeclaredType.asElement:()Ljavax/lang/model/element/Element;
            checkcast javax.lang.model.element.TypeElement
            aload 1 /* ancestors */
            iload 2 /* withSuper */
            iload 3 /* withInterfaces */
            invokestatic io.vertx.codegen.Helper.resolveAncestorTypes:(Ljavax/lang/model/element/TypeElement;Ljava/util/Set;ZZ)V
        end local 7 // javax.lang.model.type.DeclaredType superDeclaredType
        end local 5 // javax.lang.model.type.TypeMirror superType
        12: .line 512
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        13: .line 521
            return
        end local 4 // java.util.List superTypes
        end local 3 // boolean withInterfaces
        end local 2 // boolean withSuper
        end local 1 // java.util.Set ancestors
        end local 0 // javax.lang.model.element.TypeElement typeElt
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   14     0            typeElt  Ljavax/lang/model/element/TypeElement;
            0   14     1          ancestors  Ljava/util/Set<Ljavax/lang/model/type/DeclaredType;>;
            0   14     2          withSuper  Z
            0   14     3     withInterfaces  Z
            1   14     4         superTypes  Ljava/util/List<Ljavax/lang/model/type/TypeMirror;>;
            7   12     5          superType  Ljavax/lang/model/type/TypeMirror;
            9   12     7  superDeclaredType  Ljavax/lang/model/type/DeclaredType;
    Signature: (Ljavax/lang/model/element/TypeElement;Ljava/util/Set<Ljavax/lang/model/type/DeclaredType;>;ZZ)V
    MethodParameters:
                Name  Flags
      typeElt         
      ancestors       
      withSuper       
      withInterfaces  

  static void checkUnderModule(io.vertx.codegen.Model, java.lang.String);
    descriptor: (Lio/vertx/codegen/Model;Ljava/lang/String;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // io.vertx.codegen.Model model
        start local 1 // java.lang.String annotation
         0: .line 524
            aload 0 /* model */
            invokeinterface io.vertx.codegen.Model.getModule:()Lio/vertx/codegen/ModuleInfo;
            ifnonnull 5
         1: .line 525
            new io.vertx.codegen.GenException
            dup
            aload 0 /* model */
            invokeinterface io.vertx.codegen.Model.getElement:()Ljavax/lang/model/element/Element;
            new java.lang.StringBuilder
            dup
            ldc "Declaration annotated with "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* annotation */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " must be under a package annotated"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 526
            ldc "with @ModuleGen. Check that the package '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* model */
            invokeinterface io.vertx.codegen.Model.getFqn:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 527
            ldc "' or a parent package contains a 'package-info.java' using the @ModuleGen annotation"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 525
            invokespecial io.vertx.codegen.GenException.<init>:(Ljavax/lang/model/element/Element;Ljava/lang/String;)V
            athrow
         5: .line 529
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String annotation
        end local 0 // io.vertx.codegen.Model model
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0       model  Lio/vertx/codegen/Model;
            0    6     1  annotation  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      model       
      annotation  

  static void ensureParentDir(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.io.File f
         0: .line 532
            aload 0 /* f */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            ifne 2
         1: .line 533
            aload 0 /* f */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
            invokevirtual java.io.File.mkdirs:()Z
            pop
         2: .line 535
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.io.File f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     f  Ljava/io/File;
    MethodParameters:
      Name  Flags
      f     

  static java.lang.String toString(javax.lang.model.type.TypeMirror);
    descriptor: (Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javax.lang.model.type.TypeMirror mirror
         0: .line 544
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* buffer */
        start local 1 // java.lang.StringBuilder buffer
         1: .line 545
            aload 0 /* mirror */
            aload 1 /* buffer */
            invokestatic io.vertx.codegen.Helper.toString:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/StringBuilder;)V
         2: .line 546
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder buffer
        end local 0 // javax.lang.model.type.TypeMirror mirror
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  mirror  Ljavax/lang/model/type/TypeMirror;
            1    3     1  buffer  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      mirror  

  static void toString(javax.lang.model.type.TypeMirror, java.lang.StringBuilder);
    descriptor: (Ljavax/lang/model/type/TypeMirror;Ljava/lang/StringBuilder;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // javax.lang.model.type.TypeMirror mirror
        start local 1 // java.lang.StringBuilder buffer
         0: .line 556
            invokestatic io.vertx.codegen.Helper.$SWITCH_TABLE$javax$lang$model$type$TypeKind:()[I
            aload 0 /* mirror */
            invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            iaload
            tableswitch { // 1 - 16
                    1: 37
                    2: 37
                    3: 37
                    4: 37
                    5: 37
                    6: 37
                    7: 37
                    8: 37
                    9: 44
                   10: 44
                   11: 44
                   12: 40
                   13: 1
                   14: 44
                   15: 26
                   16: 16
              default: 44
          }
         1: .line 558
      StackMap locals:
      StackMap stack:
            aload 0 /* mirror */
            checkcast javax.lang.model.type.DeclaredType
            astore 2 /* dt */
        start local 2 // javax.lang.model.type.DeclaredType dt
         2: .line 559
            aload 2 /* dt */
            invokeinterface javax.lang.model.type.DeclaredType.asElement:()Ljavax/lang/model/element/Element;
            checkcast javax.lang.model.element.TypeElement
            astore 3 /* elt */
        start local 3 // javax.lang.model.element.TypeElement elt
         3: .line 560
            aload 1 /* buffer */
            aload 3 /* elt */
            invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()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;
            pop
         4: .line 561
            aload 2 /* dt */
            invokeinterface javax.lang.model.type.DeclaredType.getTypeArguments:()Ljava/util/List;
            astore 4 /* args */
        start local 4 // java.util.List args
         5: .line 562
            aload 4 /* args */
            invokeinterface java.util.List.size:()I
            ifle 45
         6: .line 563
            aload 1 /* buffer */
            ldc "<"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 564
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 13
         9: .line 565
      StackMap locals: javax.lang.model.type.TypeMirror java.lang.StringBuilder javax.lang.model.type.DeclaredType javax.lang.model.element.TypeElement java.util.List int
      StackMap stack:
            iload 5 /* i */
            ifle 11
        10: .line 566
            aload 1 /* buffer */
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 568
      StackMap locals:
      StackMap stack:
            aload 4 /* args */
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.lang.model.type.TypeMirror
            aload 1 /* buffer */
            invokestatic io.vertx.codegen.Helper.toString:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/StringBuilder;)V
        12: .line 564
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 5 /* i */
            aload 4 /* args */
            invokeinterface java.util.List.size:()I
            if_icmplt 9
        end local 5 // int i
        14: .line 570
            aload 1 /* buffer */
            ldc ">"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 572
            goto 45
        end local 4 // java.util.List args
        end local 3 // javax.lang.model.element.TypeElement elt
        end local 2 // javax.lang.model.type.DeclaredType dt
        16: .line 575
      StackMap locals: javax.lang.model.type.TypeMirror java.lang.StringBuilder
      StackMap stack:
            aload 0 /* mirror */
            checkcast javax.lang.model.type.WildcardType
            astore 2 /* wt */
        start local 2 // javax.lang.model.type.WildcardType wt
        17: .line 576
            aload 1 /* buffer */
            ldc "?"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 577
            aload 2 /* wt */
            invokeinterface javax.lang.model.type.WildcardType.getSuperBound:()Ljavax/lang/model/type/TypeMirror;
            ifnull 22
        19: .line 578
            aload 1 /* buffer */
            ldc " super "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 579
            aload 2 /* wt */
            invokeinterface javax.lang.model.type.WildcardType.getSuperBound:()Ljavax/lang/model/type/TypeMirror;
            aload 1 /* buffer */
            invokestatic io.vertx.codegen.Helper.toString:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/StringBuilder;)V
        21: .line 580
            goto 45
      StackMap locals: javax.lang.model.type.WildcardType
      StackMap stack:
        22: aload 2 /* wt */
            invokeinterface javax.lang.model.type.WildcardType.getExtendsBound:()Ljavax/lang/model/type/TypeMirror;
            ifnull 45
        23: .line 581
            aload 1 /* buffer */
            ldc " extends "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        24: .line 582
            aload 2 /* wt */
            invokeinterface javax.lang.model.type.WildcardType.getExtendsBound:()Ljavax/lang/model/type/TypeMirror;
            aload 1 /* buffer */
            invokestatic io.vertx.codegen.Helper.toString:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/StringBuilder;)V
        25: .line 584
            goto 45
        end local 2 // javax.lang.model.type.WildcardType wt
        26: .line 587
      StackMap locals:
      StackMap stack:
            aload 0 /* mirror */
            checkcast javax.lang.model.type.TypeVariable
            astore 2 /* tv */
        start local 2 // javax.lang.model.type.TypeVariable tv
        27: .line 588
            aload 2 /* tv */
            invokeinterface javax.lang.model.type.TypeVariable.asElement:()Ljavax/lang/model/element/Element;
            checkcast javax.lang.model.element.TypeParameterElement
            astore 3 /* elt */
        start local 3 // javax.lang.model.element.TypeParameterElement elt
        28: .line 589
            aload 1 /* buffer */
            aload 3 /* elt */
            invokeinterface javax.lang.model.element.TypeParameterElement.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;
            pop
        29: .line 590
            aload 2 /* tv */
            invokeinterface javax.lang.model.type.TypeVariable.getUpperBound:()Ljavax/lang/model/type/TypeMirror;
            ifnull 33
            aload 2 /* tv */
            invokeinterface javax.lang.model.type.TypeVariable.getUpperBound:()Ljavax/lang/model/type/TypeMirror;
            invokeinterface javax.lang.model.type.TypeMirror.toString:()Ljava/lang/String;
            ldc "java.lang.Object"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 33
        30: .line 591
            aload 1 /* buffer */
            ldc " extends "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        31: .line 592
            aload 2 /* tv */
            invokeinterface javax.lang.model.type.TypeVariable.getUpperBound:()Ljavax/lang/model/type/TypeMirror;
            aload 1 /* buffer */
            invokestatic io.vertx.codegen.Helper.toString:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/StringBuilder;)V
        32: .line 593
            goto 45
      StackMap locals: javax.lang.model.type.TypeVariable javax.lang.model.element.TypeParameterElement
      StackMap stack:
        33: aload 2 /* tv */
            invokeinterface javax.lang.model.type.TypeVariable.getLowerBound:()Ljavax/lang/model/type/TypeMirror;
            ifnull 45
            aload 2 /* tv */
            invokeinterface javax.lang.model.type.TypeVariable.getLowerBound:()Ljavax/lang/model/type/TypeMirror;
            invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
            getstatic javax.lang.model.type.TypeKind.NULL:Ljavax/lang/model/type/TypeKind;
            if_acmpeq 45
        34: .line 594
            aload 1 /* buffer */
            ldc " super "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        35: .line 595
            aload 2 /* tv */
            invokeinterface javax.lang.model.type.TypeVariable.getUpperBound:()Ljavax/lang/model/type/TypeMirror;
            aload 1 /* buffer */
            invokestatic io.vertx.codegen.Helper.toString:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/StringBuilder;)V
        36: .line 597
            goto 45
        end local 3 // javax.lang.model.element.TypeParameterElement elt
        end local 2 // javax.lang.model.type.TypeVariable tv
        37: .line 607
      StackMap locals:
      StackMap stack:
            aload 0 /* mirror */
            checkcast javax.lang.model.type.PrimitiveType
            astore 2 /* pm */
        start local 2 // javax.lang.model.type.PrimitiveType pm
        38: .line 608
            aload 1 /* buffer */
            aload 2 /* pm */
            invokeinterface javax.lang.model.type.PrimitiveType.getKind:()Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.name:()Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        39: .line 609
            goto 45
        end local 2 // javax.lang.model.type.PrimitiveType pm
        40: .line 612
      StackMap locals:
      StackMap stack:
            aload 0 /* mirror */
            checkcast javax.lang.model.type.ArrayType
            astore 2 /* at */
        start local 2 // javax.lang.model.type.ArrayType at
        41: .line 613
            aload 2 /* at */
            invokeinterface javax.lang.model.type.ArrayType.getComponentType:()Ljavax/lang/model/type/TypeMirror;
            aload 1 /* buffer */
            invokestatic io.vertx.codegen.Helper.toString:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/StringBuilder;)V
        42: .line 614
            aload 1 /* buffer */
            ldc "[]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        43: .line 615
            goto 45
        end local 2 // javax.lang.model.type.ArrayType at
        44: .line 618
      StackMap locals:
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "todo "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* mirror */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* mirror */
            invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        45: .line 620
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.StringBuilder buffer
        end local 0 // javax.lang.model.type.TypeMirror mirror
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   46     0  mirror  Ljavax/lang/model/type/TypeMirror;
            0   46     1  buffer  Ljava/lang/StringBuilder;
            2   16     2      dt  Ljavax/lang/model/type/DeclaredType;
            3   16     3     elt  Ljavax/lang/model/element/TypeElement;
            5   16     4    args  Ljava/util/List<+Ljavax/lang/model/type/TypeMirror;>;
            8   14     5       i  I
           17   26     2      wt  Ljavax/lang/model/type/WildcardType;
           27   37     2      tv  Ljavax/lang/model/type/TypeVariable;
           28   37     3     elt  Ljavax/lang/model/element/TypeParameterElement;
           38   40     2      pm  Ljavax/lang/model/type/PrimitiveType;
           41   44     2      at  Ljavax/lang/model/type/ArrayType;
    MethodParameters:
        Name  Flags
      mirror  
      buffer  

  public static java.lang.reflect.Method getReflectMethod(javax.annotation.processing.ProcessingEnvironment, javax.lang.model.element.ExecutableElement);
    descriptor: (Ljavax/annotation/processing/ProcessingEnvironment;Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/reflect/Method;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javax.annotation.processing.ProcessingEnvironment env
        start local 1 // javax.lang.model.element.ExecutableElement modelMethod
         0: .line 626
            getstatic io.vertx.codegen.CodeGen.loaderMap:Ljava/util/Map;
            aload 0 /* env */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.ClassLoader
            astore 2 /* loader */
        start local 2 // java.lang.ClassLoader loader
         1: .line 627
            aload 2 /* loader */
            ifnull 3
         2: .line 628
            aload 2 /* loader */
            aload 1 /* modelMethod */
            invokestatic io.vertx.codegen.Helper.getReflectMethod:(Ljava/lang/ClassLoader;Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/reflect/Method;
            areturn
         3: .line 630
      StackMap locals: java.lang.ClassLoader
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.ClassLoader loader
        end local 1 // javax.lang.model.element.ExecutableElement modelMethod
        end local 0 // javax.annotation.processing.ProcessingEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0          env  Ljavax/annotation/processing/ProcessingEnvironment;
            0    4     1  modelMethod  Ljavax/lang/model/element/ExecutableElement;
            1    4     2       loader  Ljava/lang/ClassLoader;
    MethodParameters:
             Name  Flags
      env          
      modelMethod  

  public static java.lang.reflect.Method getReflectMethod(java.lang.ClassLoader, javax.lang.model.element.ExecutableElement);
    descriptor: (Ljava/lang/ClassLoader;Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/reflect/Method;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=14, args_size=2
        start local 0 // java.lang.ClassLoader loader
        start local 1 // javax.lang.model.element.ExecutableElement modelMethod
         0: .line 641
            aload 1 /* modelMethod */
            invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
            checkcast javax.lang.model.element.TypeElement
            astore 2 /* typeElt */
        start local 2 // javax.lang.model.element.TypeElement typeElt
         1: .line 642
            aconst_null
            astore 3 /* method */
        start local 3 // java.lang.reflect.Method method
         2: .line 644
            aload 0 /* loader */
            aload 2 /* typeElt */
            invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 4 /* clazz */
        start local 4 // java.lang.Class clazz
         3: .line 645
            new java.lang.StringBuilder
            dup
            aload 1 /* modelMethod */
            invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/CharSequence;)V
            astore 5 /* sb */
        start local 5 // java.lang.StringBuilder sb
         4: .line 646
            aload 5 /* sb */
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 647
            aload 1 /* modelMethod */
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            astore 6 /* params */
        start local 6 // java.util.List params
         6: .line 648
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         7: goto 13
         8: .line 649
      StackMap locals: java.lang.ClassLoader javax.lang.model.element.ExecutableElement javax.lang.model.element.TypeElement java.lang.reflect.Method java.lang.Class java.lang.StringBuilder java.util.List int
      StackMap stack:
            iload 7 /* i */
            ifle 10
         9: .line 650
            aload 5 /* sb */
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 652
      StackMap locals:
      StackMap stack:
            aload 6 /* params */
            iload 7 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.lang.model.element.VariableElement
            astore 8 /* param */
        start local 8 // javax.lang.model.element.VariableElement param
        11: .line 653
            aload 8 /* param */
            invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
            aload 5 /* sb */
            invokestatic io.vertx.codegen.Helper.toString:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/StringBuilder;)V
        end local 8 // javax.lang.model.element.VariableElement param
        12: .line 648
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 7 /* i */
            aload 6 /* params */
            invokeinterface java.util.List.size:()I
            if_icmplt 8
        end local 7 // int i
        14: .line 655
            aload 5 /* sb */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 656
            aload 5 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* s */
        start local 7 // java.lang.String s
        16: .line 657
            aload 4 /* clazz */
            invokevirtual java.lang.Class.getMethods:()[Ljava/lang/reflect/Method;
            dup
            astore 11
            arraylength
            istore 10
            iconst_0
            istore 9
            goto 30
      StackMap locals: java.lang.ClassLoader javax.lang.model.element.ExecutableElement javax.lang.model.element.TypeElement java.lang.reflect.Method java.lang.Class java.lang.StringBuilder java.util.List java.lang.String top int int java.lang.reflect.Method[]
      StackMap stack:
        17: aload 11
            iload 9
            aaload
            astore 8 /* m */
        start local 8 // java.lang.reflect.Method m
        18: .line 658
            aload 8 /* m */
            invokevirtual java.lang.reflect.Method.toGenericString:()Ljava/lang/String;
            astore 12 /* sign */
        start local 12 // java.lang.String sign
        19: .line 659
            aload 12 /* sign */
            bipush 40
            invokevirtual java.lang.String.indexOf:(I)I
            istore 13 /* pos */
        start local 13 // int pos
        20: .line 660
            aload 12 /* sign */
            bipush 46
            iload 13 /* pos */
            invokevirtual java.lang.String.lastIndexOf:(II)I
            iconst_1
            iadd
            istore 13 /* pos */
        21: .line 661
            aload 12 /* sign */
            iload 13 /* pos */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 12 /* sign */
        22: .line 662
            aload 12 /* sign */
            ldc ", "
            ldc ","
            invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
            astore 12 /* sign */
        23: .line 663
            aload 12 /* sign */
            aload 7 /* s */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 29
        24: .line 665
            aload 3 /* method */
            ifnull 28
        25: .line 666
            aload 3 /* method */
            invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
            aload 8 /* m */
            invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 29
        26: .line 667
            aload 8 /* m */
            astore 3 /* method */
        27: .line 669
            goto 29
        28: .line 670
      StackMap locals: java.lang.ClassLoader javax.lang.model.element.ExecutableElement javax.lang.model.element.TypeElement java.lang.reflect.Method java.lang.Class java.lang.StringBuilder java.util.List java.lang.String java.lang.reflect.Method int int java.lang.reflect.Method[] java.lang.String int
      StackMap stack:
            aload 8 /* m */
            astore 3 /* method */
        end local 13 // int pos
        end local 12 // java.lang.String sign
        end local 8 // java.lang.reflect.Method m
        29: .line 657
      StackMap locals: java.lang.ClassLoader javax.lang.model.element.ExecutableElement javax.lang.model.element.TypeElement java.lang.reflect.Method java.lang.Class java.lang.StringBuilder java.util.List java.lang.String top int int java.lang.reflect.Method[]
      StackMap stack:
            iinc 9 1
      StackMap locals:
      StackMap stack:
        30: iload 9
            iload 10
            if_icmplt 17
        end local 7 // java.lang.String s
        end local 6 // java.util.List params
        end local 5 // java.lang.StringBuilder sb
        end local 4 // java.lang.Class clazz
        31: .line 674
            goto 33
      StackMap locals: java.lang.ClassLoader javax.lang.model.element.ExecutableElement javax.lang.model.element.TypeElement java.lang.reflect.Method
      StackMap stack: java.lang.ClassNotFoundException
        32: pop
        33: .line 676
      StackMap locals:
      StackMap stack:
            aload 3 /* method */
            areturn
        end local 3 // java.lang.reflect.Method method
        end local 2 // javax.lang.model.element.TypeElement typeElt
        end local 1 // javax.lang.model.element.ExecutableElement modelMethod
        end local 0 // java.lang.ClassLoader loader
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   34     0       loader  Ljava/lang/ClassLoader;
            0   34     1  modelMethod  Ljavax/lang/model/element/ExecutableElement;
            1   34     2      typeElt  Ljavax/lang/model/element/TypeElement;
            2   34     3       method  Ljava/lang/reflect/Method;
            3   31     4        clazz  Ljava/lang/Class<*>;
            4   31     5           sb  Ljava/lang/StringBuilder;
            6   31     6       params  Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
            7   14     7            i  I
           11   12     8        param  Ljavax/lang/model/element/VariableElement;
           16   31     7            s  Ljava/lang/String;
           18   29     8            m  Ljava/lang/reflect/Method;
           19   29    12         sign  Ljava/lang/String;
           20   29    13          pos  I
      Exception table:
        from    to  target  type
           2    31      32  Class java.lang.ClassNotFoundException
    MethodParameters:
             Name  Flags
      loader       
      modelMethod  

  public static io.vertx.codegen.type.ClassKind getAnnotatedDataObjectAnnotatedSerializationType(javax.lang.model.util.Elements, javax.lang.model.element.TypeElement);
    descriptor: (Ljavax/lang/model/util/Elements;Ljavax/lang/model/element/TypeElement;)Lio/vertx/codegen/type/ClassKind;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.lang.model.util.Elements elementUtils
        start local 1 // javax.lang.model.element.TypeElement dataObjectElt
         0: .line 680
            aload 0 /* elementUtils */
            aload 1 /* dataObjectElt */
            invokeinterface javax.lang.model.util.Elements.getAllMembers:(Ljavax/lang/model/element/TypeElement;)Ljava/util/List;
         1: .line 681
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         2: .line 682
            getstatic io.vertx.codegen.Helper.FILTER_METHOD:Ljava/util/function/Function;
            invokeinterface java.util.stream.Stream.flatMap:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         3: .line 683
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$15(Ljavax/lang/model/element/ExecutableElement;)Z (6)
                  (Ljavax/lang/model/element/ExecutableElement;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         4: .line 684
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/codegen/Helper.lambda$16(Ljavax/lang/model/element/ExecutableElement;)Ljava/util/stream/Stream; (6)
                  (Ljavax/lang/model/element/ExecutableElement;)Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.flatMap:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         5: .line 694
            invokeinterface java.util.stream.Stream.findFirst:()Ljava/util/Optional;
         6: .line 695
            aconst_null
            invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.vertx.codegen.type.ClassKind
         7: .line 680
            areturn
        end local 1 // javax.lang.model.element.TypeElement dataObjectElt
        end local 0 // javax.lang.model.util.Elements elementUtils
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0   elementUtils  Ljavax/lang/model/util/Elements;
            0    8     1  dataObjectElt  Ljavax/lang/model/element/TypeElement;
    MethodParameters:
               Name  Flags
      elementUtils   
      dataObjectElt  

  public static boolean isConcreteClass(javax.lang.model.element.TypeElement);
    descriptor: (Ljavax/lang/model/element/TypeElement;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.TypeElement element
         0: .line 699
            aload 0 /* element */
            invokeinterface javax.lang.model.element.TypeElement.getKind:()Ljavax/lang/model/element/ElementKind;
            getstatic javax.lang.model.element.ElementKind.CLASS:Ljavax/lang/model/element/ElementKind;
            if_acmpne 1
            aload 0 /* element */
            invokeinterface javax.lang.model.element.TypeElement.getModifiers:()Ljava/util/Set;
            getstatic javax.lang.model.element.Modifier.ABSTRACT:Ljavax/lang/model/element/Modifier;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // javax.lang.model.element.TypeElement element
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  element  Ljavax/lang/model/element/TypeElement;
    MethodParameters:
         Name  Flags
      element  

  public static boolean isAbstractClassOrInterface(javax.lang.model.element.TypeElement);
    descriptor: (Ljavax/lang/model/element/TypeElement;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.TypeElement element
         0: .line 703
            aload 0 /* element */
            invokeinterface javax.lang.model.element.TypeElement.getKind:()Ljavax/lang/model/element/ElementKind;
            invokevirtual javax.lang.model.element.ElementKind.isInterface:()Z
            ifne 3
         1: .line 704
            aload 0 /* element */
            invokeinterface javax.lang.model.element.TypeElement.getKind:()Ljavax/lang/model/element/ElementKind;
            getstatic javax.lang.model.element.ElementKind.CLASS:Ljavax/lang/model/element/ElementKind;
            if_acmpne 2
            aload 0 /* element */
            invokeinterface javax.lang.model.element.TypeElement.getModifiers:()Ljava/util/Set;
            getstatic javax.lang.model.element.Modifier.ABSTRACT:Ljavax/lang/model/element/Modifier;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 3
         2: .line 703
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 0 // javax.lang.model.element.TypeElement element
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  element  Ljavax/lang/model/element/TypeElement;
    MethodParameters:
         Name  Flags
      element  

  public static io.vertx.codegen.type.ClassKind getAnnotatedDataObjectDeserialisationType(javax.lang.model.util.Elements, javax.lang.model.util.Types, javax.lang.model.element.TypeElement);
    descriptor: (Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/TypeElement;)Lio/vertx/codegen/type/ClassKind;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // javax.lang.model.util.Elements elementUtils
        start local 1 // javax.lang.model.util.Types typeUtils
        start local 2 // javax.lang.model.element.TypeElement dataObjectElt
         0: .line 710
            aload 2 /* dataObjectElt */
            invokestatic io.vertx.codegen.Helper.isConcreteClass:(Ljavax/lang/model/element/TypeElement;)Z
            ifeq 14
         1: .line 711
            aload 0 /* elementUtils */
         2: .line 712
            aload 2 /* dataObjectElt */
            invokeinterface javax.lang.model.util.Elements.getAllMembers:(Ljavax/lang/model/element/TypeElement;)Ljava/util/List;
         3: .line 713
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         4: .line 714
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$17(Ljavax/lang/model/element/Element;)Z (6)
                  (Ljavax/lang/model/element/Element;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         5: .line 715
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/codegen/Helper.lambda$18(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/ExecutableElement; (6)
                  (Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/ExecutableElement;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         6: .line 716
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$19(Ljavax/lang/model/element/ExecutableElement;)Z (6)
                  (Ljavax/lang/model/element/ExecutableElement;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         7: .line 720
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/vertx/codegen/Helper.lambda$20(Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/String; (6)
                  (Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         8: .line 721
            invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Set
         9: .line 711
            astore 3 /* types */
        start local 3 // java.util.Set types
        10: .line 723
            aload 3 /* types */
            ldc "io.vertx.core.json.JsonObject"
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 12
        11: .line 724
            getstatic io.vertx.codegen.type.ClassKind.JSON_OBJECT:Lio/vertx/codegen/type/ClassKind;
            areturn
        12: .line 725
      StackMap locals: java.util.Set
      StackMap stack:
            aload 3 /* types */
            ldc "java.lang.String"
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 14
        13: .line 726
            getstatic io.vertx.codegen.type.ClassKind.STRING:Lio/vertx/codegen/type/ClassKind;
            areturn
        end local 3 // java.util.Set types
        14: .line 729
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // javax.lang.model.element.TypeElement dataObjectElt
        end local 1 // javax.lang.model.util.Types typeUtils
        end local 0 // javax.lang.model.util.Elements elementUtils
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   15     0   elementUtils  Ljavax/lang/model/util/Elements;
            0   15     1      typeUtils  Ljavax/lang/model/util/Types;
            0   15     2  dataObjectElt  Ljavax/lang/model/element/TypeElement;
           10   14     3          types  Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
               Name  Flags
      elementUtils   
      typeUtils      
      dataObjectElt  

  public static boolean isGenIgnore(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.Element elt
         0: .line 737
            aload 0 /* elt */
            ldc Lio/vertx/codegen/annotations/GenIgnore;
            invokeinterface javax.lang.model.element.Element.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // javax.lang.model.element.Element elt
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   elt  Ljavax/lang/model/element/Element;
    MethodParameters:
      Name  Flags
      elt   

  static int[] $SWITCH_TABLE$javax$lang$model$type$TypeKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 44
            getstatic io.vertx.codegen.Helper.$SWITCH_TABLE$javax$lang$model$type$TypeKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic javax.lang.model.type.TypeKind.values:()[Ljavax/lang/model/type/TypeKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic javax.lang.model.type.TypeKind.ARRAY:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 12
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic javax.lang.model.type.TypeKind.BOOLEAN:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic javax.lang.model.type.TypeKind.BYTE:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic javax.lang.model.type.TypeKind.CHAR:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 6
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic javax.lang.model.type.TypeKind.DECLARED:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 13
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic javax.lang.model.type.TypeKind.DOUBLE:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 8
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic javax.lang.model.type.TypeKind.ERROR:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 14
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic javax.lang.model.type.TypeKind.EXECUTABLE:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 18
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic javax.lang.model.type.TypeKind.FLOAT:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 7
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic javax.lang.model.type.TypeKind.INT:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            iconst_4
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic javax.lang.model.type.TypeKind.INTERSECTION:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 21
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic javax.lang.model.type.TypeKind.LONG:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            iconst_5
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic javax.lang.model.type.TypeKind.NONE:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 10
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic javax.lang.model.type.TypeKind.NULL:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 11
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic javax.lang.model.type.TypeKind.OTHER:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 19
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic javax.lang.model.type.TypeKind.PACKAGE:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 17
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic javax.lang.model.type.TypeKind.SHORT:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            iconst_3
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic javax.lang.model.type.TypeKind.TYPEVAR:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 15
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic javax.lang.model.type.TypeKind.UNION:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 20
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic javax.lang.model.type.TypeKind.VOID:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 9
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic javax.lang.model.type.TypeKind.WILDCARD:Ljavax/lang/model/type/TypeKind;
            invokevirtual javax.lang.model.type.TypeKind.ordinal:()I
            bipush 16
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            dup
            putstatic io.vertx.codegen.Helper.$SWITCH_TABLE$javax$lang$model$type$TypeKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError

  private static java.util.stream.Stream lambda$1(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Ljava/util/stream/Stream;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.Element element
         0: .line 47
            aload 0 /* element */
            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 2
         1: .line 48
            aload 0 /* element */
            checkcast javax.lang.model.element.ExecutableElement
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
         2: .line 50
      StackMap locals:
      StackMap stack:
            invokestatic java.util.stream.Stream.empty:()Ljava/util/stream/Stream;
            areturn
        end local 0 // javax.lang.model.element.Element element
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  element  Ljavax/lang/model/element/Element;

  private static java.util.stream.Stream lambda$0(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Ljava/util/stream/Stream;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.Element element
         0: .line 55
            aload 0 /* element */
            invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
            getstatic javax.lang.model.element.ElementKind.FIELD:Ljavax/lang/model/element/ElementKind;
            if_acmpne 2
         1: .line 56
            aload 0 /* element */
            checkcast javax.lang.model.element.VariableElement
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
         2: .line 58
      StackMap locals:
      StackMap stack:
            invokestatic java.util.stream.Stream.empty:()Ljava/util/stream/Stream;
            areturn
        end local 0 // javax.lang.model.element.Element element
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  element  Ljavax/lang/model/element/Element;

  private static java.util.stream.Stream lambda$2(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Ljava/util/stream/Stream;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.Element element
         0: .line 77
            aload 0 /* element */
            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 2
         1: .line 78
            aload 0 /* element */
            checkcast javax.lang.model.element.ExecutableElement
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
         2: .line 80
      StackMap locals:
      StackMap stack:
            invokestatic java.util.stream.Stream.empty:()Ljava/util/stream/Stream;
            areturn
        end local 0 // javax.lang.model.element.Element element
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  element  Ljavax/lang/model/element/Element;

  private static java.util.stream.Stream lambda$3(java.lang.Class, java.lang.Object);
    descriptor: (Ljava/lang/Class;Ljava/lang/Object;)Ljava/util/stream/Stream;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.Object o
         0: .line 64
            aload 0
            aload 1 /* o */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 65
            aload 0
            aload 1 /* o */
            invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
         2: .line 67
      StackMap locals:
      StackMap stack:
            invokestatic java.util.stream.Stream.empty:()Ljava/util/stream/Stream;
            areturn
        end local 1 // java.lang.Object o
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     1     o  Ljava/lang/Object;

  private static java.util.stream.Stream lambda$4(java.lang.Class, java.lang.Object);
    descriptor: (Ljava/lang/Class;Ljava/lang/Object;)Ljava/util/stream/Stream;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.Object o
         0: .line 73
            aload 0
            aload 1 /* o */
            invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
        end local 1 // java.lang.Object o
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     o  Ljava/lang/Object;

  private static boolean lambda$5(javax.lang.model.util.Types, javax.lang.model.type.DeclaredType, javax.lang.model.element.AnnotationMirror);
    descriptor: (Ljavax/lang/model/util/Types;Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/element/AnnotationMirror;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // javax.lang.model.element.AnnotationMirror mirror
         0: .line 229
            aload 0
            aload 2 /* mirror */
            invokeinterface javax.lang.model.element.AnnotationMirror.getAnnotationType:()Ljavax/lang/model/type/DeclaredType;
            aload 1
            invokeinterface javax.lang.model.util.Types.isSameType:(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z
            ireturn
        end local 2 // javax.lang.model.element.AnnotationMirror mirror
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     2  mirror  Ljavax/lang/model/element/AnnotationMirror;

  private static boolean lambda$6(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.Element member
         0: .line 243
            aload 0 /* member */
            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 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // javax.lang.model.element.Element member
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  member  Ljavax/lang/model/element/Element;

  private static javax.lang.model.element.ExecutableElement lambda$7(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/ExecutableElement;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.lang.model.element.Element member
         0: .line 243
            aload 0 /* member */
            checkcast javax.lang.model.element.ExecutableElement
            areturn
        end local 0 // javax.lang.model.element.Element member
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  member  Ljavax/lang/model/element/Element;

  private static boolean lambda$8(java.lang.reflect.TypeVariable, java.lang.reflect.TypeVariable);
    descriptor: (Ljava/lang/reflect/TypeVariable;Ljava/lang/reflect/TypeVariable;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.reflect.TypeVariable tp
         0: .line 301
            aload 1 /* tp */
            aload 0
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.reflect.TypeVariable tp
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1    tp  Ljava/lang/reflect/TypeVariable<Ljava/lang/Class<Ljava/lang/Object;>;>;

  private static boolean lambda$9(javax.lang.model.element.ExecutableElement);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.lang.model.element.ExecutableElement exeElt
         0: .line 366
            aload 0 /* exeElt */
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ireturn
        end local 0 // javax.lang.model.element.ExecutableElement exeElt
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  exeElt  Ljavax/lang/model/element/ExecutableElement;

  private static boolean lambda$10(java.lang.String, java.util.function.Predicate, javax.lang.model.element.Element);
    descriptor: (Ljava/lang/String;Ljava/util/function/Predicate;Ljavax/lang/model/element/Element;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // javax.lang.model.element.Element elt
         0: .line 370
            aload 2 /* elt */
            aload 0
            aload 1
            invokestatic io.vertx.codegen.Helper.matchesConstructor:(Ljavax/lang/model/element/Element;Ljava/lang/String;Ljava/util/function/Predicate;)Z
            ifne 1
            aload 2 /* elt */
            aload 0
            aload 1
            invokestatic io.vertx.codegen.Helper.matchesMethod:(Ljavax/lang/model/element/Element;Ljava/lang/String;Ljava/util/function/Predicate;)Z
            ifne 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 2 // javax.lang.model.element.Element elt
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     2   elt  Ljavax/lang/model/element/Element;

  private static boolean lambda$11(java.lang.String, javax.lang.model.element.Element);
    descriptor: (Ljava/lang/String;Ljavax/lang/model/element/Element;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // javax.lang.model.element.Element elt
         0: .line 372
            aload 1 /* elt */
            aload 0
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$12(Ljavax/lang/model/element/ExecutableElement;)Z (6)
                  (Ljavax/lang/model/element/ExecutableElement;)Z
            invokestatic io.vertx.codegen.Helper.matchesConstructor:(Ljavax/lang/model/element/Element;Ljava/lang/String;Ljava/util/function/Predicate;)Z
            ifne 3
         1: .line 373
            aload 1 /* elt */
            aload 0
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  io/vertx/codegen/Helper.lambda$13(Ljavax/lang/model/element/ExecutableElement;)Z (6)
                  (Ljavax/lang/model/element/ExecutableElement;)Z
            invokestatic io.vertx.codegen.Helper.matchesMethod:(Ljavax/lang/model/element/Element;Ljava/lang/String;Ljava/util/function/Predicate;)Z
            ifne 3
         2: .line 374
            aload 1 /* elt */
            aload 0
            invokestatic io.vertx.codegen.Helper.matchesField:(Ljavax/lang/model/element/Element;Ljava/lang/String;)Z
            ifne 3
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: ireturn
        end local 1 // javax.lang.model.element.Element elt
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     1   elt  Ljavax/lang/model/element/Element;

  private static boolean lambda$14(java.lang.String[], javax.lang.model.util.Types, javax.lang.model.element.ExecutableElement);
    descriptor: ([Ljava/lang/String;Ljavax/lang/model/util/Types;Ljavax/lang/model/element/ExecutableElement;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=8, args_size=3
        start local 2 // javax.lang.model.element.ExecutableElement exeElt
         0: .line 440
            aload 2 /* exeElt */
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            aload 0
            arraylength
            if_icmpne 14
         1: .line 441
            aload 2 /* exeElt */
            invokeinterface javax.lang.model.element.ExecutableElement.asType:()Ljavax/lang/model/type/TypeMirror;
            astore 3 /* tm2 */
        start local 3 // javax.lang.model.type.TypeMirror tm2
         2: .line 442
            aload 1
            aload 3 /* tm2 */
            invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
            checkcast javax.lang.model.type.ExecutableType
            astore 4 /* tm3 */
        start local 4 // javax.lang.model.type.ExecutableType tm3
         3: .line 443
            iconst_0
            istore 5 /* j */
        start local 5 // int j
         4: goto 12
         5: .line 444
      StackMap locals: javax.lang.model.type.TypeMirror javax.lang.model.type.ExecutableType int
      StackMap stack:
            aload 4 /* tm3 */
            invokeinterface javax.lang.model.type.ExecutableType.getParameterTypes:()Ljava/util/List;
            iload 5 /* j */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.lang.model.type.TypeMirror
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            astore 6 /* t1 */
        start local 6 // java.lang.String t1
         6: .line 445
            aload 0
            iload 5 /* j */
            aaload
            astore 7 /* t2 */
        start local 7 // java.lang.String t2
         7: .line 446
            aload 7 /* t2 */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpne 9
         8: .line 447
            aload 6 /* t1 */
            aload 6 /* t1 */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* t1 */
         9: .line 449
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 6 /* t1 */
            aload 7 /* t2 */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
        10: .line 450
            iconst_0
            ireturn
        end local 7 // java.lang.String t2
        end local 6 // java.lang.String t1
        11: .line 443
      StackMap locals:
      StackMap stack:
            iinc 5 /* j */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* j */
            aload 0
            arraylength
            if_icmplt 5
        end local 5 // int j
        13: .line 453
            iconst_1
            ireturn
        end local 4 // javax.lang.model.type.ExecutableType tm3
        end local 3 // javax.lang.model.type.TypeMirror tm2
        14: .line 455
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // javax.lang.model.element.ExecutableElement exeElt
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     2  exeElt  Ljavax/lang/model/element/ExecutableElement;
            2   14     3     tm2  Ljavax/lang/model/type/TypeMirror;
            3   14     4     tm3  Ljavax/lang/model/type/ExecutableType;
            4   13     5       j  I
            6   11     6      t1  Ljava/lang/String;
            7   11     7      t2  Ljava/lang/String;

  private static boolean lambda$15(javax.lang.model.element.ExecutableElement);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.ExecutableElement exeElt
         0: .line 683
            aload 0 /* exeElt */
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 1
            aload 0 /* exeElt */
            invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
            invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
            ldc "toJson"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // javax.lang.model.element.ExecutableElement exeElt
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  exeElt  Ljavax/lang/model/element/ExecutableElement;

  private static java.util.stream.Stream lambda$16(javax.lang.model.element.ExecutableElement);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;)Ljava/util/stream/Stream;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javax.lang.model.element.ExecutableElement exeElt
         0: .line 686
            aload 0 /* exeElt */
            invokeinterface javax.lang.model.element.ExecutableElement.getReturnType:()Ljavax/lang/model/type/TypeMirror;
            invokeinterface javax.lang.model.type.TypeMirror.toString:()Ljava/lang/String;
            dup
            astore 1
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
            668422861: 1
           1195259493: 2
              default: 5
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 1
            ldc "io.vertx.core.json.JsonObject"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            goto 5
      StackMap locals:
      StackMap stack:
         2: aload 1
            ldc "java.lang.String"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
            goto 5
         3: .line 688
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.codegen.type.ClassKind.JSON_OBJECT:Lio/vertx/codegen/type/ClassKind;
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
         4: .line 690
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.codegen.type.ClassKind.STRING:Lio/vertx/codegen/type/ClassKind;
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
            areturn
         5: .line 692
      StackMap locals:
      StackMap stack:
            invokestatic java.util.stream.Stream.empty:()Ljava/util/stream/Stream;
            areturn
        end local 0 // javax.lang.model.element.ExecutableElement exeElt
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0  exeElt  Ljavax/lang/model/element/ExecutableElement;

  private static boolean lambda$17(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.Element e
         0: .line 714
            aload 0 /* e */
            invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
            getstatic javax.lang.model.element.ElementKind.CONSTRUCTOR:Ljavax/lang/model/element/ElementKind;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // javax.lang.model.element.Element e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     e  Ljavax/lang/model/element/Element;

  private static javax.lang.model.element.ExecutableElement lambda$18(javax.lang.model.element.Element);
    descriptor: (Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/ExecutableElement;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.lang.model.element.Element e
         0: .line 715
            aload 0 /* e */
            checkcast javax.lang.model.element.ExecutableElement
            areturn
        end local 0 // javax.lang.model.element.Element e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     e  Ljavax/lang/model/element/Element;

  private static boolean lambda$19(javax.lang.model.element.ExecutableElement);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.lang.model.element.ExecutableElement constructor
         0: .line 717
            aload 0 /* constructor */
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 3
         1: .line 718
            aload 0 /* constructor */
            invokeinterface javax.lang.model.element.ExecutableElement.getModifiers:()Ljava/util/Set;
            getstatic javax.lang.model.element.Modifier.PUBLIC:Ljavax/lang/model/element/Modifier;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 719
            getstatic io.vertx.codegen.Helper.dataObjectTypes:Ljava/util/Set;
            aload 0 /* constructor */
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.lang.model.element.VariableElement
            invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
            invokeinterface javax.lang.model.type.TypeMirror.toString:()Ljava/lang/String;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: ireturn
        end local 0 // javax.lang.model.element.ExecutableElement constructor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0  constructor  Ljavax/lang/model/element/ExecutableElement;

  private static java.lang.String lambda$20(javax.lang.model.element.ExecutableElement);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.lang.model.element.ExecutableElement ctor
         0: .line 720
            aload 0 /* ctor */
            invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.lang.model.element.VariableElement
            invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
            invokeinterface javax.lang.model.type.TypeMirror.toString:()Ljava/lang/String;
            areturn
        end local 0 // javax.lang.model.element.ExecutableElement ctor
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  ctor  Ljavax/lang/model/element/ExecutableElement;

  private static boolean lambda$12(javax.lang.model.element.ExecutableElement);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.lang.model.element.ExecutableElement exeElt
         0: .line 372
            iconst_1
            ireturn
        end local 0 // javax.lang.model.element.ExecutableElement exeElt
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  exeElt  Ljavax/lang/model/element/ExecutableElement;

  private static boolean lambda$13(javax.lang.model.element.ExecutableElement);
    descriptor: (Ljavax/lang/model/element/ExecutableElement;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.lang.model.element.ExecutableElement exeElt
         0: .line 373
            iconst_1
            ireturn
        end local 0 // javax.lang.model.element.ExecutableElement exeElt
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  exeElt  Ljavax/lang/model/element/ExecutableElement;
}
SourceFile: "Helper.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles