public class io.vertx.codetrans.expression.AsyncResultModel extends io.vertx.codetrans.expression.ExpressionModel
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.codetrans.expression.AsyncResultModel
  super_class: io.vertx.codetrans.expression.ExpressionModel
{
  final java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

  final io.vertx.codegen.type.TypeInfo type;
    descriptor: Lio/vertx/codegen/type/TypeInfo;
    flags: (0x0010) ACC_FINAL

  public void <init>(io.vertx.codetrans.CodeBuilder, java.lang.String, io.vertx.codegen.type.TypeInfo);
    descriptor: (Lio/vertx/codetrans/CodeBuilder;Ljava/lang/String;Lio/vertx/codegen/type/TypeInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // io.vertx.codetrans.expression.AsyncResultModel this
        start local 1 // io.vertx.codetrans.CodeBuilder builder
        start local 2 // java.lang.String name
        start local 3 // io.vertx.codegen.type.TypeInfo type
         0: .line 20
            aload 0 /* this */
            aload 1 /* builder */
            invokespecial io.vertx.codetrans.expression.ExpressionModel.<init>:(Lio/vertx/codetrans/CodeBuilder;)V
         1: .line 21
            aload 0 /* this */
            aload 2 /* name */
            putfield io.vertx.codetrans.expression.AsyncResultModel.name:Ljava/lang/String;
         2: .line 22
            aload 0 /* this */
            aload 3 /* type */
            putfield io.vertx.codetrans.expression.AsyncResultModel.type:Lio/vertx/codegen/type/TypeInfo;
         3: .line 23
            return
        end local 3 // io.vertx.codegen.type.TypeInfo type
        end local 2 // java.lang.String name
        end local 1 // io.vertx.codetrans.CodeBuilder builder
        end local 0 // io.vertx.codetrans.expression.AsyncResultModel this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/codetrans/expression/AsyncResultModel;
            0    4     1  builder  Lio/vertx/codetrans/CodeBuilder;
            0    4     2     name  Ljava/lang/String;
            0    4     3     type  Lio/vertx/codegen/type/TypeInfo;
    MethodParameters:
         Name  Flags
      builder  
      name     
      type     

  public io.vertx.codetrans.expression.ExpressionModel onMethodInvocation(io.vertx.codegen.type.TypeInfo, io.vertx.codetrans.MethodSignature, io.vertx.codegen.type.TypeInfo, java.util.List<io.vertx.codetrans.TypeArg>, java.util.List<io.vertx.codetrans.expression.ExpressionModel>, java.util.List<io.vertx.codegen.type.TypeInfo>);
    descriptor: (Lio/vertx/codegen/type/TypeInfo;Lio/vertx/codetrans/MethodSignature;Lio/vertx/codegen/type/TypeInfo;Ljava/util/List;Ljava/util/List;Ljava/util/List;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=7
        start local 0 // io.vertx.codetrans.expression.AsyncResultModel this
        start local 1 // io.vertx.codegen.type.TypeInfo receiverType
        start local 2 // io.vertx.codetrans.MethodSignature method
        start local 3 // io.vertx.codegen.type.TypeInfo returnType
        start local 4 // java.util.List typeArguments
        start local 5 // java.util.List argumentModels
        start local 6 // java.util.List argumentTypes
         0: .line 27
            aload 2 /* method */
            invokevirtual io.vertx.codetrans.MethodSignature.getName:()Ljava/lang/String;
            dup
            astore 7
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 4
          -1281977283: 1
           -934426595: 2
             94434409: 3
            945734241: 4
              default: 9
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 7
            ldc "failed"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
            goto 9
      StackMap locals:
      StackMap stack:
         2: aload 7
            ldc "result"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
            goto 9
      StackMap locals:
      StackMap stack:
         3: aload 7
            ldc "cause"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
            goto 9
      StackMap locals:
      StackMap stack:
         4: aload 7
            ldc "succeeded"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
            goto 9
         5: .line 29
      StackMap locals:
      StackMap stack:
            new io.vertx.codetrans.expression.AsyncResultModel$Succeeded
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.codetrans.expression.AsyncResultModel.builder:Lio/vertx/codetrans/CodeBuilder;
            invokespecial io.vertx.codetrans.expression.AsyncResultModel$Succeeded.<init>:(Lio/vertx/codetrans/expression/AsyncResultModel;Lio/vertx/codetrans/CodeBuilder;)V
            areturn
         6: .line 31
      StackMap locals:
      StackMap stack:
            new io.vertx.codetrans.expression.AsyncResultModel$Failed
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.codetrans.expression.AsyncResultModel.builder:Lio/vertx/codetrans/CodeBuilder;
            invokespecial io.vertx.codetrans.expression.AsyncResultModel$Failed.<init>:(Lio/vertx/codetrans/expression/AsyncResultModel;Lio/vertx/codetrans/CodeBuilder;)V
            areturn
         7: .line 33
      StackMap locals:
      StackMap stack:
            new io.vertx.codetrans.expression.AsyncResultModel$Cause
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.codetrans.expression.AsyncResultModel.builder:Lio/vertx/codetrans/CodeBuilder;
            invokespecial io.vertx.codetrans.expression.AsyncResultModel$Cause.<init>:(Lio/vertx/codetrans/expression/AsyncResultModel;Lio/vertx/codetrans/CodeBuilder;)V
            areturn
         8: .line 35
      StackMap locals:
      StackMap stack:
            new io.vertx.codetrans.expression.AsyncResultModel$Value
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.codetrans.expression.AsyncResultModel.builder:Lio/vertx/codetrans/CodeBuilder;
            invokespecial io.vertx.codetrans.expression.AsyncResultModel$Value.<init>:(Lio/vertx/codetrans/expression/AsyncResultModel;Lio/vertx/codetrans/CodeBuilder;)V
            aload 0 /* this */
            getfield io.vertx.codetrans.expression.AsyncResultModel.type:Lio/vertx/codegen/type/TypeInfo;
            invokevirtual io.vertx.codetrans.expression.AsyncResultModel$Value.as:(Lio/vertx/codegen/type/TypeInfo;)Lio/vertx/codetrans/expression/ExpressionModel;
            areturn
         9: .line 37
      StackMap locals:
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 6 // java.util.List argumentTypes
        end local 5 // java.util.List argumentModels
        end local 4 // java.util.List typeArguments
        end local 3 // io.vertx.codegen.type.TypeInfo returnType
        end local 2 // io.vertx.codetrans.MethodSignature method
        end local 1 // io.vertx.codegen.type.TypeInfo receiverType
        end local 0 // io.vertx.codetrans.expression.AsyncResultModel this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Lio/vertx/codetrans/expression/AsyncResultModel;
            0   10     1    receiverType  Lio/vertx/codegen/type/TypeInfo;
            0   10     2          method  Lio/vertx/codetrans/MethodSignature;
            0   10     3      returnType  Lio/vertx/codegen/type/TypeInfo;
            0   10     4   typeArguments  Ljava/util/List<Lio/vertx/codetrans/TypeArg;>;
            0   10     5  argumentModels  Ljava/util/List<Lio/vertx/codetrans/expression/ExpressionModel;>;
            0   10     6   argumentTypes  Ljava/util/List<Lio/vertx/codegen/type/TypeInfo;>;
    Signature: (Lio/vertx/codegen/type/TypeInfo;Lio/vertx/codetrans/MethodSignature;Lio/vertx/codegen/type/TypeInfo;Ljava/util/List<Lio/vertx/codetrans/TypeArg;>;Ljava/util/List<Lio/vertx/codetrans/expression/ExpressionModel;>;Ljava/util/List<Lio/vertx/codegen/type/TypeInfo;>;)Lio/vertx/codetrans/expression/ExpressionModel;
    MethodParameters:
                Name  Flags
      receiverType    
      method          
      returnType      
      typeArguments   
      argumentModels  
      argumentTypes   

  public void render(io.vertx.codetrans.CodeWriter);
    descriptor: (Lio/vertx/codetrans/CodeWriter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.codetrans.expression.AsyncResultModel this
        start local 1 // io.vertx.codetrans.CodeWriter writer
         0: .line 43
            new java.lang.UnsupportedOperationException
            dup
            ldc "It is not be possible to render an async result directly"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // io.vertx.codetrans.CodeWriter writer
        end local 0 // io.vertx.codetrans.expression.AsyncResultModel this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lio/vertx/codetrans/expression/AsyncResultModel;
            0    1     1  writer  Lio/vertx/codetrans/CodeWriter;
    MethodParameters:
        Name  Flags
      writer  
}
SourceFile: "AsyncResultModel.java"
NestMembers:
  io.vertx.codetrans.expression.AsyncResultModel$Cause  io.vertx.codetrans.expression.AsyncResultModel$Failed  io.vertx.codetrans.expression.AsyncResultModel$Succeeded  io.vertx.codetrans.expression.AsyncResultModel$Value
InnerClasses:
  public Cause = io.vertx.codetrans.expression.AsyncResultModel$Cause of io.vertx.codetrans.expression.AsyncResultModel
  public Failed = io.vertx.codetrans.expression.AsyncResultModel$Failed of io.vertx.codetrans.expression.AsyncResultModel
  public Succeeded = io.vertx.codetrans.expression.AsyncResultModel$Succeeded of io.vertx.codetrans.expression.AsyncResultModel
  public Value = io.vertx.codetrans.expression.AsyncResultModel$Value of io.vertx.codetrans.expression.AsyncResultModel