public void CheckPairedName() { if (Qname.EndsWith("/1")) { PairIndex = 1; PairName = Qname.Substring(0, Qname.Length - 2); } else if (Qname.EndsWith("/2")) { PairIndex = 2; PairName = Qname.Substring(0, Qname.Length - 2); } else if (Flags.HasFlag(SAMFlags.FirstReadInPair)) { PairIndex = 1; PairName = Qname; } else if (Flags.HasFlag(SAMFlags.SecondReadInPair)) { PairIndex = 2; PairName = Qname; } else { throw new ArgumentException(string.Format("Query name is not in pair format (should be end with /1 or /2): {0}", Qname)); } if (PairName.EndsWith("#0")) { PairName = PairName.Substring(0, PairName.Length - 2); } }
internal void Init(string prefix, string ns, string localName) { Index = -1; Qname.Init(prefix, ns, localName); }
/** the generated parser. Maintains a state and a value stack, currently with fixed maximum size. @param yyLex scanner. @return result of the last reduction, if any. @throws yyException on irrecoverable parse error. */ public Object yyparse (yyParser.yyInput yyLex) { if (yyMax <= 0) yyMax = 256; // initial size int yyState = 0; // state stack ptr int [] yyStates = new int[yyMax]; // state stack Object yyVal = null; // value stack ptr Object [] yyVals = new Object[yyMax]; // value stack int yyToken = -1; // current input int yyErrorFlag = 0; // #tks to shift int yyTop = 0; goto skip; yyLoop: yyTop++; skip: for (;; ++ yyTop) { if (yyTop >= yyStates.Length) { // dynamically increase int[] i = new int[yyStates.Length+yyMax]; yyStates.CopyTo (i, 0); yyStates = i; Object[] o = new Object[yyVals.Length+yyMax]; yyVals.CopyTo (o, 0); yyVals = o; } yyStates[yyTop] = yyState; yyVals[yyTop] = yyVal; //t if (debug != null) debug.push(yyState, yyVal); yyDiscarded: for (;;) { // discarding a token does not change stack int yyN; if ((yyN = yyDefRed[yyState]) == 0) { // else [default] reduce (yyN) if (yyToken < 0) { yyToken = yyLex.advance() ? yyLex.token() : 0; //t if (debug != null) //t debug.lex(yyState, yyToken, yyname(yyToken), yyLex.value()); } if ((yyN = yySindex[yyState]) != 0 && ((yyN += yyToken) >= 0) && (yyN < yyTable.Length) && (yyCheck[yyN] == yyToken)) { //t if (debug != null) //t debug.shift(yyState, yyTable[yyN], yyErrorFlag-1); yyState = yyTable[yyN]; // shift to yyN yyVal = yyLex.value(); yyToken = -1; if (yyErrorFlag > 0) -- yyErrorFlag; goto yyLoop; } if ((yyN = yyRindex[yyState]) != 0 && (yyN += yyToken) >= 0 && yyN < yyTable.Length && yyCheck[yyN] == yyToken) yyN = yyTable[yyN]; // reduce (yyN) else switch (yyErrorFlag) { case 0: yyerror("syntax error", yyExpecting(yyState)); //t if (debug != null) debug.error("syntax error"); goto case 1; case 1: case 2: yyErrorFlag = 3; do { if ((yyN = yySindex[yyStates[yyTop]]) != 0 && (yyN += Token.yyErrorCode) >= 0 && yyN < yyTable.Length && yyCheck[yyN] == Token.yyErrorCode) { //t if (debug != null) //t debug.shift(yyStates[yyTop], yyTable[yyN], 3); yyState = yyTable[yyN]; yyVal = yyLex.value(); goto yyLoop; } //t if (debug != null) debug.pop(yyStates[yyTop]); } while (-- yyTop >= 0); //t if (debug != null) debug.reject(); throw new yyParser.yyException("irrecoverable syntax error"); case 3: if (yyToken == 0) { //t if (debug != null) debug.reject(); throw new yyParser.yyException("irrecoverable syntax error at end-of-file"); } //t if (debug != null) //t debug.discard(yyState, yyToken, yyname(yyToken), //t yyLex.value()); yyToken = -1; goto yyDiscarded; // leave stack alone } } int yyV = yyTop + 1-yyLen[yyN]; //t if (debug != null) //t debug.reduce(yyState, yyStates[yyV-1], yyN, yyRule[yyN], yyLen[yyN]); yyVal = yyDefault(yyV > yyTop ? null : yyVals[yyV]); switch (yyN) { case 1: #line 345 "SQL92-min.y" { notation.ConfirmTag(Tag.Stmt, Descriptor.Root, yyVals[0+yyTop]); yyVal = notation.ResolveTag(Tag.Stmt); if (yyVals[-1+yyTop] != null) notation.Confirm((Symbol)yyVal, Descriptor.OptimizerHint, yyVals[-1+yyTop]); } break; case 2: #line 352 "SQL92-min.y" { notation.ConfirmTag(Tag.Stmt, Descriptor.Root, yyVals[-1+yyTop]); notation.ConfirmTag(Tag.Stmt, Descriptor.Order, yyVals[0+yyTop]); yyVal = notation.ResolveTag(Tag.Stmt); if (yyVals[-2+yyTop] != null) notation.Confirm((Symbol)yyVal, Descriptor.OptimizerHint, yyVals[-2+yyTop]); } break; case 3: #line 363 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; } break; case 4: #line 371 "SQL92-min.y" { Symbol sym = new Symbol(Tag.Predicate); yyVal = notation.Confirm(sym, Descriptor.Between, yyVals[-5+yyTop], yyVals[-2+yyTop], yyVals[0+yyTop]); if (yyVals[-4+yyTop] != null) notation.Confirm(sym, Descriptor.Inverse); } break; case 5: #line 381 "SQL92-min.y" { yyVal = null; } break; case 10: #line 398 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Expr), Descriptor.NullIf, yyVals[-3+yyTop], yyVals[-1+yyTop]); } break; case 11: #line 406 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Expr), Descriptor.Coalesce, yyVals[-1+yyTop]); } break; case 12: #line 414 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 13: #line 418 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 22: #line 449 "SQL92-min.y" { Symbol sym = new Symbol(Tag.CExpr); if (yyVals[-1+yyTop] == null) yyVal = notation.Confirm(sym, Descriptor.Substring, yyVals[-4+yyTop], yyVals[-2+yyTop]); else yyVal = notation.Confirm(sym, Descriptor.Substring, yyVals[-4+yyTop], yyVals[-2+yyTop], yyVals[-1+yyTop]); } break; case 23: #line 460 "SQL92-min.y" { yyVal = null; } break; case 24: #line 464 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; } break; case 26: #line 472 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CExpr), Descriptor.Concat, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 31: #line 486 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 32: #line 490 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 39: #line 507 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Predicate), Descriptor.Pred, yyVals[-2+yyTop], yyVals[-1+yyTop], yyVals[0+yyTop]); } break; case 44: #line 527 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; } break; case 45: #line 534 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; } break; case 46: #line 541 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; } break; case 47: #line 548 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; if (yyVals[-2+yyTop] != null) notation.ConfirmTag(Tag.Join, Descriptor.JoinType, new TokenWrapper(yyVals[-2+yyTop])); } break; case 50: #line 562 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; notation.Confirm((Symbol)yyVal, Descriptor.Alias, yyVals[0+yyTop]); } break; case 52: #line 571 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; notation.Confirm((Symbol)yyVal, Descriptor.Dynatable); } break; case 57: #line 592 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CaseExpr), Descriptor.ElseBranch, yyVals[0+yyTop]); } break; case 59: #line 603 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Predicate), Descriptor.Exists, yyVals[0+yyTop]); } break; case 61: #line 618 "SQL92-min.y" { if (yyVals[-1+yyTop].Equals("-")) yyVal = notation.Confirm(new Symbol(Tag.Expr), Descriptor.UnaryMinus, yyVals[0+yyTop]); else yyVal = 2; } break; case 62: #line 629 "SQL92-min.y" { Symbol sym = new Symbol(Tag.CExpr); switch((int)yyVals[-3+yyTop]) { case Token.UPPER: yyVal = notation.Confirm(sym, Descriptor.StringUpper, yyVals[-1+yyTop]); break; case Token.LOWER: yyVal = notation.Confirm(sym, Descriptor.StringLower, yyVals[-1+yyTop]); break; } } break; case 65: #line 651 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CExpr), Descriptor.StringConvert, yyVals[-3+yyTop], yyVals[-1+yyTop]); } break; case 67: #line 663 "SQL92-min.y" { notation.ConfirmTag(Tag.SQuery, Descriptor.From, yyVals[0+yyTop]); } break; case 68: #line 670 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 69: #line 674 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 70: #line 682 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.AggExpr), Descriptor.Aggregate, new TokenWrapper(yyVals[-3+yyTop]), yyVals[-1+yyTop]); } break; case 71: #line 687 "SQL92-min.y" { Symbol sym = new Symbol(Tag.AggExpr); yyVal = notation.Confirm(sym, Descriptor.Aggregate, new TokenWrapper(yyVals[-4+yyTop]), yyVals[-1+yyTop]); if ((int)yyVals[-2+yyTop] == Token.DISTINCT) notation.Confirm(sym, Descriptor.Distinct); } break; case 72: #line 697 "SQL92-min.y" { yyVal = new Parameter(yyVals[0+yyTop].ToString()); } break; case 76: #line 710 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; notation.ConfirmTag(Tag.SQuery, Descriptor.GroupingColumnRef, yyVals[0+yyTop]); } break; case 77: #line 718 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 78: #line 722 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 80: #line 731 "SQL92-min.y" { notation.ConfirmTag(Tag.SQuery, Descriptor.GroupBy, yyVals[0+yyTop]); } break; case 82: #line 739 "SQL92-min.y" { notation.ConfirmTag(Tag.SQuery, Descriptor.Having, yyVals[0+yyTop]); } break; case 86: #line 756 "SQL92-min.y" { Symbol sym = new Symbol(Tag.Predicate); yyVal = notation.Confirm(sym, Descriptor.InSet, yyVals[-3+yyTop], yyVals[0+yyTop]); if (yyVals[-2+yyTop] != null) notation.Confirm(sym, Descriptor.Inverse); } break; case 88: #line 767 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.ValueList), Descriptor.ValueList, yyVals[-1+yyTop]); } break; case 89: #line 774 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 90: #line 778 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 91: #line 785 "SQL92-min.y" { notation.ConfirmTag(Tag.Join, Descriptor.CrossJoin, yyVals[-1+yyTop], yyVals[0+yyTop]); yyVal = notation.ResolveTag(Tag.Join); } break; case 92: #line 790 "SQL92-min.y" { notation.ConfirmTag(Tag.Join, Descriptor.UnionJoin, yyVals[-1+yyTop], yyVals[0+yyTop]); yyVal = notation.ResolveTag(Tag.Join); } break; case 93: #line 795 "SQL92-min.y" { notation.ConfirmTag(Tag.Join, Descriptor.NaturalJoin, yyVals[-1+yyTop], yyVals[0+yyTop]); yyVal = notation.ResolveTag(Tag.Join); } break; case 94: #line 800 "SQL92-min.y" { notation.ConfirmTag(Tag.Join, Descriptor.QualifiedJoin, yyVals[-1+yyTop], yyVals[0+yyTop]); yyVal = notation.ResolveTag(Tag.Join); } break; case 95: #line 805 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Join), Descriptor.Branch, yyVals[-1+yyTop]); } break; case 97: #line 816 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; } break; case 104: #line 835 "SQL92-min.y" { notation.ConfirmTag(Tag.Join, Descriptor.Outer); } break; case 105: #line 842 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Predicate), Descriptor.Like, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 106: #line 847 "SQL92-min.y" { Symbol sym = new Symbol(Tag.Predicate); yyVal = notation.Confirm(sym, Descriptor.Like, yyVals[-2+yyTop], yyVals[0+yyTop]); notation.Confirm(sym, Descriptor.Inverse); } break; case 107: #line 853 "SQL92-min.y" { Symbol sym = new Symbol(Tag.Predicate); yyVal = notation.Confirm(sym, Descriptor.Like, yyVals[-4+yyTop], yyVals[-2+yyTop]); notation.Confirm(sym, Descriptor.Escape, yyVals[0+yyTop]); } break; case 108: #line 859 "SQL92-min.y" { Symbol sym = new Symbol(Tag.Predicate); yyVal = notation.Confirm(sym, Descriptor.Like, yyVals[-4+yyTop], yyVals[-2+yyTop]); notation.Confirm(sym, Descriptor.Inverse); notation.Confirm(sym, Descriptor.Escape, yyVals[0+yyTop]); } break; case 109: #line 871 "SQL92-min.y" { Symbol sym = new Symbol(Tag.Predicate); yyVal = notation.Confirm(sym, Descriptor.Match, yyVals[-4+yyTop], yyVals[0+yyTop]); if (yyVals[-2+yyTop] != null) notation.Confirm(sym, Descriptor.Unique); if (yyVals[-1+yyTop] != null) notation.Confirm(sym, Descriptor.MatchType, new TokenWrapper(yyVals[-1+yyTop])); } break; case 110: #line 883 "SQL92-min.y" { yyVal = null; } break; case 112: #line 891 "SQL92-min.y" { yyVal = null; } break; case 116: #line 904 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Join), Descriptor.Using, yyVals[-1+yyTop]); } break; case 117: #line 911 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Join), Descriptor.Constraint, new TokenWrapper(yyVals[-1+yyTop])); } break; case 118: #line 915 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Join), Descriptor.Constraint, new TokenWrapper(yyVals[-1+yyTop])); } break; case 119: #line 919 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Join), Descriptor.Constraint, yyVals[0+yyTop]); } break; case 121: #line 927 "SQL92-min.y" { Symbol sym = new Symbol(Tag.QueryExp); switch((int)yyVals[-3+yyTop]) { case Token.UNION: notation.Confirm(sym, Descriptor.Union, yyVals[-4+yyTop], yyVals[0+yyTop]); break; case Token.EXCEPT: notation.Confirm(sym, Descriptor.Except, yyVals[-4+yyTop], yyVals[0+yyTop]); break; } if (yyVals[-2+yyTop] != null) notation.Confirm(sym, Descriptor.Distinct); yyVal = sym; } break; case 124: #line 951 "SQL92-min.y" { yyVal = null; } break; case 126: #line 959 "SQL92-min.y" { yyVal = null; } break; case 129: #line 968 "SQL92-min.y" { Symbol sym = new Symbol(Tag.QueryTerm); notation.Confirm(sym, Descriptor.Intersect, yyVals[-4+yyTop], yyVals[0+yyTop]); if (yyVals[-2+yyTop] != null) notation.Confirm(sym, Descriptor.Distinct); yyVal = sym; } break; case 130: #line 980 "SQL92-min.y" { Symbol sym = new Symbol(Tag.Predicate); yyVal = notation.Confirm(sym, Descriptor.IsNull, yyVals[-3+yyTop]); if (yyVals[-1+yyTop] != null) notation.Confirm(sym, Descriptor.Inverse); } break; case 136: #line 1001 "SQL92-min.y" { Symbol sym = new Symbol(Tag.Expr); if (yyVals[-1+yyTop].Equals("+")) yyVal = notation.Confirm(sym, Descriptor.Add, yyVals[-2+yyTop], yyVals[0+yyTop]); else yyVal = notation.Confirm(sym, Descriptor.Sub, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 141: #line 1022 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; } break; case 145: #line 1036 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Predicate), Descriptor.Overlaps, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 149: #line 1053 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Expr), Descriptor.PosString, yyVals[-1+yyTop], yyVals[-3+yyTop]); } break; case 160: #line 1073 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; if (yyVals[-3+yyTop] != null) notation.ConfirmTag(Tag.Join, Descriptor.JoinType, new TokenWrapper(yyVals[-3+yyTop])); notation.ConfirmTag(Tag.Join, Descriptor.JoinSpec, yyVals[0+yyTop]); } break; case 161: #line 1083 "SQL92-min.y" { yyVal = null; } break; case 163: #line 1092 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Predicate), Descriptor.QuantifiedPred, yyVals[-3+yyTop], yyVals[-2+yyTop], new TokenWrapper(yyVals[-1+yyTop]), yyVals[0+yyTop]); } break; case 167: #line 1107 "SQL92-min.y" { if ((int)yyVals[-2+yyTop] == Token.DISTINCT) notation.ConfirmTag(Tag.SQuery, Descriptor.Distinct); if (yyVals[-3+yyTop] != null) notation.ConfirmTag(Tag.SQuery, Descriptor.Top, yyVals[-3+yyTop]); yyVal = notation.ResolveTag(Tag.SQuery); notation.LeaveContext(); } break; case 168: #line 1119 "SQL92-min.y" { yyVal = null; } break; case 169: #line 1123 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; } break; case 174: #line 1141 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.RowValue), Descriptor.RowValue, Lisp.Append(Lisp.Cons(yyVals[-3+yyTop]), yyVals[-1+yyTop])); } break; case 176: #line 1151 "SQL92-min.y" { yyVal = new TokenWrapper(yyVals[0+yyTop]); } break; case 177: #line 1155 "SQL92-min.y" { yyVal = new TokenWrapper(yyVals[0+yyTop]); } break; case 178: #line 1162 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 179: #line 1166 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 180: #line 1175 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CaseExpr), Descriptor.Case, yyVals[-1+yyTop]); } break; case 181: #line 1182 "SQL92-min.y" { object clause_list = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[-1+yyTop])); yyVal = notation.Confirm(new Symbol(Tag.CaseExpr), Descriptor.Case, clause_list); } break; case 182: #line 1190 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 183: #line 1194 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-1+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 184: #line 1201 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CaseExpr), Descriptor.CaseBranch, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 187: #line 1213 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.BooleanExpr), Descriptor.LogicalOR, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 190: #line 1225 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.BooleanExpr), Descriptor.LogicalAND, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 193: #line 1237 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.BooleanExpr), Descriptor.Inverse, yyVals[0+yyTop]); } break; case 195: #line 1245 "SQL92-min.y" { Symbol sym = new Symbol(Tag.BooleanExpr); yyVal = notation.Confirm(sym, Descriptor.BooleanTest, new TokenWrapper(yyVals[0+yyTop]), yyVals[-3+yyTop]); if (yyVals[-1+yyTop] != null) notation.Confirm(sym, Descriptor.Inverse); } break; case 197: #line 1256 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.BooleanExpr), Descriptor.Branch, yyVals[-1+yyTop]); } break; case 201: #line 1270 "SQL92-min.y" { notation.ConfirmTag(Tag.SQuery, Descriptor.Select, null); } break; case 202: #line 1274 "SQL92-min.y" { notation.ConfirmTag(Tag.SQuery, Descriptor.Select, yyVals[0+yyTop]); } break; case 203: #line 1281 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 204: #line 1285 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 205: #line 1292 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.TableFields), Descriptor.TableFields, yyVals[-1+yyTop]); } break; case 207: #line 1300 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.AggExpr), Descriptor.AggCount); } break; case 215: #line 1317 "SQL92-min.y" { notation.EnterContext(); yyVal = Token.ALL; } break; case 216: #line 1322 "SQL92-min.y" { notation.EnterContext(); yyVal = yyVals[0+yyTop]; } break; case 221: #line 1342 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CaseExpr), Descriptor.Case, yyVals[-2+yyTop], yyVals[-1+yyTop]); } break; case 222: #line 1349 "SQL92-min.y" { object clause_list = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[-1+yyTop])); yyVal = notation.Confirm(new Symbol(Tag.CaseExpr), Descriptor.Case, yyVals[-3+yyTop], clause_list); } break; case 223: #line 1357 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 224: #line 1361 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-1+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 227: #line 1374 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CaseExpr), Descriptor.CaseBranch, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 229: #line 1382 "SQL92-min.y" { yyVal = new IntegerValue(yyVals[0+yyTop]); } break; case 230: #line 1390 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; if ((int)yyVals[0+yyTop] == Token.DESC) notation.Confirm((Symbol)yyVals[-1+yyTop], Descriptor.Desc); } break; case 231: #line 1399 "SQL92-min.y" { yyVal = Token.ASC; } break; case 233: #line 1407 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 234: #line 1411 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 238: #line 1430 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; if (yyVals[-2+yyTop] != null) notation.Confirm((Symbol)yyVals[-1+yyTop], Descriptor.OptimizerHint, yyVals[-2+yyTop]); } break; case 239: #line 1436 "SQL92-min.y" { yyVal = yyVals[-2+yyTop]; notation.Confirm((Symbol)yyVals[-2+yyTop], Descriptor.Order, yyVals[-1+yyTop]); if (yyVals[-3+yyTop] != null) notation.Confirm((Symbol)yyVals[-2+yyTop], Descriptor.OptimizerHint, yyVals[-3+yyTop]); } break; case 245: #line 1460 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; notation.Confirm((Symbol)yyVal, Descriptor.Alias, yyVals[0+yyTop]); } break; case 249: #line 1474 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Dynatable), Descriptor.Dynatable, yyVals[0+yyTop]); } break; case 250: #line 1478 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Dynatable), Descriptor.Dynatable, yyVals[0+yyTop]); } break; case 251: #line 1482 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Dynatable), Descriptor.Dynatable, yyVals[-2+yyTop]); } break; case 252: #line 1486 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Dynatable), Descriptor.Dynatable, yyVals[0+yyTop]); } break; case 253: #line 1493 "SQL92-min.y" { yyVal = new Qname(yyVals[0+yyTop]); } break; case 254: #line 1498 "SQL92-min.y" { yyVal = new Qname(yyVals[-3+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.DerivedColumns, yyVals[-1+yyTop]); } break; case 255: #line 1506 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.TableConstructor), Descriptor.TableValue, yyVals[0+yyTop]); } break; case 256: #line 1514 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 257: #line 1518 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 259: #line 1526 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Expr), Descriptor.Mul, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 260: #line 1530 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Expr), Descriptor.Div, yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 261: #line 1537 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; } break; case 262: #line 1544 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CExpr), Descriptor.StringTrim, new TokenWrapper(Token.BOTH), new Literal(" "), yyVals[0+yyTop]); } break; case 263: #line 1549 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CExpr), Descriptor.StringTrim, new TokenWrapper(Token.BOTH), new Literal(" "), yyVals[0+yyTop]); } break; case 264: #line 1554 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CExpr), Descriptor.StringTrim, new TokenWrapper(Token.BOTH), yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 265: #line 1559 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CExpr), Descriptor.StringTrim, new TokenWrapper(yyVals[-2+yyTop]), new Literal(" "), yyVals[0+yyTop]); } break; case 266: #line 1564 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.CExpr), Descriptor.StringTrim, new TokenWrapper(yyVals[-3+yyTop]), yyVals[-2+yyTop], yyVals[0+yyTop]); } break; case 272: #line 1586 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Predicate), Descriptor.Unique, yyVals[0+yyTop]); } break; case 284: #line 1610 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Expr), Descriptor.Branch, yyVals[-1+yyTop]); } break; case 285: #line 1617 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Funcall), Descriptor.Funcall, new Qname(yyVals[-2+yyTop]), null); } break; case 286: #line 1621 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Funcall), Descriptor.Funcall, new Qname(yyVals[-3+yyTop]), yyVals[-1+yyTop]); } break; case 289: #line 1633 "SQL92-min.y" { notation.ConfirmTag(Tag.SQuery, Descriptor.Where, yyVals[0+yyTop]); } break; case 290: #line 1640 "SQL92-min.y" { yyVal = null; } break; case 292: #line 1648 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 293: #line 1652 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-1+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 294: #line 1659 "SQL92-min.y" { yyVal = new Qname(yyVals[0+yyTop]); } break; case 295: #line 1666 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; notation.ConfirmTag(Tag.SQuery, Descriptor.TableName, yyVals[0+yyTop]); } break; case 296: #line 1671 "SQL92-min.y" { notation.ConfirmTag(Tag.SQuery, Descriptor.TableName, yyVals[0+yyTop]); } break; case 297: #line 1678 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; notation.Confirm((Symbol)yyVal, Descriptor.Prefix, new Literal(yyVals[-2+yyTop])); } break; case 299: #line 1687 "SQL92-min.y" { yyVal = yyVals[-2+yyTop]; ((Qname)yyVals[-2+yyTop]).Append((String)yyVals[0+yyTop]); } break; case 300: #line 1695 "SQL92-min.y" { yyVal = yyVals[0+yyTop]; notation.Confirm((Symbol)yyVals[0+yyTop], Descriptor.ColumnRef); } break; case 302: #line 1704 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Dref), Descriptor.Dref, yyVals[-2+yyTop], new Literal((String)yyVals[0+yyTop])); } break; case 303: #line 1708 "SQL92-min.y" { Notation.Record[] recs = notation.Select((Symbol)yyVals[0+yyTop], Descriptor.Funcall, 2); if (recs.Length > 0) { yyVal = notation.Confirm(new Symbol(Tag.Funcall), Descriptor.Funcall, recs[0].Arg0, Lisp.Append(Lisp.Cons(yyVals[-2+yyTop]), recs[0].args[1])); notation.Remove(recs); } else throw new InvalidOperationException(); } break; case 304: #line 1720 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Dref), Descriptor.At, yyVals[-3+yyTop], yyVals[-1+yyTop]); } break; case 305: #line 1724 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Dref), Descriptor.Wref, yyVals[-2+yyTop], new Literal((String)yyVals[0+yyTop])); } break; case 306: #line 1731 "SQL92-min.y" { yyVal = new Qname(yyVals[0+yyTop]); } break; case 307: #line 1738 "SQL92-min.y" { yyVal = new IntegerValue(yyVals[0+yyTop]); } break; case 308: #line 1742 "SQL92-min.y" { yyVal = new DecimalValue(yyVals[0+yyTop]); } break; case 309: #line 1746 "SQL92-min.y" { yyVal = new DoubleValue(yyVals[0+yyTop]); } break; case 310: #line 1750 "SQL92-min.y" { yyVal = new Literal(yyVals[0+yyTop]); } break; case 320: #line 1770 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLQuery, yyVals[-2+yyTop], null, yyVals[-1+yyTop]); } break; case 321: #line 1774 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLQuery, yyVals[-4+yyTop], yyVals[-2+yyTop], yyVals[-1+yyTop]); } break; case 322: #line 1778 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLQuery, yyVals[-6+yyTop], yyVals[-2+yyTop], yyVals[-1+yyTop]); } break; case 323: #line 1785 "SQL92-min.y" { yyVal = null; } break; case 324: #line 1789 "SQL92-min.y" { yyVal = new TokenWrapper(Token.RETURNING_CONTENT); } break; case 325: #line 1793 "SQL92-min.y" { yyVal = new TokenWrapper(Token.RETURNING_SEQUENCE); } break; case 326: #line 1800 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 327: #line 1804 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 328: #line 1811 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.AggExpr), Descriptor.Aggregate, new TokenWrapper(Token.XMLAGG), yyVals[-1+yyTop]); } break; case 329: #line 1816 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.AggExpr), Descriptor.Aggregate, new TokenWrapper(Token.XMLAGG), yyVals[-2+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.Order, yyVals[-1+yyTop]); } break; case 330: #line 1825 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLConcat, yyVals[-1+yyTop]); } break; case 331: #line 1833 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLForestAll); } break; case 332: #line 1837 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLForest, yyVals[-1+yyTop]); } break; case 333: #line 1842 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLForest, yyVals[-1+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.XMLNamespaces, yyVals[-3+yyTop]); } break; case 334: #line 1851 "SQL92-min.y" { String spec = yyVals[-3+yyTop].ToString().ToUpperInvariant(); if (spec.Equals("DOCUMENT") || spec.Equals("CONTENT")) yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLParse, new Literal(spec), yyVals[-2+yyTop], yyVals[-1+yyTop]); else { yyerror(String.Format(Properties.Resources.SyntaxError, String.Format("XMLPARSE({0}...", spec))); throw new yyParser.yyException("Syntax error"); } } break; case 335: #line 1866 "SQL92-min.y" { String spec = (String)yyVals[-2+yyTop]; if (! spec.Equals("NAME", StringComparison.InvariantCultureIgnoreCase)) { yyerror(String.Format(Properties.Resources.SyntaxError, String.Format("XMLPI({0}...", spec))); throw new yyParser.yyException("Syntax error"); } yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLPI, yyVals[-1+yyTop], null); } break; case 336: #line 1877 "SQL92-min.y" { String spec = (String)yyVals[-4+yyTop]; if (! spec.Equals("NAME", StringComparison.InvariantCultureIgnoreCase)) { yyerror(String.Format(Properties.Resources.SyntaxError, String.Format("XMLPI({0}...", spec))); throw new yyParser.yyException("Syntax error"); } yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLPI, yyVals[-3+yyTop], yyVals[-1+yyTop]); } break; case 337: #line 1891 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLComment, yyVals[-1+yyTop]); } break; case 338: #line 1898 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLCDATA, yyVals[-1+yyTop]); } break; case 339: #line 1905 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLRoot, yyVals[-1+yyTop], null, null); } break; case 340: #line 1909 "SQL92-min.y" { String tok = (String)yyVals[-2+yyTop]; if (! tok.Equals("VERSION", StringComparison.InvariantCultureIgnoreCase)) { yyerror(String.Format(Properties.Resources.SyntaxError, String.Format("XMLRoot(... {0} ...", tok))); throw new yyParser.yyException("Syntax error"); } yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLRoot, yyVals[-4+yyTop], new Literal(yyVals[-1+yyTop]), null); } break; case 341: #line 1920 "SQL92-min.y" { String tok = (String)yyVals[-5+yyTop]; if (! tok.Equals("VERSION", StringComparison.InvariantCultureIgnoreCase)) { yyerror(String.Format(Properties.Resources.SyntaxError, String.Format("XMLRoot(... {0} ...", tok))); throw new yyParser.yyException("Syntax error"); } tok = (String)yyVals[-2+yyTop]; if (! tok.Equals("STANDALONE", StringComparison.InvariantCultureIgnoreCase)) { yyerror(String.Format(Properties.Resources.SyntaxError, String.Format("XMLRoot(... {0} ...", tok))); throw new yyParser.yyException("Syntax error"); } yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLRoot, yyVals[-7+yyTop], new Literal(yyVals[-4+yyTop]), yyVals[-1+yyTop]); } break; case 343: #line 1942 "SQL92-min.y" { yyVal = null; } break; case 344: #line 1949 "SQL92-min.y" { String tok = (String)yyVals[0+yyTop]; if (tok.Equals("NO", StringComparison.InvariantCultureIgnoreCase) || tok.Equals("YES", StringComparison.InvariantCultureIgnoreCase)) yyVal = new Qname(tok.ToUpperInvariant()); else throw new yyParser.yyException(String.Format(Properties.Resources.SyntaxError, "STANDALONE value must be YES|NO|NO VALUE")); } break; case 345: #line 1959 "SQL92-min.y" { yyVal = null; } break; case 346: #line 1966 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLElement, yyVals[-1+yyTop], null); } break; case 347: #line 1970 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLElement, yyVals[-3+yyTop], null); notation.Confirm((Symbol)yyVal, Descriptor.XMLNamespaces, yyVals[-1+yyTop]); } break; case 348: #line 1975 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLElement, yyVals[-3+yyTop], null); notation.Confirm((Symbol)yyVal, Descriptor.XMLAttributes, yyVals[-1+yyTop]); } break; case 349: #line 1981 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLElement, yyVals[-5+yyTop], null); notation.Confirm((Symbol)yyVal, Descriptor.XMLNamespaces, yyVals[-3+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.XMLAttributes, yyVals[-1+yyTop]); } break; case 350: #line 1987 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLElement, yyVals[-3+yyTop], yyVals[-1+yyTop]); } break; case 351: #line 1991 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLElement, yyVals[-5+yyTop], yyVals[-1+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.XMLNamespaces, yyVals[-3+yyTop]); } break; case 352: #line 1996 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLElement, yyVals[-5+yyTop], yyVals[-1+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.XMLAttributes, yyVals[-3+yyTop]); } break; case 353: #line 2002 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.XMLElement, yyVals[-7+yyTop], yyVals[-1+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.XMLNamespaces, yyVals[-5+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.XMLAttributes, yyVals[-3+yyTop]); } break; case 354: #line 2011 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; } break; case 355: #line 2018 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 356: #line 2022 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 359: #line 2034 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.DeclNamespace, new Literal(yyVals[-2+yyTop]), yyVals[0+yyTop]); } break; case 360: #line 2042 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.SQLX), Descriptor.DeclNamespace, new Literal(yyVals[0+yyTop]), null); } break; case 361: #line 2047 "SQL92-min.y" { yyVal = null; } break; case 362: #line 2054 "SQL92-min.y" { yyVal = null; } break; case 363: #line 2058 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; } break; case 364: #line 2065 "SQL92-min.y" { yyVal = Lisp.Cons(yyVals[0+yyTop]); } break; case 365: #line 2069 "SQL92-min.y" { yyVal = Lisp.Append(yyVals[-2+yyTop], Lisp.Cons(yyVals[0+yyTop])); } break; case 367: #line 2077 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; notation.Confirm((Symbol)yyVal, Descriptor.ContentOption, yyVals[0+yyTop]); } break; case 368: #line 2082 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.TableFields), Descriptor.TableFields, yyVals[-1+yyTop]); } break; case 369: #line 2086 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.TableFields), Descriptor.TableFields, yyVals[-2+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.ContentOption, yyVals[0+yyTop]); } break; case 371: #line 2095 "SQL92-min.y" { yyVal = yyVals[-1+yyTop]; notation.Confirm((Symbol)yyVal, Descriptor.Alias, yyVals[0+yyTop]); } break; case 372: #line 2103 "SQL92-min.y" { yyVal = null; } break; case 374: #line 2111 "SQL92-min.y" { yyVal = new TokenWrapper(Token.PRESERVE_WHITESPACE); } break; case 375: #line 2115 "SQL92-min.y" { yyVal = new TokenWrapper(Token.STRIP_WHITESPACE); } break; case 376: #line 2122 "SQL92-min.y" { yyVal = new TokenWrapper(Token.OPTION_NULL); } break; case 377: #line 2126 "SQL92-min.y" { yyVal = new TokenWrapper(Token.OPTION_EMPTY); } break; case 378: #line 2130 "SQL92-min.y" { yyVal = new TokenWrapper(Token.OPTION_ABSENT); } break; case 379: #line 2134 "SQL92-min.y" { yyVal = new TokenWrapper(Token.OPTION_NIL); } break; case 380: #line 2138 "SQL92-min.y" { yyVal = new TokenWrapper(Token.NO_CONTENT); } break; case 383: #line 2150 "SQL92-min.y" { yyVal = notation.Confirm(new Symbol(Tag.Expr), Descriptor.Cast, yyVals[-3+yyTop], yyVals[-1+yyTop]); } break; case 384: #line 2158 "SQL92-min.y" { yyVal = null; } break; case 388: #line 2168 "SQL92-min.y" { yyVal = new TokenWrapper(yyVals[0+yyTop]); } break; case 390: #line 2176 "SQL92-min.y" { yyVal = new TokenWrapper(yyVals[0+yyTop]); } break; case 391: #line 2180 "SQL92-min.y" { yyVal = new TokenWrapper(yyVals[-3+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.Typelen, yyVals[-1+yyTop]); } break; case 399: #line 2198 "SQL92-min.y" { yyVal = new TokenWrapper(yyVals[0+yyTop]); } break; case 405: #line 2213 "SQL92-min.y" { yyVal = new TokenWrapper(yyVals[0+yyTop]); } break; case 406: #line 2217 "SQL92-min.y" { yyVal = new TokenWrapper(yyVals[-3+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.Typeprec, yyVals[-1+yyTop]); } break; case 407: #line 2222 "SQL92-min.y" { yyVal = new TokenWrapper(yyVals[-5+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.Typeprec, yyVals[-3+yyTop]); notation.Confirm((Symbol)yyVal, Descriptor.Typescale, yyVals[-1+yyTop]); } break; case 411: #line 2237 "SQL92-min.y" { yyVal = new TokenWrapper(Token.FLOAT); } break; case 412: #line 2241 "SQL92-min.y" { yyVal = new TokenWrapper(Token.FLOAT); notation.Confirm((Symbol)yyVal, Descriptor.Typeprec, yyVals[-1+yyTop]); } break; case 413: #line 2249 "SQL92-min.y" { yyVal = new Qname(yyVals[0+yyTop]); } break; #line default } yyTop -= yyLen[yyN]; yyState = yyStates[yyTop]; int yyM = yyLhs[yyN]; if (yyState == 0 && yyM == 0) { //t if (debug != null) debug.shift(0, yyFinal); yyState = yyFinal; if (yyToken < 0) { yyToken = yyLex.advance() ? yyLex.token() : 0; //t if (debug != null) //t debug.lex(yyState, yyToken,yyname(yyToken), yyLex.value()); } if (yyToken == 0) { //t if (debug != null) debug.accept(yyVal); return yyVal; } goto yyLoop; } if (((yyN = yyGindex[yyM]) != 0) && ((yyN += yyState) >= 0) && (yyN < yyTable.Length) && (yyCheck[yyN] == yyState)) yyState = yyTable[yyN]; else yyState = yyDgoto[yyM]; //t if (debug != null) debug.shift(yyStates[yyTop], yyState); goto yyLoop; } } }