final class org.jooq.impl.Decode<T, Z> extends org.jooq.impl.AbstractField<Z>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.jooq.impl.Decode
  super_class: org.jooq.impl.AbstractField
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -7273879239726265322

  private final org.jooq.Field<T> field;
    descriptor: Lorg/jooq/Field;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/jooq/Field<TT;>;

  private final org.jooq.Field<T> search;
    descriptor: Lorg/jooq/Field;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/jooq/Field<TT;>;

  private final org.jooq.Field<Z> result;
    descriptor: Lorg/jooq/Field;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/jooq/Field<TZ;>;

  private final org.jooq.Field<?>[] more;
    descriptor: [Lorg/jooq/Field;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: [Lorg/jooq/Field<*>;

  private static volatile int[] $SWITCH_TABLE$org$jooq$SQLDialect;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  public void <init>(org.jooq.Field<T>, org.jooq.Field<T>, org.jooq.Field<Z>, org.jooq.Field<?>[]);
    descriptor: (Lorg/jooq/Field;Lorg/jooq/Field;Lorg/jooq/Field;[Lorg/jooq/Field;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.jooq.impl.Decode this
        start local 1 // org.jooq.Field field
        start local 2 // org.jooq.Field search
        start local 3 // org.jooq.Field result
        start local 4 // org.jooq.Field[] more
         0: .line 63
            aload 0 /* this */
            getstatic org.jooq.impl.Names.N_DECODE:Lorg/jooq/Name;
            aload 3 /* result */
            invokeinterface org.jooq.Field.getDataType:()Lorg/jooq/DataType;
            invokespecial org.jooq.impl.AbstractField.<init>:(Lorg/jooq/Name;Lorg/jooq/DataType;)V
         1: .line 65
            aload 0 /* this */
            aload 1 /* field */
            putfield org.jooq.impl.Decode.field:Lorg/jooq/Field;
         2: .line 66
            aload 0 /* this */
            aload 2 /* search */
            putfield org.jooq.impl.Decode.search:Lorg/jooq/Field;
         3: .line 67
            aload 0 /* this */
            aload 3 /* result */
            putfield org.jooq.impl.Decode.result:Lorg/jooq/Field;
         4: .line 68
            aload 0 /* this */
            aload 4 /* more */
            putfield org.jooq.impl.Decode.more:[Lorg/jooq/Field;
         5: .line 69
            return
        end local 4 // org.jooq.Field[] more
        end local 3 // org.jooq.Field result
        end local 2 // org.jooq.Field search
        end local 1 // org.jooq.Field field
        end local 0 // org.jooq.impl.Decode this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/jooq/impl/Decode<TT;TZ;>;
            0    6     1   field  Lorg/jooq/Field<TT;>;
            0    6     2  search  Lorg/jooq/Field<TT;>;
            0    6     3  result  Lorg/jooq/Field<TZ;>;
            0    6     4    more  [Lorg/jooq/Field;
    Signature: (Lorg/jooq/Field<TT;>;Lorg/jooq/Field<TT;>;Lorg/jooq/Field<TZ;>;[Lorg/jooq/Field<*>;)V
    MethodParameters:
        Name  Flags
      field   
      search  
      result  
      more    

  public final void accept(org.jooq.Context<?>);
    descriptor: (Lorg/jooq/Context;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // org.jooq.impl.Decode this
        start local 1 // org.jooq.Context ctx
         0: .line 74
            invokestatic org.jooq.impl.Decode.$SWITCH_TABLE$org$jooq$SQLDialect:()[I
            aload 1 /* ctx */
            invokeinterface org.jooq.Context.family:()Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            iaload
            tableswitch { // 6 - 6
                    6: 1
              default: 3
          }
         1: .line 86
      StackMap locals:
      StackMap stack:
            aload 1 /* ctx */
            ldc "decode"
            aload 0 /* this */
            invokevirtual org.jooq.impl.Decode.getDataType:()Lorg/jooq/DataType;
            aload 0 /* this */
            getfield org.jooq.impl.Decode.field:Lorg/jooq/Field;
            aload 0 /* this */
            getfield org.jooq.impl.Decode.search:Lorg/jooq/Field;
            aload 0 /* this */
            getfield org.jooq.impl.Decode.result:Lorg/jooq/Field;
            aload 0 /* this */
            getfield org.jooq.impl.Decode.more:[Lorg/jooq/Field;
            invokestatic org.jooq.impl.Tools.combine:(Lorg/jooq/Field;Lorg/jooq/Field;Lorg/jooq/Field;[Lorg/jooq/Field;)[Lorg/jooq/Field;
            invokestatic org.jooq.impl.DSL.function:(Ljava/lang/String;Lorg/jooq/DataType;[Lorg/jooq/Field;)Lorg/jooq/Field;
            invokeinterface org.jooq.Context.visit:(Lorg/jooq/QueryPart;)Lorg/jooq/Context;
            pop
         2: .line 87
            return
         3: .line 92
      StackMap locals:
      StackMap stack:
            invokestatic org.jooq.impl.DSL.choose:()Lorg/jooq/Case;
         4: .line 93
            aload 0 /* this */
            getfield org.jooq.impl.Decode.field:Lorg/jooq/Field;
            aload 0 /* this */
            getfield org.jooq.impl.Decode.search:Lorg/jooq/Field;
            invokeinterface org.jooq.Field.isNotDistinctFrom:(Lorg/jooq/Field;)Lorg/jooq/Condition;
            aload 0 /* this */
            getfield org.jooq.impl.Decode.result:Lorg/jooq/Field;
            invokeinterface org.jooq.Case.when:(Lorg/jooq/Condition;Lorg/jooq/Field;)Lorg/jooq/CaseConditionStep;
         5: .line 91
            astore 2 /* when */
        start local 2 // org.jooq.CaseConditionStep when
         6: .line 95
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         7: goto 14
         8: .line 98
      StackMap locals: org.jooq.CaseConditionStep int
      StackMap stack:
            iload 3 /* i */
            iconst_1
            iadd
            aload 0 /* this */
            getfield org.jooq.impl.Decode.more:[Lorg/jooq/Field;
            arraylength
            if_icmpge 11
         9: .line 99
            aload 2 /* when */
            aload 0 /* this */
            getfield org.jooq.impl.Decode.field:Lorg/jooq/Field;
            aload 0 /* this */
            getfield org.jooq.impl.Decode.more:[Lorg/jooq/Field;
            iload 3 /* i */
            aaload
            invokeinterface org.jooq.Field.isNotDistinctFrom:(Lorg/jooq/Field;)Lorg/jooq/Condition;
            aload 0 /* this */
            getfield org.jooq.impl.Decode.more:[Lorg/jooq/Field;
            iload 3 /* i */
            iconst_1
            iadd
            aaload
            invokeinterface org.jooq.CaseConditionStep.when:(Lorg/jooq/Condition;Lorg/jooq/Field;)Lorg/jooq/CaseConditionStep;
            astore 2 /* when */
        10: .line 100
            goto 13
        11: .line 104
      StackMap locals:
      StackMap stack:
            aload 1 /* ctx */
            aload 2 /* when */
            aload 0 /* this */
            getfield org.jooq.impl.Decode.more:[Lorg/jooq/Field;
            iload 3 /* i */
            aaload
            invokeinterface org.jooq.CaseConditionStep.otherwise:(Lorg/jooq/Field;)Lorg/jooq/Field;
            invokeinterface org.jooq.Context.visit:(Lorg/jooq/QueryPart;)Lorg/jooq/Context;
            pop
        12: .line 105
            return
        13: .line 95
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 2
      StackMap locals:
      StackMap stack:
        14: iload 3 /* i */
            aload 0 /* this */
            getfield org.jooq.impl.Decode.more:[Lorg/jooq/Field;
            arraylength
            if_icmplt 8
        end local 3 // int i
        15: .line 109
            aload 1 /* ctx */
            aload 2 /* when */
            invokeinterface org.jooq.Context.visit:(Lorg/jooq/QueryPart;)Lorg/jooq/Context;
            pop
        16: .line 110
            return
        end local 2 // org.jooq.CaseConditionStep when
        end local 1 // org.jooq.Context ctx
        end local 0 // org.jooq.impl.Decode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lorg/jooq/impl/Decode<TT;TZ;>;
            0   17     1   ctx  Lorg/jooq/Context<*>;
            6   17     2  when  Lorg/jooq/CaseConditionStep<TZ;>;
            7   15     3     i  I
    Signature: (Lorg/jooq/Context<*>;)V
    MethodParameters:
      Name  Flags
      ctx   

  static int[] $SWITCH_TABLE$org$jooq$SQLDialect();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 50
            getstatic org.jooq.impl.Decode.$SWITCH_TABLE$org$jooq$SQLDialect:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jooq.SQLDialect.values:()[Lorg/jooq/SQLDialect;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jooq.SQLDialect.CUBRID:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jooq.SQLDialect.DEFAULT:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jooq.SQLDialect.DERBY:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jooq.SQLDialect.FIREBIRD:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            iconst_5
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.jooq.SQLDialect.H2:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            bipush 6
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.jooq.SQLDialect.HSQLDB:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            bipush 7
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.jooq.SQLDialect.MARIADB:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            bipush 8
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.jooq.SQLDialect.MYSQL:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            bipush 9
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.jooq.SQLDialect.POSTGRES:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            bipush 10
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.jooq.SQLDialect.SQL99:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            iconst_1
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic org.jooq.SQLDialect.SQLITE:Lorg/jooq/SQLDialect;
            invokevirtual org.jooq.SQLDialect.ordinal:()I
            bipush 11
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            dup
            putstatic org.jooq.impl.Decode.$SWITCH_TABLE$org$jooq$SQLDialect:[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
}
Signature: <T:Ljava/lang/Object;Z:Ljava/lang/Object;>Lorg/jooq/impl/AbstractField<TZ;>;
SourceFile: "Decode.java"