class org.hibernate.dialect.H2Dialect$1 extends org.hibernate.exception.spi.TemplatedViolatedConstraintNameExtracter
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hibernate.dialect.H2Dialect$1
  super_class: org.hibernate.exception.spi.TemplatedViolatedConstraintNameExtracter
{
  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.dialect.H2Dialect$1 this
         0: .line 304
            aload 0 /* this */
            invokespecial org.hibernate.exception.spi.TemplatedViolatedConstraintNameExtracter.<init>:()V
            return
        end local 0 // org.hibernate.dialect.H2Dialect$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/dialect/H2Dialect$1;

  public java.lang.String extractConstraintName(java.sql.SQLException);
    descriptor: (Ljava/sql/SQLException;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.hibernate.dialect.H2Dialect$1 this
        start local 1 // java.sql.SQLException sqle
         0: .line 312
            aconst_null
            astore 2 /* constraintName */
        start local 2 // java.lang.String constraintName
         1: .line 315
            aload 1 /* sqle */
            invokevirtual java.sql.SQLException.getSQLState:()Ljava/lang/String;
            ldc "23"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 6
         2: .line 316
            aload 1 /* sqle */
            invokevirtual java.sql.SQLException.getMessage:()Ljava/lang/String;
            astore 3 /* message */
        start local 3 // java.lang.String message
         3: .line 317
            aload 3 /* message */
            ldc "violation: "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 4 /* idx */
        start local 4 // int idx
         4: .line 318
            iload 4 /* idx */
            ifle 6
         5: .line 319
            aload 3 /* message */
            iload 4 /* idx */
            ldc "violation: "
            invokevirtual java.lang.String.length:()I
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 2 /* constraintName */
        end local 4 // int idx
        end local 3 // java.lang.String message
         6: .line 322
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* constraintName */
            areturn
        end local 2 // java.lang.String constraintName
        end local 1 // java.sql.SQLException sqle
        end local 0 // org.hibernate.dialect.H2Dialect$1 this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lorg/hibernate/dialect/H2Dialect$1;
            0    7     1            sqle  Ljava/sql/SQLException;
            1    7     2  constraintName  Ljava/lang/String;
            3    6     3         message  Ljava/lang/String;
            4    6     4             idx  I
    MethodParameters:
      Name  Flags
      sqle  
}
SourceFile: "H2Dialect.java"
EnclosingMethod: org.hibernate.dialect.H2Dialect
NestHost: org.hibernate.dialect.H2Dialect
InnerClasses:
  org.hibernate.dialect.H2Dialect$1