public class org.hibernate.hql.internal.classic.FromParser implements org.hibernate.hql.internal.classic.Parser
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.hql.internal.classic.FromParser
  super_class: java.lang.Object
{
  private final org.hibernate.hql.internal.classic.PathExpressionParser peParser;
    descriptor: Lorg/hibernate/hql/internal/classic/PathExpressionParser;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

  private boolean afterIn;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean afterAs;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean afterClass;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean expectingJoin;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean expectingIn;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean expectingAs;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean afterJoinType;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private org.hibernate.sql.JoinType joinType;
    descriptor: Lorg/hibernate/sql/JoinType;
    flags: (0x0002) ACC_PRIVATE

  private boolean afterFetch;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean memberDeclarations;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean expectingPathExpression;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean afterMemberDeclarations;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

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

  private static final java.util.Map<java.lang.String, org.hibernate.sql.JoinType> JOIN_TYPES;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/sql/JoinType;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 62
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic org.hibernate.hql.internal.classic.FromParser.JOIN_TYPES:Ljava/util/Map;
         1: .line 65
            getstatic org.hibernate.hql.internal.classic.FromParser.JOIN_TYPES:Ljava/util/Map;
            ldc "left"
            getstatic org.hibernate.sql.JoinType.LEFT_OUTER_JOIN:Lorg/hibernate/sql/JoinType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 66
            getstatic org.hibernate.hql.internal.classic.FromParser.JOIN_TYPES:Ljava/util/Map;
            ldc "right"
            getstatic org.hibernate.sql.JoinType.RIGHT_OUTER_JOIN:Lorg/hibernate/sql/JoinType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 67
            getstatic org.hibernate.hql.internal.classic.FromParser.JOIN_TYPES:Ljava/util/Map;
            ldc "full"
            getstatic org.hibernate.sql.JoinType.FULL_JOIN:Lorg/hibernate/sql/JoinType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 68
            getstatic org.hibernate.hql.internal.classic.FromParser.JOIN_TYPES:Ljava/util/Map;
            ldc "inner"
            getstatic org.hibernate.sql.JoinType.INNER_JOIN:Lorg/hibernate/sql/JoinType;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 69
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.hibernate.hql.internal.classic.FromParser this
         0: .line 40
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            aload 0 /* this */
            new org.hibernate.hql.internal.classic.FromPathExpressionParser
            dup
            invokespecial org.hibernate.hql.internal.classic.FromPathExpressionParser.<init>:()V
            putfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
         2: .line 52
            aload 0 /* this */
            getstatic org.hibernate.sql.JoinType.INNER_JOIN:Lorg/hibernate/sql/JoinType;
            putfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
         3: .line 40
            return
        end local 0 // org.hibernate.hql.internal.classic.FromParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hibernate/hql/internal/classic/FromParser;

  public void token(java.lang.String, org.hibernate.hql.internal.classic.QueryTranslatorImpl);
    descriptor: (Ljava/lang/String;Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.hibernate.hql.internal.classic.FromParser this
        start local 1 // java.lang.String token
        start local 2 // org.hibernate.hql.internal.classic.QueryTranslatorImpl q
         0: .line 74
            aload 1 /* token */
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 3 /* lcToken */
        start local 3 // java.lang.String lcToken
         1: .line 75
            aload 3 /* lcToken */
            ldc ","
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         2: .line 76
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
            ior
            ifne 3
            new org.hibernate.QueryException
            dup
            ldc "unexpected token: ,"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 77
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
         4: .line 78
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
         5: .line 79
            goto 133
         6: .line 80
      StackMap locals:
      StackMap stack:
            aload 3 /* lcToken */
            ldc "join"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
         7: .line 81
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.afterJoinType:Z
            ifne 13
         8: .line 82
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
            ior
            ifne 9
            new org.hibernate.QueryException
            dup
            ldc "unexpected token: join"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 84
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.hibernate.sql.JoinType.INNER_JOIN:Lorg/hibernate/sql/JoinType;
            putfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
        10: .line 85
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
        11: .line 86
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
        12: .line 87
            goto 133
        13: .line 89
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterJoinType:Z
        14: .line 91
            goto 133
        15: .line 92
      StackMap locals:
      StackMap stack:
            aload 3 /* lcToken */
            ldc "fetch"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 22
        16: .line 93
            aload 2 /* q */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.isShallowQuery:()Z
            ifeq 17
            new org.hibernate.QueryException
            dup
            ldc "fetch may not be used with scroll() or iterate()"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        17: .line 94
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            getstatic org.hibernate.sql.JoinType.NONE:Lorg/hibernate/sql/JoinType;
            if_acmpne 18
            new org.hibernate.QueryException
            dup
            ldc "unexpected token: fetch"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 95
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            getstatic org.hibernate.sql.JoinType.FULL_JOIN:Lorg/hibernate/sql/JoinType;
            if_acmpeq 19
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            getstatic org.hibernate.sql.JoinType.RIGHT_OUTER_JOIN:Lorg/hibernate/sql/JoinType;
            if_acmpne 20
        19: .line 96
      StackMap locals:
      StackMap stack:
            new org.hibernate.QueryException
            dup
            ldc "fetch may only be used with inner join or left outer join"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 98
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.afterFetch:Z
        21: .line 99
            goto 133
        22: .line 100
      StackMap locals:
      StackMap stack:
            aload 3 /* lcToken */
            ldc "outer"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
        23: .line 102
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.afterJoinType:Z
            ifeq 25
        24: .line 103
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            getstatic org.hibernate.sql.JoinType.LEFT_OUTER_JOIN:Lorg/hibernate/sql/JoinType;
            if_acmpeq 133
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            getstatic org.hibernate.sql.JoinType.RIGHT_OUTER_JOIN:Lorg/hibernate/sql/JoinType;
            if_acmpeq 133
        25: .line 105
      StackMap locals:
      StackMap stack:
            new org.hibernate.QueryException
            dup
            ldc "unexpected token: outer"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        26: .line 108
      StackMap locals:
      StackMap stack:
            getstatic org.hibernate.hql.internal.classic.FromParser.JOIN_TYPES:Ljava/util/Map;
            aload 3 /* lcToken */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 33
        27: .line 109
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
            ior
            ifne 28
            new org.hibernate.QueryException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unexpected token: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 110
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.hibernate.hql.internal.classic.FromParser.JOIN_TYPES:Ljava/util/Map;
            aload 3 /* lcToken */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hibernate.sql.JoinType
            putfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
        29: .line 111
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.afterJoinType:Z
        30: .line 112
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
        31: .line 113
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
        32: .line 114
            goto 133
        33: .line 115
      StackMap locals:
      StackMap stack:
            aload 3 /* lcToken */
            ldc "class"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 38
        34: .line 116
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.afterIn:Z
            ifne 35
            new org.hibernate.QueryException
            dup
            ldc "unexpected token: class"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        35: .line 117
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            getstatic org.hibernate.sql.JoinType.NONE:Lorg/hibernate/sql/JoinType;
            if_acmpeq 36
            new org.hibernate.QueryException
            dup
            ldc "outer or full join must be followed by path expression"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        36: .line 118
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.afterClass:Z
        37: .line 119
            goto 133
        38: .line 120
      StackMap locals:
      StackMap stack:
            aload 3 /* lcToken */
            ldc "in"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 48
        39: .line 121
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.alias:Ljava/lang/String;
            ifnonnull 43
        40: .line 122
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.memberDeclarations:Z
        41: .line 123
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterMemberDeclarations:Z
        42: .line 124
            goto 133
        43: .line 125
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingIn:Z
            ifne 45
        44: .line 126
            new org.hibernate.QueryException
            dup
            ldc "unexpected token: in"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        45: .line 128
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.afterIn:Z
        46: .line 129
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingIn:Z
        47: .line 131
            goto 133
        48: .line 132
      StackMap locals:
      StackMap stack:
            aload 3 /* lcToken */
            ldc "as"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 53
        49: .line 133
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
            ifne 50
            new org.hibernate.QueryException
            dup
            ldc "unexpected token: as"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        50: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.afterAs:Z
        51: .line 135
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
        52: .line 136
            goto 133
        53: .line 137
      StackMap locals:
      StackMap stack:
            ldc "("
            aload 1 /* token */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 57
        54: .line 138
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.memberDeclarations:Z
            ifne 55
            new org.hibernate.QueryException
            dup
            ldc "unexpected token: ("
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        55: .line 140
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.expectingPathExpression:Z
        56: .line 142
            goto 133
        57: .line 143
      StackMap locals:
      StackMap stack:
            ldc ")"
            aload 1 /* token */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 60
        58: .line 146
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.afterMemberDeclarations:Z
        59: .line 147
            goto 133
        60: .line 150
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.afterJoinType:Z
            ifeq 61
            new org.hibernate.QueryException
            dup
            new java.lang.StringBuilder
            dup
            ldc "join expected: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        61: .line 151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
            ifeq 62
            new org.hibernate.QueryException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unexpected token: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        62: .line 152
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingIn:Z
            ifeq 63
            new org.hibernate.QueryException
            dup
            new java.lang.StringBuilder
            dup
            ldc "in expected: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        63: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.afterAs:Z
            ifne 64
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
            ifeq 80
        64: .line 164
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.entityName:Ljava/lang/String;
            ifnull 67
        65: .line 165
            aload 2 /* q */
            aload 1 /* token */
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.entityName:Ljava/lang/String;
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.setAliasName:(Ljava/lang/String;Ljava/lang/String;)V
        66: .line 166
            goto 71
        67: .line 167
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.collectionName:Ljava/lang/String;
            ifnull 70
        68: .line 168
            aload 2 /* q */
            aload 1 /* token */
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.collectionName:Ljava/lang/String;
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.setAliasName:(Ljava/lang/String;Ljava/lang/String;)V
        69: .line 169
            goto 71
        70: .line 171
      StackMap locals:
      StackMap stack:
            new org.hibernate.QueryException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unexpected: as "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        71: .line 173
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterAs:Z
        72: .line 174
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
        73: .line 175
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
        74: .line 176
            aload 0 /* this */
            aconst_null
            putfield org.hibernate.hql.internal.classic.FromParser.entityName:Ljava/lang/String;
        75: .line 177
            aload 0 /* this */
            aconst_null
            putfield org.hibernate.hql.internal.classic.FromParser.collectionName:Ljava/lang/String;
        76: .line 178
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.memberDeclarations:Z
        77: .line 179
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingPathExpression:Z
        78: .line 180
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterMemberDeclarations:Z
        79: .line 182
            goto 133
        80: .line 183
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.afterIn:Z
            ifeq 99
        81: .line 188
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.alias:Ljava/lang/String;
            ifnonnull 82
            new org.hibernate.QueryException
            dup
            new java.lang.StringBuilder
            dup
            ldc "alias not specified for: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        82: .line 190
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            getstatic org.hibernate.sql.JoinType.NONE:Lorg/hibernate/sql/JoinType;
            if_acmpeq 83
            new org.hibernate.QueryException
            dup
            ldc "outer or full join must be followed by path expression"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        83: .line 192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.afterClass:Z
            ifeq 88
        84: .line 194
            aload 2 /* q */
            aload 1 /* token */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.getEntityPersisterUsingImports:(Ljava/lang/String;)Lorg/hibernate/persister/entity/Queryable;
            astore 4 /* p */
        start local 4 // org.hibernate.persister.entity.Queryable p
        85: .line 195
            aload 4 /* p */
            ifnonnull 86
            new org.hibernate.QueryException
            dup
            new java.lang.StringBuilder
            dup
            ldc "persister not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        86: .line 196
      StackMap locals: org.hibernate.persister.entity.Queryable
      StackMap stack:
            aload 2 /* q */
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.alias:Ljava/lang/String;
            aload 4 /* p */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.addFromClass:(Ljava/lang/String;Lorg/hibernate/persister/entity/Queryable;)V
        end local 4 // org.hibernate.persister.entity.Queryable p
        87: .line 197
            goto 94
        88: .line 200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            getstatic org.hibernate.sql.JoinType.INNER_JOIN:Lorg/hibernate/sql/JoinType;
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.setJoinType:(Lorg/hibernate/sql/JoinType;)V
        89: .line 201
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            iconst_1
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.setUseThetaStyleJoin:(Z)V
        90: .line 202
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            aload 2 /* q */
            aload 1 /* token */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.unalias:(Ljava/lang/String;)Ljava/lang/String;
            ldc "."
            aload 2 /* q */
            invokestatic org.hibernate.hql.internal.classic.ParserHelper.parse:(Lorg/hibernate/hql/internal/classic/Parser;Ljava/lang/String;Ljava/lang/String;Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;)V
        91: .line 203
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.isCollectionValued:()Z
            ifne 92
            new org.hibernate.QueryException
            dup
            new java.lang.StringBuilder
            dup
            ldc "path expression did not resolve to collection: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
        92: .line 204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            aload 2 /* q */
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.addFromCollection:(Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;)Ljava/lang/String;
            astore 4 /* nm */
        start local 4 // java.lang.String nm
        93: .line 205
            aload 2 /* q */
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.alias:Ljava/lang/String;
            aload 4 /* nm */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.setAliasName:(Ljava/lang/String;Ljava/lang/String;)V
        end local 4 // java.lang.String nm
        94: .line 208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.hibernate.hql.internal.classic.FromParser.alias:Ljava/lang/String;
        95: .line 209
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterIn:Z
        96: .line 210
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterClass:Z
        97: .line 211
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
        98: .line 212
            goto 133
        99: .line 213
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.memberDeclarations:Z
            ifeq 109
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.expectingPathExpression:Z
            ifeq 109
       100: .line 214
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
       101: .line 215
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            getstatic org.hibernate.sql.JoinType.INNER_JOIN:Lorg/hibernate/sql/JoinType;
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.setJoinType:(Lorg/hibernate/sql/JoinType;)V
       102: .line 216
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            iconst_0
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.setUseThetaStyleJoin:(Z)V
       103: .line 217
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            aload 2 /* q */
            aload 1 /* token */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.unalias:(Ljava/lang/String;)Ljava/lang/String;
            ldc "."
            aload 2 /* q */
            invokestatic org.hibernate.hql.internal.classic.ParserHelper.parse:(Lorg/hibernate/hql/internal/classic/Parser;Ljava/lang/String;Ljava/lang/String;Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;)V
       104: .line 218
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.isCollectionValued:()Z
            ifne 105
            new org.hibernate.QueryException
            dup
            new java.lang.StringBuilder
            dup
            ldc "path expression did not resolve to collection: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
       105: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            aload 2 /* q */
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.addFromCollection:(Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;)Ljava/lang/String;
            putfield org.hibernate.hql.internal.classic.FromParser.collectionName:Ljava/lang/String;
       106: .line 220
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingPathExpression:Z
       107: .line 221
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.memberDeclarations:Z
       108: .line 222
            goto 133
       109: .line 230
      StackMap locals:
      StackMap stack:
            aload 2 /* q */
            aload 1 /* token */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.getEntityPersisterUsingImports:(Ljava/lang/String;)Lorg/hibernate/persister/entity/Queryable;
            astore 4 /* p */
        start local 4 // org.hibernate.persister.entity.Queryable p
       110: .line 231
            aload 4 /* p */
            ifnull 116
       111: .line 233
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            getstatic org.hibernate.sql.JoinType.NONE:Lorg/hibernate/sql/JoinType;
            if_acmpeq 112
            new org.hibernate.QueryException
            dup
            ldc "outer or full join must be followed by path expression"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
       112: .line 234
      StackMap locals: org.hibernate.persister.entity.Queryable
      StackMap stack:
            aload 0 /* this */
            aload 2 /* q */
            aload 4 /* p */
            invokeinterface org.hibernate.persister.entity.Queryable.getEntityName:()Ljava/lang/String;
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.createNameFor:(Ljava/lang/String;)Ljava/lang/String;
            putfield org.hibernate.hql.internal.classic.FromParser.entityName:Ljava/lang/String;
       113: .line 235
            aload 2 /* q */
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.entityName:Ljava/lang/String;
            aload 4 /* p */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.addFromClass:(Ljava/lang/String;Lorg/hibernate/persister/entity/Queryable;)V
       114: .line 236
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
       115: .line 237
            goto 133
       116: .line 238
      StackMap locals:
      StackMap stack:
            aload 1 /* token */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 120
       117: .line 241
            aload 0 /* this */
            aload 1 /* token */
            putfield org.hibernate.hql.internal.classic.FromParser.alias:Ljava/lang/String;
       118: .line 242
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.expectingIn:Z
       119: .line 243
            goto 133
       120: .line 252
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            getstatic org.hibernate.sql.JoinType.NONE:Lorg/hibernate/sql/JoinType;
            if_acmpeq 123
       121: .line 253
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.setJoinType:(Lorg/hibernate/sql/JoinType;)V
       122: .line 254
            goto 124
       123: .line 256
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            getstatic org.hibernate.sql.JoinType.INNER_JOIN:Lorg/hibernate/sql/JoinType;
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.setJoinType:(Lorg/hibernate/sql/JoinType;)V
       124: .line 258
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            aload 2 /* q */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.isSubquery:()Z
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.setUseThetaStyleJoin:(Z)V
       125: .line 260
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            aload 2 /* q */
            aload 1 /* token */
            invokevirtual org.hibernate.hql.internal.classic.QueryTranslatorImpl.unalias:(Ljava/lang/String;)Ljava/lang/String;
            ldc "."
            aload 2 /* q */
            invokestatic org.hibernate.hql.internal.classic.ParserHelper.parse:(Lorg/hibernate/hql/internal/classic/Parser;Ljava/lang/String;Ljava/lang/String;Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;)V
       126: .line 261
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            aload 2 /* q */
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.addFromAssociation:(Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;)Ljava/lang/String;
            putfield org.hibernate.hql.internal.classic.FromParser.entityName:Ljava/lang/String;
       127: .line 263
            aload 0 /* this */
            getstatic org.hibernate.sql.JoinType.NONE:Lorg/hibernate/sql/JoinType;
            putfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
       128: .line 264
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            getstatic org.hibernate.sql.JoinType.INNER_JOIN:Lorg/hibernate/sql/JoinType;
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.setJoinType:(Lorg/hibernate/sql/JoinType;)V
       129: .line 266
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.afterFetch:Z
            ifeq 132
       130: .line 267
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.peParser:Lorg/hibernate/hql/internal/classic/PathExpressionParser;
            aload 2 /* q */
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.entityName:Ljava/lang/String;
            invokevirtual org.hibernate.hql.internal.classic.PathExpressionParser.fetch:(Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;Ljava/lang/String;)V
       131: .line 268
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterFetch:Z
       132: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
        end local 4 // org.hibernate.persister.entity.Queryable p
       133: .line 277
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String lcToken
        end local 2 // org.hibernate.hql.internal.classic.QueryTranslatorImpl q
        end local 1 // java.lang.String token
        end local 0 // org.hibernate.hql.internal.classic.FromParser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0  134     0     this  Lorg/hibernate/hql/internal/classic/FromParser;
            0  134     1    token  Ljava/lang/String;
            0  134     2        q  Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;
            1  134     3  lcToken  Ljava/lang/String;
           85   87     4        p  Lorg/hibernate/persister/entity/Queryable;
           93   94     4       nm  Ljava/lang/String;
          110  133     4        p  Lorg/hibernate/persister/entity/Queryable;
    Exceptions:
      throws org.hibernate.QueryException
    MethodParameters:
       Name  Flags
      token  
      q      

  public void start(org.hibernate.hql.internal.classic.QueryTranslatorImpl);
    descriptor: (Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.hql.internal.classic.FromParser this
        start local 1 // org.hibernate.hql.internal.classic.QueryTranslatorImpl q
         0: .line 280
            aload 0 /* this */
            aconst_null
            putfield org.hibernate.hql.internal.classic.FromParser.entityName:Ljava/lang/String;
         1: .line 281
            aload 0 /* this */
            aconst_null
            putfield org.hibernate.hql.internal.classic.FromParser.collectionName:Ljava/lang/String;
         2: .line 282
            aload 0 /* this */
            aconst_null
            putfield org.hibernate.hql.internal.classic.FromParser.alias:Ljava/lang/String;
         3: .line 283
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterIn:Z
         4: .line 284
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterAs:Z
         5: .line 285
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterClass:Z
         6: .line 286
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingJoin:Z
         7: .line 287
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingIn:Z
         8: .line 288
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingAs:Z
         9: .line 289
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.memberDeclarations:Z
        10: .line 290
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.expectingPathExpression:Z
        11: .line 291
            aload 0 /* this */
            iconst_0
            putfield org.hibernate.hql.internal.classic.FromParser.afterMemberDeclarations:Z
        12: .line 292
            aload 0 /* this */
            getstatic org.hibernate.sql.JoinType.NONE:Lorg/hibernate/sql/JoinType;
            putfield org.hibernate.hql.internal.classic.FromParser.joinType:Lorg/hibernate/sql/JoinType;
        13: .line 293
            return
        end local 1 // org.hibernate.hql.internal.classic.QueryTranslatorImpl q
        end local 0 // org.hibernate.hql.internal.classic.FromParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/hibernate/hql/internal/classic/FromParser;
            0   14     1     q  Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;
    MethodParameters:
      Name  Flags
      q     

  public void end(org.hibernate.hql.internal.classic.QueryTranslatorImpl);
    descriptor: (Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.hql.internal.classic.FromParser this
        start local 1 // org.hibernate.hql.internal.classic.QueryTranslatorImpl q
         0: .line 296
            aload 0 /* this */
            getfield org.hibernate.hql.internal.classic.FromParser.afterMemberDeclarations:Z
            ifeq 2
         1: .line 299
            new org.hibernate.QueryException
            dup
            ldc "alias not specified for IN"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 301
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hibernate.hql.internal.classic.QueryTranslatorImpl q
        end local 0 // org.hibernate.hql.internal.classic.FromParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/hql/internal/classic/FromParser;
            0    3     1     q  Lorg/hibernate/hql/internal/classic/QueryTranslatorImpl;
    MethodParameters:
      Name  Flags
      q     
}
SourceFile: "FromParser.java"