final class org.jooq.impl.AliasedSelect<R extends org.jooq.Record> extends org.jooq.impl.AbstractTable<R>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.jooq.impl.AliasedSelect
  super_class: org.jooq.impl.AbstractTable
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 6763689261249123076

  private final org.jooq.Select<R> query;
    descriptor: Lorg/jooq/Select;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/jooq/Select<TR;>;

  private final org.jooq.Name[] aliases;
    descriptor: [Lorg/jooq/Name;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(org.jooq.Select<R>);
    descriptor: (Lorg/jooq/Select;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jooq.impl.AliasedSelect this
        start local 1 // org.jooq.Select query
         0: .line 70
            aload 0 /* this */
            aload 1 /* query */
            aload 1 /* query */
            invokestatic org.jooq.impl.Tools.degree:(Lorg/jooq/Select;)I
            invokestatic org.jooq.impl.Tools.fieldNames:(I)[Lorg/jooq/Name;
            invokespecial org.jooq.impl.AliasedSelect.<init>:(Lorg/jooq/Select;[Lorg/jooq/Name;)V
         1: .line 71
            return
        end local 1 // org.jooq.Select query
        end local 0 // org.jooq.impl.AliasedSelect this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jooq/impl/AliasedSelect<TR;>;
            0    2     1  query  Lorg/jooq/Select<TR;>;
    Signature: (Lorg/jooq/Select<TR;>;)V
    MethodParameters:
       Name  Flags
      query  

  void <init>(org.jooq.Select<R>, org.jooq.Name[]);
    descriptor: (Lorg/jooq/Select;[Lorg/jooq/Name;)V
    flags: (0x0080) ACC_VARARGS
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jooq.impl.AliasedSelect this
        start local 1 // org.jooq.Select query
        start local 2 // org.jooq.Name[] aliases
         0: .line 74
            aload 0 /* this */
            invokestatic org.jooq.TableOptions.expression:()Lorg/jooq/TableOptions;
            getstatic org.jooq.impl.Names.N_SELECT:Lorg/jooq/Name;
            invokespecial org.jooq.impl.AbstractTable.<init>:(Lorg/jooq/TableOptions;Lorg/jooq/Name;)V
         1: .line 76
            aload 0 /* this */
            aload 1 /* query */
            putfield org.jooq.impl.AliasedSelect.query:Lorg/jooq/Select;
         2: .line 77
            aload 0 /* this */
            aload 2 /* aliases */
            putfield org.jooq.impl.AliasedSelect.aliases:[Lorg/jooq/Name;
         3: .line 78
            return
        end local 2 // org.jooq.Name[] aliases
        end local 1 // org.jooq.Select query
        end local 0 // org.jooq.impl.AliasedSelect this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jooq/impl/AliasedSelect<TR;>;
            0    4     1    query  Lorg/jooq/Select<TR;>;
            0    4     2  aliases  [Lorg/jooq/Name;
    Signature: (Lorg/jooq/Select<TR;>;[Lorg/jooq/Name;)V
    MethodParameters:
         Name  Flags
      query    
      aliases  

  final org.jooq.Select<R> query();
    descriptor: ()Lorg/jooq/Select;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jooq.impl.AliasedSelect this
         0: .line 81
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.query:Lorg/jooq/Select;
            areturn
        end local 0 // org.jooq.impl.AliasedSelect this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jooq/impl/AliasedSelect<TR;>;
    Signature: ()Lorg/jooq/Select<TR;>;

  public final org.jooq.Table<R> as(org.jooq.Name);
    descriptor: (Lorg/jooq/Name;)Lorg/jooq/Table;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jooq.impl.AliasedSelect this
        start local 1 // org.jooq.Name alias
         0: .line 86
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.query:Lorg/jooq/Select;
            invokestatic org.jooq.impl.Tools.selectQueryImpl:(Lorg/jooq/Select;)Lorg/jooq/impl/SelectQueryImpl;
            astore 2 /* q */
        start local 2 // org.jooq.impl.SelectQueryImpl q
         1: .line 88
            aload 2 /* q */
            ifnull 3
            aload 2 /* q */
            invokevirtual org.jooq.impl.SelectQueryImpl.getOrderBy:()Lorg/jooq/impl/SortFieldList;
            invokevirtual org.jooq.impl.SortFieldList.isEmpty:()Z
            ifeq 2
            aload 2 /* q */
            invokevirtual org.jooq.impl.SelectQueryImpl.getSelect:()Ljava/util/List;
            invokestatic org.jooq.impl.Tools.hasEmbeddedFields:(Ljava/lang/Iterable;)Z
            ifeq 3
         2: .line 89
      StackMap locals: org.jooq.impl.SelectQueryImpl
      StackMap stack:
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.query:Lorg/jooq/Select;
            aload 1 /* alias */
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.aliases:[Lorg/jooq/Name;
            invokeinterface org.jooq.Select.asTable:(Lorg/jooq/Name;[Lorg/jooq/Name;)Lorg/jooq/Table;
            areturn
         3: .line 91
      StackMap locals:
      StackMap stack:
            new org.jooq.impl.TableAlias
            dup
            aload 0 /* this */
            aload 1 /* alias */
            iconst_1
            invokespecial org.jooq.impl.TableAlias.<init>:(Lorg/jooq/Table;Lorg/jooq/Name;Z)V
            areturn
        end local 2 // org.jooq.impl.SelectQueryImpl q
        end local 1 // org.jooq.Name alias
        end local 0 // org.jooq.impl.AliasedSelect this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/jooq/impl/AliasedSelect<TR;>;
            0    4     1  alias  Lorg/jooq/Name;
            1    4     2      q  Lorg/jooq/impl/SelectQueryImpl<TR;>;
    Signature: (Lorg/jooq/Name;)Lorg/jooq/Table<TR;>;
    MethodParameters:
       Name  Flags
      alias  

  public final org.jooq.Table<R> as(org.jooq.Name, org.jooq.Name[]);
    descriptor: (Lorg/jooq/Name;[Lorg/jooq/Name;)Lorg/jooq/Table;
    flags: (0x0091) ACC_PUBLIC, ACC_FINAL, ACC_VARARGS
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jooq.impl.AliasedSelect this
        start local 1 // org.jooq.Name alias
        start local 2 // org.jooq.Name[] fieldAliases
         0: .line 96
            new org.jooq.impl.TableAlias
            dup
            aload 0 /* this */
            aload 1 /* alias */
            aload 2 /* fieldAliases */
            iconst_1
            invokespecial org.jooq.impl.TableAlias.<init>:(Lorg/jooq/Table;Lorg/jooq/Name;[Lorg/jooq/Name;Z)V
            areturn
        end local 2 // org.jooq.Name[] fieldAliases
        end local 1 // org.jooq.Name alias
        end local 0 // org.jooq.impl.AliasedSelect this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/jooq/impl/AliasedSelect<TR;>;
            0    1     1         alias  Lorg/jooq/Name;
            0    1     2  fieldAliases  [Lorg/jooq/Name;
    Signature: (Lorg/jooq/Name;[Lorg/jooq/Name;)Lorg/jooq/Table<TR;>;
    MethodParameters:
              Name  Flags
      alias         
      fieldAliases  

  final org.jooq.impl.Fields<R> fields0();
    descriptor: ()Lorg/jooq/impl/Fields;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.jooq.impl.AliasedSelect this
         0: .line 101
            new org.jooq.impl.Fields
            dup
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.query:Lorg/jooq/Select;
            ldc "t"
            invokestatic org.jooq.impl.DSL.name:(Ljava/lang/String;)Lorg/jooq/Name;
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.aliases:[Lorg/jooq/Name;
            invokeinterface org.jooq.Select.asTable:(Lorg/jooq/Name;[Lorg/jooq/Name;)Lorg/jooq/Table;
            invokeinterface org.jooq.Table.fields:()[Lorg/jooq/Field;
            invokespecial org.jooq.impl.Fields.<init>:([Lorg/jooq/Field;)V
            areturn
        end local 0 // org.jooq.impl.AliasedSelect this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jooq/impl/AliasedSelect<TR;>;
    Signature: ()Lorg/jooq/impl/Fields<TR;>;

  public final java.lang.Class<? extends R> getRecordType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jooq.impl.AliasedSelect this
         0: .line 106
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.query:Lorg/jooq/Select;
            invokeinterface org.jooq.Select.getRecordType:()Ljava/lang/Class;
            areturn
        end local 0 // org.jooq.impl.AliasedSelect this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jooq/impl/AliasedSelect<TR;>;
    Signature: ()Ljava/lang/Class<+TR;>;

  public final void accept(org.jooq.Context<?>);
    descriptor: (Lorg/jooq/Context;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jooq.impl.AliasedSelect this
        start local 1 // org.jooq.Context ctx
         0: .line 111
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.query:Lorg/jooq/Select;
            invokestatic org.jooq.impl.Tools.selectQueryImpl:(Lorg/jooq/Select;)Lorg/jooq/impl/SelectQueryImpl;
            astore 2 /* q */
        start local 2 // org.jooq.impl.SelectQueryImpl q
         1: .line 117
            aload 1 /* ctx */
            invokeinterface org.jooq.Context.family:()Lorg/jooq/SQLDialect;
            getstatic org.jooq.SQLDialect.DERBY:Lorg/jooq/SQLDialect;
            if_acmpne 4
            aload 2 /* q */
            ifnull 4
            aload 2 /* q */
            invokevirtual org.jooq.impl.SelectQueryImpl.hasUnions:()Z
            ifeq 4
         2: .line 118
            aload 1 /* ctx */
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.query:Lorg/jooq/Select;
            ldc "t"
            invokestatic org.jooq.impl.DSL.name:(Ljava/lang/String;)Lorg/jooq/Name;
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.aliases:[Lorg/jooq/Name;
            invokeinterface org.jooq.Select.asTable:(Lorg/jooq/Name;[Lorg/jooq/Name;)Lorg/jooq/Table;
            invokestatic org.jooq.impl.DSL.selectFrom:(Lorg/jooq/Table;)Lorg/jooq/SelectWhereStep;
            invokestatic org.jooq.impl.Tools.visitSubquery:(Lorg/jooq/Context;Lorg/jooq/QueryPart;)V
         3: .line 119
            goto 8
         4: .line 121
      StackMap locals: org.jooq.impl.SelectQueryImpl
      StackMap stack:
            aload 1 /* ctx */
            getstatic org.jooq.impl.Tools$DataKey.DATA_SELECT_ALIASES:Lorg/jooq/impl/Tools$DataKey;
            invokeinterface org.jooq.Context.data:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* previous */
        start local 3 // java.lang.Object previous
         5: .line 123
            aload 1 /* ctx */
            getstatic org.jooq.impl.Tools$DataKey.DATA_SELECT_ALIASES:Lorg/jooq/impl/Tools$DataKey;
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.aliases:[Lorg/jooq/Name;
            invokeinterface org.jooq.Context.data:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 124
            aload 1 /* ctx */
            aload 0 /* this */
            getfield org.jooq.impl.AliasedSelect.query:Lorg/jooq/Select;
            invokestatic org.jooq.impl.Tools.visitSubquery:(Lorg/jooq/Context;Lorg/jooq/QueryPart;)V
         7: .line 125
            aload 1 /* ctx */
            getstatic org.jooq.impl.Tools$DataKey.DATA_SELECT_ALIASES:Lorg/jooq/impl/Tools$DataKey;
            aload 3 /* previous */
            invokeinterface org.jooq.Context.data:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 3 // java.lang.Object previous
         8: .line 127
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.jooq.impl.SelectQueryImpl q
        end local 1 // org.jooq.Context ctx
        end local 0 // org.jooq.impl.AliasedSelect this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/jooq/impl/AliasedSelect<TR;>;
            0    9     1       ctx  Lorg/jooq/Context<*>;
            1    9     2         q  Lorg/jooq/impl/SelectQueryImpl<TR;>;
            5    8     3  previous  Ljava/lang/Object;
    Signature: (Lorg/jooq/Context<*>;)V
    MethodParameters:
      Name  Flags
      ctx   

  public final org.jooq.Clause[] clauses(org.jooq.Context<?>);
    descriptor: (Lorg/jooq/Context;)[Lorg/jooq/Clause;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jooq.impl.AliasedSelect this
        start local 1 // org.jooq.Context ctx
         0: .line 131
            aconst_null
            areturn
        end local 1 // org.jooq.Context ctx
        end local 0 // org.jooq.impl.AliasedSelect this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jooq/impl/AliasedSelect<TR;>;
            0    1     1   ctx  Lorg/jooq/Context<*>;
    Signature: (Lorg/jooq/Context<*>;)[Lorg/jooq/Clause;
    MethodParameters:
      Name  Flags
      ctx   
}
Signature: <R::Lorg/jooq/Record;>Lorg/jooq/impl/AbstractTable<TR;>;
SourceFile: "AliasedSelect.java"
InnerClasses:
  final DataKey = org.jooq.impl.Tools$DataKey of org.jooq.impl.Tools