public class org.hibernate.sql.Insert
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.sql.Insert
  super_class: java.lang.Object
{
  private org.hibernate.dialect.Dialect dialect;
    descriptor: Lorg/hibernate/dialect/Dialect;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String tableName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String comment;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Map columns;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.hibernate.dialect.Dialect);
    descriptor: (Lorg/hibernate/dialect/Dialect;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // org.hibernate.dialect.Dialect dialect
         0: .line 44
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield org.hibernate.sql.Insert.columns:Ljava/util/Map;
         2: .line 45
            aload 0 /* this */
            aload 1 /* dialect */
            putfield org.hibernate.sql.Insert.dialect:Lorg/hibernate/dialect/Dialect;
         3: .line 46
            return
        end local 1 // org.hibernate.dialect.Dialect dialect
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hibernate/sql/Insert;
            0    4     1  dialect  Lorg/hibernate/dialect/Dialect;
    MethodParameters:
         Name  Flags
      dialect  

  protected org.hibernate.dialect.Dialect getDialect();
    descriptor: ()Lorg/hibernate/dialect/Dialect;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.sql.Insert this
         0: .line 49
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.dialect:Lorg/hibernate/dialect/Dialect;
            areturn
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/sql/Insert;

  public org.hibernate.sql.Insert setComment(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/hibernate/sql/Insert;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // java.lang.String comment
         0: .line 53
            aload 0 /* this */
            aload 1 /* comment */
            putfield org.hibernate.sql.Insert.comment:Ljava/lang/String;
         1: .line 54
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String comment
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/hibernate/sql/Insert;
            0    2     1  comment  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      comment  

  public org.hibernate.sql.Insert addColumn(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/hibernate/sql/Insert;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // java.lang.String columnName
         0: .line 58
            aload 0 /* this */
            aload 1 /* columnName */
            ldc "?"
            invokevirtual org.hibernate.sql.Insert.addColumn:(Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/sql/Insert;
            areturn
        end local 1 // java.lang.String columnName
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/hibernate/sql/Insert;
            0    1     1  columnName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      columnName  

  public org.hibernate.sql.Insert addColumns(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Lorg/hibernate/sql/Insert;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // java.lang.String[] columnNames
         0: .line 62
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 4
         2: .line 63
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* columnNames */
            iload 2 /* i */
            aaload
            invokevirtual org.hibernate.sql.Insert.addColumn:(Ljava/lang/String;)Lorg/hibernate/sql/Insert;
            pop
         3: .line 62
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* i */
            aload 1 /* columnNames */
            arraylength
            if_icmplt 2
        end local 2 // int i
         5: .line 65
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String[] columnNames
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/hibernate/sql/Insert;
            0    6     1  columnNames  [Ljava/lang/String;
            1    5     2            i  I
    MethodParameters:
             Name  Flags
      columnNames  

  public org.hibernate.sql.Insert addColumns(java.lang.String[], boolean[]);
    descriptor: ([Ljava/lang/String;[Z)Lorg/hibernate/sql/Insert;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // java.lang.String[] columnNames
        start local 2 // boolean[] insertable
         0: .line 69
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 5
         2: .line 70
      StackMap locals: int
      StackMap stack:
            aload 2 /* insertable */
            iload 3 /* i */
            baload
            ifeq 4
         3: .line 71
            aload 0 /* this */
            aload 1 /* columnNames */
            iload 3 /* i */
            aaload
            invokevirtual org.hibernate.sql.Insert.addColumn:(Ljava/lang/String;)Lorg/hibernate/sql/Insert;
            pop
         4: .line 69
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 1 /* columnNames */
            arraylength
            if_icmplt 2
        end local 3 // int i
         6: .line 74
            aload 0 /* this */
            areturn
        end local 2 // boolean[] insertable
        end local 1 // java.lang.String[] columnNames
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lorg/hibernate/sql/Insert;
            0    7     1  columnNames  [Ljava/lang/String;
            0    7     2   insertable  [Z
            1    6     3            i  I
    MethodParameters:
             Name  Flags
      columnNames  
      insertable   

  public org.hibernate.sql.Insert addColumns(java.lang.String[], boolean[], java.lang.String[]);
    descriptor: ([Ljava/lang/String;[Z[Ljava/lang/String;)Lorg/hibernate/sql/Insert;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // java.lang.String[] columnNames
        start local 2 // boolean[] insertable
        start local 3 // java.lang.String[] valueExpressions
         0: .line 78
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 5
         2: .line 79
      StackMap locals: int
      StackMap stack:
            aload 2 /* insertable */
            iload 4 /* i */
            baload
            ifeq 4
         3: .line 80
            aload 0 /* this */
            aload 1 /* columnNames */
            iload 4 /* i */
            aaload
            aload 3 /* valueExpressions */
            iload 4 /* i */
            aaload
            invokevirtual org.hibernate.sql.Insert.addColumn:(Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/sql/Insert;
            pop
         4: .line 78
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            aload 1 /* columnNames */
            arraylength
            if_icmplt 2
        end local 4 // int i
         6: .line 83
            aload 0 /* this */
            areturn
        end local 3 // java.lang.String[] valueExpressions
        end local 2 // boolean[] insertable
        end local 1 // java.lang.String[] columnNames
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0              this  Lorg/hibernate/sql/Insert;
            0    7     1       columnNames  [Ljava/lang/String;
            0    7     2        insertable  [Z
            0    7     3  valueExpressions  [Ljava/lang/String;
            1    6     4                 i  I
    MethodParameters:
                  Name  Flags
      columnNames       
      insertable        
      valueExpressions  

  public org.hibernate.sql.Insert addColumn(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/sql/Insert;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // java.lang.String columnName
        start local 2 // java.lang.String valueExpression
         0: .line 87
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.columns:Ljava/util/Map;
            aload 1 /* columnName */
            aload 2 /* valueExpression */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 88
            aload 0 /* this */
            areturn
        end local 2 // java.lang.String valueExpression
        end local 1 // java.lang.String columnName
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/hibernate/sql/Insert;
            0    2     1       columnName  Ljava/lang/String;
            0    2     2  valueExpression  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      columnName       
      valueExpression  

  public org.hibernate.sql.Insert addColumn(java.lang.String, java.lang.Object, org.hibernate.type.LiteralType);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/hibernate/type/LiteralType;)Lorg/hibernate/sql/Insert;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // java.lang.String columnName
        start local 2 // java.lang.Object value
        start local 3 // org.hibernate.type.LiteralType type
         0: .line 92
            aload 0 /* this */
            aload 1 /* columnName */
            aload 3 /* type */
            aload 2 /* value */
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.dialect:Lorg/hibernate/dialect/Dialect;
            invokeinterface org.hibernate.type.LiteralType.objectToSQLString:(Ljava/lang/Object;Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
            invokevirtual org.hibernate.sql.Insert.addColumn:(Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/sql/Insert;
            areturn
        end local 3 // org.hibernate.type.LiteralType type
        end local 2 // java.lang.Object value
        end local 1 // java.lang.String columnName
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/hibernate/sql/Insert;
            0    1     1  columnName  Ljava/lang/String;
            0    1     2       value  Ljava/lang/Object;
            0    1     3        type  Lorg/hibernate/type/LiteralType;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
            Name  Flags
      columnName  
      value       
      type        

  public org.hibernate.sql.Insert addIdentityColumn(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/hibernate/sql/Insert;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // java.lang.String columnName
         0: .line 96
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.dialect:Lorg/hibernate/dialect/Dialect;
            invokevirtual org.hibernate.dialect.Dialect.getIdentityInsertString:()Ljava/lang/String;
            astore 2 /* value */
        start local 2 // java.lang.String value
         1: .line 97
            aload 2 /* value */
            ifnull 3
         2: .line 98
            aload 0 /* this */
            aload 1 /* columnName */
            aload 2 /* value */
            invokevirtual org.hibernate.sql.Insert.addColumn:(Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/sql/Insert;
            pop
         3: .line 100
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // java.lang.String value
        end local 1 // java.lang.String columnName
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/hibernate/sql/Insert;
            0    4     1  columnName  Ljava/lang/String;
            1    4     2       value  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      columnName  

  public org.hibernate.sql.Insert setTableName(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/hibernate/sql/Insert;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.sql.Insert this
        start local 1 // java.lang.String tableName
         0: .line 104
            aload 0 /* this */
            aload 1 /* tableName */
            putfield org.hibernate.sql.Insert.tableName:Ljava/lang/String;
         1: .line 105
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String tableName
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/hibernate/sql/Insert;
            0    2     1  tableName  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      tableName  

  public java.lang.String toStatementString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.hibernate.sql.Insert this
         0: .line 109
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.columns:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            bipush 15
            imul
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.tableName:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iadd
            bipush 10
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuilder buf
         1: .line 110
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.comment:Ljava/lang/String;
            ifnull 3
         2: .line 111
            aload 1 /* buf */
            ldc "/* "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.comment: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;
            pop
         3: .line 113
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 1 /* buf */
            ldc "insert into "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 114
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.tableName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 115
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.columns:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            ifne 8
         6: .line 116
            aload 1 /* buf */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.dialect:Lorg/hibernate/dialect/Dialect;
            invokevirtual org.hibernate.dialect.Dialect.getNoColumnsInsertString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 117
            goto 23
         8: .line 119
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            ldc " ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 120
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.columns:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
        10: .line 121
            goto 14
        11: .line 122
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 1 /* buf */
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
        12: .line 123
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 14
        13: .line 124
            aload 1 /* buf */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 121
      StackMap locals:
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        15: .line 127
            aload 1 /* buf */
            ldc ") values ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 128
            aload 0 /* this */
            getfield org.hibernate.sql.Insert.columns:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        17: .line 129
            goto 21
        18: .line 130
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
        19: .line 131
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 21
        20: .line 132
            aload 1 /* buf */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 129
      StackMap locals:
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        22: .line 135
            aload 1 /* buf */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 2 // java.util.Iterator iter
        23: .line 137
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder buf
        end local 0 // org.hibernate.sql.Insert this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0  this  Lorg/hibernate/sql/Insert;
            1   24     1   buf  Ljava/lang/StringBuilder;
           10   23     2  iter  Ljava/util/Iterator;
}
SourceFile: "Insert.java"