public interface io.vertx.codetrans.CodeBuilder
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: io.vertx.codetrans.CodeBuilder
  super_class: java.lang.Object
{
  public abstract io.vertx.codetrans.CodeWriter newWriter();
    descriptor: ()Lio/vertx/codetrans/CodeWriter;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract java.lang.String render(io.vertx.codetrans.RunnableCompilationUnit, io.vertx.codetrans.RenderMode);
    descriptor: (Lio/vertx/codetrans/RunnableCompilationUnit;Lio/vertx/codetrans/RenderMode;)Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
            Name  Flags
      unit        
      renderMode  

  public io.vertx.codetrans.expression.ExpressionModel combine(io.vertx.codetrans.expression.ExpressionModel, java.lang.String, io.vertx.codetrans.expression.ExpressionModel);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;Ljava/lang/String;Lio/vertx/codetrans/expression/ExpressionModel;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codetrans.expression.ExpressionModel left
        start local 2 // java.lang.String op
        start local 3 // io.vertx.codetrans.expression.ExpressionModel right
         0: .line 37
            new io.vertx.codetrans.expression.BinaryExpressionModel
            dup
            aload 0 /* this */
            aload 1 /* left */
            aload 2 /* op */
            aload 3 /* right */
            invokespecial io.vertx.codetrans.expression.BinaryExpressionModel.<init>:(Lio/vertx/codetrans/CodeBuilder;Lio/vertx/codetrans/expression/ExpressionModel;Ljava/lang/String;Lio/vertx/codetrans/expression/ExpressionModel;)V
            areturn
        end local 3 // io.vertx.codetrans.expression.ExpressionModel right
        end local 2 // java.lang.String op
        end local 1 // io.vertx.codetrans.expression.ExpressionModel left
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1   left  Lio/vertx/codetrans/expression/ExpressionModel;
            0    1     2     op  Ljava/lang/String;
            0    1     3  right  Lio/vertx/codetrans/expression/ExpressionModel;
    MethodParameters:
       Name  Flags
      left   
      op     
      right  

  public io.vertx.codetrans.expression.ExpressionModel asyncResult(java.lang.String, io.vertx.codegen.type.TypeInfo);
    descriptor: (Ljava/lang/String;Lio/vertx/codegen/type/TypeInfo;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // java.lang.String identifier
        start local 2 // io.vertx.codegen.type.TypeInfo type
         0: .line 41
            new io.vertx.codetrans.expression.AsyncResultModel
            dup
            aload 0 /* this */
            aload 1 /* identifier */
            aload 2 /* type */
            invokespecial io.vertx.codetrans.expression.AsyncResultModel.<init>:(Lio/vertx/codetrans/CodeBuilder;Ljava/lang/String;Lio/vertx/codegen/type/TypeInfo;)V
            areturn
        end local 2 // io.vertx.codegen.type.TypeInfo type
        end local 1 // java.lang.String identifier
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1  identifier  Ljava/lang/String;
            0    1     2        type  Lio/vertx/codegen/type/TypeInfo;
    MethodParameters:
            Name  Flags
      identifier  
      type        

  public abstract io.vertx.codetrans.expression.ExpressionModel asyncResultHandler(com.sun.source.tree.LambdaExpressionTree$BodyKind, io.vertx.codegen.type.ParameterizedTypeInfo, java.lang.String, io.vertx.codetrans.CodeModel, io.vertx.codetrans.CodeModel, io.vertx.codetrans.CodeModel);
    descriptor: (Lcom/sun/source/tree/LambdaExpressionTree$BodyKind;Lio/vertx/codegen/type/ParameterizedTypeInfo;Ljava/lang/String;Lio/vertx/codetrans/CodeModel;Lio/vertx/codetrans/CodeModel;Lio/vertx/codetrans/CodeModel;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      bodyKind       
      resultType     
      resultName     
      body           
      succeededBody  
      failedBody     

  public io.vertx.codetrans.expression.DataObjectClassModel dataObjectClass(io.vertx.codegen.type.ClassTypeInfo);
    descriptor: (Lio/vertx/codegen/type/ClassTypeInfo;)Lio/vertx/codetrans/expression/DataObjectClassModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codegen.type.ClassTypeInfo type
         0: .line 47
            new io.vertx.codetrans.expression.DataObjectClassModel
            dup
            aload 0 /* this */
            aload 1 /* type */
            invokespecial io.vertx.codetrans.expression.DataObjectClassModel.<init>:(Lio/vertx/codetrans/CodeBuilder;Lio/vertx/codegen/type/ClassTypeInfo;)V
            areturn
        end local 1 // io.vertx.codegen.type.ClassTypeInfo type
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1  type  Lio/vertx/codegen/type/ClassTypeInfo;
    MethodParameters:
      Name  Flags
      type  

  public io.vertx.codetrans.expression.ApiTypeModel apiType(io.vertx.codegen.type.ApiTypeInfo);
    descriptor: (Lio/vertx/codegen/type/ApiTypeInfo;)Lio/vertx/codetrans/expression/ApiTypeModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codegen.type.ApiTypeInfo type
         0: .line 51
            new io.vertx.codetrans.expression.ApiTypeModel
            dup
            aload 0 /* this */
            aload 1 /* type */
            invokespecial io.vertx.codetrans.expression.ApiTypeModel.<init>:(Lio/vertx/codetrans/CodeBuilder;Lio/vertx/codegen/type/ApiTypeInfo;)V
            areturn
        end local 1 // io.vertx.codegen.type.ApiTypeInfo type
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1  type  Lio/vertx/codegen/type/ApiTypeInfo;
    MethodParameters:
      Name  Flags
      type  

  public io.vertx.codetrans.expression.ApiModel api(io.vertx.codetrans.expression.ExpressionModel);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;)Lio/vertx/codetrans/expression/ApiModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codetrans.expression.ExpressionModel expr
         0: .line 55
            new io.vertx.codetrans.expression.ApiModel
            dup
            aload 0 /* this */
            aload 1 /* expr */
            invokespecial io.vertx.codetrans.expression.ApiModel.<init>:(Lio/vertx/codetrans/CodeBuilder;Lio/vertx/codetrans/expression/ExpressionModel;)V
            areturn
        end local 1 // io.vertx.codetrans.expression.ExpressionModel expr
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1  expr  Lio/vertx/codetrans/expression/ExpressionModel;
    MethodParameters:
      Name  Flags
      expr  

  public io.vertx.codetrans.expression.EnumExpressionModel enumType(io.vertx.codegen.type.EnumTypeInfo);
    descriptor: (Lio/vertx/codegen/type/EnumTypeInfo;)Lio/vertx/codetrans/expression/EnumExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codegen.type.EnumTypeInfo type
         0: .line 59
            new io.vertx.codetrans.expression.EnumExpressionModel
            dup
            aload 0 /* this */
            aload 1 /* type */
            invokespecial io.vertx.codetrans.expression.EnumExpressionModel.<init>:(Lio/vertx/codetrans/CodeBuilder;Lio/vertx/codegen/type/EnumTypeInfo;)V
            areturn
        end local 1 // io.vertx.codegen.type.EnumTypeInfo type
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1  type  Lio/vertx/codegen/type/EnumTypeInfo;
    MethodParameters:
      Name  Flags
      type  

  public io.vertx.codetrans.expression.ExpressionModel toDataObjectValue(io.vertx.codetrans.expression.EnumFieldExpressionModel);
    descriptor: (Lio/vertx/codetrans/expression/EnumFieldExpressionModel;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codetrans.expression.EnumFieldExpressionModel enumField
         0: .line 63
            aload 1 /* enumField */
            areturn
        end local 1 // io.vertx.codetrans.expression.EnumFieldExpressionModel enumField
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1  enumField  Lio/vertx/codetrans/expression/EnumFieldExpressionModel;
    MethodParameters:
           Name  Flags
      enumField  

  public io.vertx.codetrans.expression.ExpressionModel identifier(java.lang.String, io.vertx.codetrans.expression.VariableScope);
    descriptor: (Ljava/lang/String;Lio/vertx/codetrans/expression/VariableScope;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.codetrans.expression.VariableScope scope
         0: .line 67
            new io.vertx.codetrans.expression.IdentifierModel
            dup
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* scope */
            invokespecial io.vertx.codetrans.expression.IdentifierModel.<init>:(Lio/vertx/codetrans/CodeBuilder;Ljava/lang/String;Lio/vertx/codetrans/expression/VariableScope;)V
            areturn
        end local 2 // io.vertx.codetrans.expression.VariableScope scope
        end local 1 // java.lang.String name
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1   name  Ljava/lang/String;
            0    1     2  scope  Lio/vertx/codetrans/expression/VariableScope;
    MethodParameters:
       Name  Flags
      name   
      scope  

  public abstract io.vertx.codetrans.statement.StatementModel variableDecl(io.vertx.codetrans.expression.VariableScope, io.vertx.codegen.type.TypeInfo, java.lang.String, io.vertx.codetrans.expression.ExpressionModel);
    descriptor: (Lio/vertx/codetrans/expression/VariableScope;Lio/vertx/codegen/type/TypeInfo;Ljava/lang/String;Lio/vertx/codetrans/expression/ExpressionModel;)Lio/vertx/codetrans/statement/StatementModel;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
             Name  Flags
      scope        
      type         
      name         
      initializer  

  public abstract io.vertx.codetrans.statement.StatementModel enhancedForLoop(java.lang.String, io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.statement.StatementModel);
    descriptor: (Ljava/lang/String;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/statement/StatementModel;)Lio/vertx/codetrans/statement/StatementModel;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
              Name  Flags
      variableName  
      expression    
      body          

  public abstract io.vertx.codetrans.statement.StatementModel forLoop(io.vertx.codetrans.statement.StatementModel, io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.statement.StatementModel);
    descriptor: (Lio/vertx/codetrans/statement/StatementModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/statement/StatementModel;)Lio/vertx/codetrans/statement/StatementModel;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
             Name  Flags
      initializer  
      condition    
      update       
      body         

  public abstract io.vertx.codetrans.statement.StatementModel sequenceForLoop(java.lang.String, io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.statement.StatementModel);
    descriptor: (Ljava/lang/String;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/statement/StatementModel;)Lio/vertx/codetrans/statement/StatementModel;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
              Name  Flags
      variableName  
      fromValue     
      toValue       
      body          

  public io.vertx.codetrans.expression.JsonObjectClassModel jsonObjectClassModel();
    descriptor: ()Lio/vertx/codetrans/expression/JsonObjectClassModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.codetrans.CodeBuilder this
         0: .line 79
            new io.vertx.codetrans.expression.JsonObjectClassModel
            dup
            aload 0 /* this */
            invokespecial io.vertx.codetrans.expression.JsonObjectClassModel.<init>:(Lio/vertx/codetrans/CodeBuilder;)V
            areturn
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/codetrans/CodeBuilder;

  public io.vertx.codetrans.expression.JsonArrayClassModel jsonArrayClassModel();
    descriptor: ()Lio/vertx/codetrans/expression/JsonArrayClassModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.codetrans.CodeBuilder this
         0: .line 83
            new io.vertx.codetrans.expression.JsonArrayClassModel
            dup
            aload 0 /* this */
            invokespecial io.vertx.codetrans.expression.JsonArrayClassModel.<init>:(Lio/vertx/codetrans/CodeBuilder;)V
            areturn
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/codetrans/CodeBuilder;

  public io.vertx.codetrans.expression.ExpressionModel jsonArrayEncoder(io.vertx.codetrans.expression.ExpressionModel);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codetrans.expression.ExpressionModel expression
         0: .line 87
            aload 0 /* this */
            aload 1 /* expression */
            invokedynamic accept(Lio/vertx/codetrans/expression/ExpressionModel;)Ljava/util/function/Consumer;
              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;)V
                  io/vertx/codetrans/CodeBuilder.lambda$0(Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/CodeWriter;)V (6 itf)
                  (Lio/vertx/codetrans/CodeWriter;)V
            invokeinterface io.vertx.codetrans.CodeBuilder.render:(Ljava/util/function/Consumer;)Lio/vertx/codetrans/expression/ExpressionModel;
            areturn
        end local 1 // io.vertx.codetrans.expression.ExpressionModel expression
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1  expression  Lio/vertx/codetrans/expression/ExpressionModel;
    MethodParameters:
            Name  Flags
      expression  

  public io.vertx.codetrans.expression.ExpressionModel jsonObjectEncoder(io.vertx.codetrans.expression.ExpressionModel);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codetrans.expression.ExpressionModel expression
         0: .line 93
            aload 0 /* this */
            aload 1 /* expression */
            invokedynamic accept(Lio/vertx/codetrans/expression/ExpressionModel;)Ljava/util/function/Consumer;
              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;)V
                  io/vertx/codetrans/CodeBuilder.lambda$1(Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/CodeWriter;)V (6 itf)
                  (Lio/vertx/codetrans/CodeWriter;)V
            invokeinterface io.vertx.codetrans.CodeBuilder.render:(Ljava/util/function/Consumer;)Lio/vertx/codetrans/expression/ExpressionModel;
            areturn
        end local 1 // io.vertx.codetrans.expression.ExpressionModel expression
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1  expression  Lio/vertx/codetrans/expression/ExpressionModel;
    MethodParameters:
            Name  Flags
      expression  

  public io.vertx.codetrans.expression.ExpressionModel thisModel();
    descriptor: ()Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.codetrans.CodeBuilder this
         0: .line 101
            new io.vertx.codetrans.expression.ThisModel
            dup
            aload 0 /* this */
            invokespecial io.vertx.codetrans.expression.ThisModel.<init>:(Lio/vertx/codetrans/CodeBuilder;)V
            areturn
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/codetrans/CodeBuilder;

  public io.vertx.codetrans.expression.ExpressionModel forConditionalExpression(io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.expression.ExpressionModel);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codetrans.expression.ExpressionModel condition
        start local 2 // io.vertx.codetrans.expression.ExpressionModel trueExpression
        start local 3 // io.vertx.codetrans.expression.ExpressionModel falseExpression
         0: .line 105
            aload 0 /* this */
            aload 1 /* condition */
            aload 2 /* trueExpression */
            aload 3 /* falseExpression */
            invokedynamic accept(Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;)Ljava/util/function/Consumer;
              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;)V
                  io/vertx/codetrans/CodeBuilder.lambda$2(Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/CodeWriter;)V (6 itf)
                  (Lio/vertx/codetrans/CodeWriter;)V
            invokeinterface io.vertx.codetrans.CodeBuilder.render:(Ljava/util/function/Consumer;)Lio/vertx/codetrans/expression/ExpressionModel;
            areturn
        end local 3 // io.vertx.codetrans.expression.ExpressionModel falseExpression
        end local 2 // io.vertx.codetrans.expression.ExpressionModel trueExpression
        end local 1 // io.vertx.codetrans.expression.ExpressionModel condition
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1        condition  Lio/vertx/codetrans/expression/ExpressionModel;
            0    1     2   trueExpression  Lio/vertx/codetrans/expression/ExpressionModel;
            0    1     3  falseExpression  Lio/vertx/codetrans/expression/ExpressionModel;
    MethodParameters:
                 Name  Flags
      condition        
      trueExpression   
      falseExpression  

  public io.vertx.codetrans.expression.ExpressionModel forAssign(io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.expression.ExpressionModel);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // io.vertx.codetrans.expression.ExpressionModel variable
        start local 2 // io.vertx.codetrans.expression.ExpressionModel expression
         0: .line 111
            aload 0 /* this */
            aload 1 /* variable */
            aload 2 /* expression */
            invokedynamic accept(Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;)Ljava/util/function/Consumer;
              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;)V
                  io/vertx/codetrans/CodeBuilder.lambda$3(Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/CodeWriter;)V (6 itf)
                  (Lio/vertx/codetrans/CodeWriter;)V
            invokeinterface io.vertx.codetrans.CodeBuilder.render:(Ljava/util/function/Consumer;)Lio/vertx/codetrans/expression/ExpressionModel;
            areturn
        end local 2 // io.vertx.codetrans.expression.ExpressionModel expression
        end local 1 // io.vertx.codetrans.expression.ExpressionModel variable
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lio/vertx/codetrans/CodeBuilder;
            0    1     1    variable  Lio/vertx/codetrans/expression/ExpressionModel;
            0    1     2  expression  Lio/vertx/codetrans/expression/ExpressionModel;
    MethodParameters:
            Name  Flags
      variable    
      expression  

  public io.vertx.codetrans.expression.ExpressionModel render(java.util.function.Consumer<io.vertx.codetrans.CodeWriter>);
    descriptor: (Ljava/util/function/Consumer;)Lio/vertx/codetrans/expression/ExpressionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // io.vertx.codetrans.CodeBuilder this
        start local 1 // java.util.function.Consumer c
         0: .line 117
            aload 0 /* this */
            astore 2 /* builder */
        start local 2 // io.vertx.codetrans.CodeBuilder builder
         1: .line 118
            new io.vertx.codetrans.CodeBuilder$1
            dup
            aload 0 /* this */
            aload 2 /* builder */
            aload 1 /* c */
            invokespecial io.vertx.codetrans.CodeBuilder$1.<init>:(Lio/vertx/codetrans/CodeBuilder;Lio/vertx/codetrans/CodeBuilder;Ljava/util/function/Consumer;)V
            areturn
        end local 2 // io.vertx.codetrans.CodeBuilder builder
        end local 1 // java.util.function.Consumer c
        end local 0 // io.vertx.codetrans.CodeBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/codetrans/CodeBuilder;
            0    2     1        c  Ljava/util/function/Consumer<Lio/vertx/codetrans/CodeWriter;>;
            1    2     2  builder  Lio/vertx/codetrans/CodeBuilder;
    Signature: (Ljava/util/function/Consumer<Lio/vertx/codetrans/CodeWriter;>;)Lio/vertx/codetrans/expression/ExpressionModel;
    MethodParameters:
      Name  Flags
      c     

  private static void lambda$0(io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.CodeWriter);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/CodeWriter;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // io.vertx.codetrans.CodeWriter writer
         0: .line 88
            aload 1 /* writer */
            aload 0
            invokevirtual io.vertx.codetrans.CodeWriter.renderJsonArrayToString:(Lio/vertx/codetrans/expression/ExpressionModel;)V
         1: .line 89
            return
        end local 1 // io.vertx.codetrans.CodeWriter writer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     1  writer  Lio/vertx/codetrans/CodeWriter;

  private static void lambda$1(io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.CodeWriter);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/CodeWriter;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // io.vertx.codetrans.CodeWriter writer
         0: .line 94
            aload 1 /* writer */
            aload 0
            invokevirtual io.vertx.codetrans.CodeWriter.renderJsonObjectToString:(Lio/vertx/codetrans/expression/ExpressionModel;)V
         1: .line 95
            return
        end local 1 // io.vertx.codetrans.CodeWriter writer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     1  writer  Lio/vertx/codetrans/CodeWriter;

  private static void lambda$2(io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.CodeWriter);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/CodeWriter;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
        start local 3 // io.vertx.codetrans.CodeWriter renderer
         0: .line 106
            aload 3 /* renderer */
            aload 0
            aload 1
            aload 2
            invokevirtual io.vertx.codetrans.CodeWriter.renderConditionalExpression:(Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;)V
         1: .line 107
            return
        end local 3 // io.vertx.codetrans.CodeWriter renderer
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     3  renderer  Lio/vertx/codetrans/CodeWriter;

  private static void lambda$3(io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.expression.ExpressionModel, io.vertx.codetrans.CodeWriter);
    descriptor: (Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/CodeWriter;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // io.vertx.codetrans.CodeWriter renderer
         0: .line 112
            aload 2 /* renderer */
            aload 0
            aload 1
            invokevirtual io.vertx.codetrans.CodeWriter.renderAssign:(Lio/vertx/codetrans/expression/ExpressionModel;Lio/vertx/codetrans/expression/ExpressionModel;)V
         1: .line 113
            return
        end local 2 // io.vertx.codetrans.CodeWriter renderer
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     2  renderer  Lio/vertx/codetrans/CodeWriter;
}
SourceFile: "CodeBuilder.java"
NestMembers:
  io.vertx.codetrans.CodeBuilder$1
InnerClasses:
  public final BodyKind = com.sun.source.tree.LambdaExpressionTree$BodyKind of com.sun.source.tree.LambdaExpressionTree
  io.vertx.codetrans.CodeBuilder$1
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles