//----------------------------------------------------
// The following code was generated by CUP v0.10k TUM Edition 20050516
// Mon Feb 28 17:12:07 CET 2011
//----------------------------------------------------
package org.eclipse.ecr.core.query.sql.parser;
import java_cup.runtime.*;
import org.eclipse.ecr.core.query.*;
import org.eclipse.ecr.core.query.sql.*;
import org.eclipse.ecr.core.query.sql.model.*;
/** CUP v0.10k TUM Edition 20050516 generated parser.
* @version Mon Feb 28 17:12:07 CET 2011
*/
public class parser extends java_cup.runtime.lr_parser {
/** Default constructor. */
public parser() {super();}
/** Constructor which sets the default scanner. */
public parser(java_cup.runtime.Scanner s) {super(s);}
/** Production table. */
protected static final short _production_table[][] =
unpackFromStrings(new String[] {
"\000\125\000\002\002\004\000\002\003\004\000\002\003" +
"\005\000\002\003\006\000\002\003\005\000\002\003\005" +
"\000\002\003\007\000\002\014\004\000\002\014\005\000" +
"\002\014\005\000\002\022\005\000\002\022\007\000\002" +
"\022\003\000\002\022\005\000\002\022\003\000\002\015" +
"\004\000\002\015\005\000\002\015\005\000\002\027\003" +
"\000\002\027\003\000\002\023\005\000\002\023\007\000" +
"\002\023\003\000\002\023\005\000\002\016\004\000\002" +
"\017\004\000\002\025\003\000\002\025\005\000\002\026" +
"\003\000\002\026\004\000\002\026\004\000\002\011\005" +
"\000\002\011\005\000\002\011\005\000\002\011\005\000" +
"\002\011\005\000\002\011\005\000\002\011\005\000\002" +
"\011\005\000\002\011\005\000\002\011\005\000\002\011" +
"\005\000\002\011\005\000\002\011\005\000\002\011\004" +
"\000\002\011\007\000\002\011\010\000\002\011\007\000" +
"\002\011\010\000\002\011\005\000\002\011\005\000\002" +
"\011\006\000\002\011\006\000\002\011\005\000\002\011" +
"\006\000\002\011\005\000\002\005\003\000\002\005\003" +
"\000\002\010\005\000\002\010\005\000\002\010\005\000" +
"\002\010\005\000\002\010\005\000\002\010\005\000\002" +
"\010\005\000\002\010\005\000\002\010\005\000\002\007" +
"\003\000\002\007\003\000\002\004\003\000\002\004\003" +
"\000\002\004\003\000\002\006\003\000\002\006\003\000" +
"\002\006\004\000\002\006\003\000\002\006\004\000\002" +
"\006\004\000\002\006\004\000\002\024\003\000\002\024" +
"\005\000\002\012\005\000\002\012\006\000\002\013\003" +
"\000\002\013\005" });
/** Access to production table. */
public short[][] production_table() {return _production_table;}
/** Parse-action table. */
protected static final short[][] _action_table =
unpackFromStrings(new String[] {
"\000\241\000\004\004\006\001\002\000\004\005\105\001" +
"\002\000\006\002\101\023\100\001\002\000\030\024\016" +
"\025\013\034\021\036\025\053\010\054\026\062\023\064" +
"\011\065\015\066\007\067\017\001\002\000\050\002\uffb8" +
"\005\uffb8\007\uffb8\020\uffb8\023\uffb8\030\uffb8\031\uffb8\033" +
"\uffb8\034\uffb8\035\uffb8\036\uffb8\037\uffb8\040\uffb8\041\uffb8" +
"\042\uffb8\043\uffb8\044\uffb8\045\uffb8\047\uffb8\001\002\000" +
"\004\065\077\001\002\000\050\002\uffbd\005\uffbd\007\uffbd" +
"\020\uffbd\023\uffbd\030\uffbd\031\uffbd\033\uffbd\034\uffbd\035" +
"\uffbd\036\uffbd\037\uffbd\040\uffbd\041\uffbd\042\uffbd\043\uffbd" +
"\044\uffbd\045\uffbd\047\uffbd\001\002\000\050\002\uffbb\005" +
"\uffbb\007\uffbb\020\uffbb\023\uffbb\030\uffbb\031\uffbb\033\uffbb" +
"\034\uffbb\035\uffbb\036\uffbb\037\uffbb\040\uffbb\041\uffbb\042" +
"\uffbb\043\uffbb\044\uffbb\045\uffbb\047\uffbb\001\002\000\024" +
"\034\021\036\025\053\010\054\026\062\023\064\011\065" +
"\015\066\007\067\017\001\002\000\050\002\uffba\005\uffba" +
"\007\uffba\020\uffba\023\uffba\030\uffba\031\uffba\033\uffba\034" +
"\uffba\035\uffba\036\uffba\037\uffba\040\uffba\041\uffba\042\uffba" +
"\043\uffba\044\uffba\045\uffba\047\uffba\001\002\000\050\002" +
"\uffb9\005\uffb9\007\uffb9\020\uffb9\023\uffb9\030\uffb9\031\uffb9" +
"\033\uffb9\034\uffb9\035\uffb9\036\uffb9\037\uffb9\040\uffb9\041" +
"\uffb9\042\uffb9\043\uffb9\044\uffb9\045\uffb9\047\uffb9\001\002" +
"\000\024\034\021\036\025\053\010\054\026\062\023\064" +
"\011\065\015\066\007\067\017\001\002\000\050\002\uffb6" +
"\005\uffb6\007\uffb6\020\uffb6\023\uffb6\030\uffb6\031\uffb6\033" +
"\uffb6\034\uffb6\035\uffb6\036\uffb6\037\uffb6\040\uffb6\041\uffb6" +
"\042\uffb6\043\uffb6\044\uffb6\045\uffb6\047\uffb6\001\002\000" +
"\010\005\ufff5\007\073\045\ufff5\001\002\000\006\066\071" +
"\067\072\001\002\000\006\005\ufffa\045\065\001\002\000" +
"\052\002\uffbe\005\uffbe\007\uffbe\020\uffbe\023\uffbe\030\uffbe" +
"\031\uffbe\033\uffbe\034\uffbe\035\uffbe\036\uffbe\037\uffbe\040" +
"\uffbe\041\uffbe\042\uffbe\043\uffbe\044\uffbe\045\uffbe\046\030" +
"\047\uffbe\001\002\000\050\002\uffbc\005\uffbc\007\uffbc\020" +
"\uffbc\023\uffbc\030\uffbc\031\uffbc\033\uffbc\034\uffbc\035\uffbc" +
"\036\uffbc\037\uffbc\040\uffbc\041\uffbc\042\uffbc\043\uffbc\044" +
"\uffbc\045\uffbc\047\uffbc\001\002\000\006\005\ufff3\045\ufff3" +
"\001\002\000\004\065\027\001\002\000\050\002\uffb3\005" +
"\uffb3\007\uffb3\020\uffb3\023\uffb3\030\uffb3\031\uffb3\033\uffb3" +
"\034\uffb3\035\uffb3\036\uffb3\037\uffb3\040\uffb3\041\uffb3\042" +
"\uffb3\043\uffb3\044\uffb3\045\uffb3\047\uffb3\001\002\000\026" +
"\034\021\046\033\047\036\053\010\054\026\062\023\064" +
"\011\065\015\066\007\067\017\001\002\000\006\045\uffae" +
"\047\uffae\001\002\000\006\045\062\047\063\001\002\000" +
"\024\034\021\046\033\053\010\054\026\062\023\064\011" +
"\065\015\066\007\067\017\001\002\000\044\002\uffc9\020" +
"\uffc9\023\uffc9\030\uffc9\031\uffc9\033\050\034\047\035\052" +
"\036\051\037\uffc9\040\uffc9\041\uffc9\042\uffc9\043\uffc9\044" +
"\uffc9\045\uffc9\047\uffc9\001\002\000\044\002\uffc8\020\uffc8" +
"\023\uffc8\030\uffc8\031\uffc8\033\037\034\040\035\042\036" +
"\041\037\uffc8\040\uffc8\041\uffc8\042\uffc8\043\uffc8\044\uffc8" +
"\045\uffc8\047\uffc8\001\002\000\050\002\uffb0\005\uffb0\007" +
"\uffb0\020\uffb0\023\uffb0\030\uffb0\031\uffb0\033\uffb0\034\uffb0" +
"\035\uffb0\036\uffb0\037\uffb0\040\uffb0\041\uffb0\042\uffb0\043" +
"\uffb0\044\uffb0\045\uffb0\047\uffb0\001\002\000\022\034\021" +
"\053\010\054\026\062\023\064\011\065\015\066\007\067" +
"\017\001\002\000\022\034\021\053\010\054\026\062\023" +
"\064\011\065\015\066\007\067\017\001\002\000\022\034" +
"\021\053\010\054\026\062\023\064\011\065\015\066\007" +
"\067\017\001\002\000\022\034\021\053\010\054\026\062" +
"\023\064\011\065\015\066\007\067\017\001\002\000\044" +
"\002\uffc4\020\uffc4\023\uffc4\030\uffc4\031\uffc4\033\uffc4\034" +
"\uffc4\035\uffc4\036\uffc4\037\uffc4\040\uffc4\041\uffc4\042\uffc4" +
"\043\uffc4\044\uffc4\045\uffc4\047\uffc4\001\002\000\044\002" +
"\uffc5\020\uffc5\023\uffc5\030\uffc5\031\uffc5\033\uffc5\034\uffc5" +
"\035\uffc5\036\uffc5\037\uffc5\040\uffc5\041\uffc5\042\uffc5\043" +
"\uffc5\044\uffc5\045\uffc5\047\uffc5\001\002\000\044\002\uffc6" +
"\020\uffc6\023\uffc6\030\uffc6\031\uffc6\033\uffc6\034\uffc6\035" +
"\uffc6\036\uffc6\037\uffc6\040\uffc6\041\uffc6\042\uffc6\043\uffc6" +
"\044\uffc6\045\uffc6\047\uffc6\001\002\000\044\002\uffc7\020" +
"\uffc7\023\uffc7\030\uffc7\031\uffc7\033\uffc7\034\uffc7\035\uffc7" +
"\036\uffc7\037\uffc7\040\uffc7\041\uffc7\042\uffc7\043\uffc7\044" +
"\uffc7\045\uffc7\047\uffc7\001\002\000\022\034\021\053\010" +
"\054\026\062\023\064\011\065\015\066\007\067\017\001" +
"\002\000\022\034\021\053\010\054\026\062\023\064\011" +
"\065\015\066\007\067\017\001\002\000\022\034\021\053" +
"\010\054\026\062\023\064\011\065\015\066\007\067\017" +
"\001\002\000\022\034\021\053\010\054\026\062\023\064" +
"\011\065\015\066\007\067\017\001\002\000\044\002\uffc0" +
"\020\uffc0\023\uffc0\030\uffc0\031\uffc0\033\uffc0\034\uffc0\035" +
"\uffc0\036\uffc0\037\uffc0\040\uffc0\041\uffc0\042\uffc0\043\uffc0" +
"\044\uffc0\045\uffc0\047\uffc0\001\002\000\044\002\uffc1\020" +
"\uffc1\023\uffc1\030\uffc1\031\uffc1\033\uffc1\034\uffc1\035\uffc1" +
"\036\uffc1\037\uffc1\040\uffc1\041\uffc1\042\uffc1\043\uffc1\044" +
"\uffc1\045\uffc1\047\uffc1\001\002\000\044\002\uffc3\020\uffc3" +
"\023\uffc3\030\uffc3\031\uffc3\033\uffc3\034\uffc3\035\uffc3\036" +
"\uffc3\037\uffc3\040\uffc3\041\uffc3\042\uffc3\043\uffc3\044\uffc3" +
"\045\uffc3\047\uffc3\001\002\000\044\002\uffc2\020\uffc2\023" +
"\uffc2\030\uffc2\031\uffc2\033\uffc2\034\uffc2\035\uffc2\036\uffc2" +
"\037\uffc2\040\uffc2\041\uffc2\042\uffc2\043\uffc2\044\uffc2\045" +
"\uffc2\047\uffc2\001\002\000\012\033\050\034\047\035\052" +
"\036\051\001\002\000\014\033\037\034\040\035\042\036" +
"\041\047\061\001\002\000\044\002\uffbf\020\uffbf\023\uffbf" +
"\030\uffbf\031\uffbf\033\uffbf\034\uffbf\035\uffbf\036\uffbf\037" +
"\uffbf\040\uffbf\041\uffbf\042\uffbf\043\uffbf\044\uffbf\045\uffbf" +
"\047\uffbf\001\002\000\024\034\021\046\033\053\010\054" +
"\026\062\023\064\011\065\015\066\007\067\017\001\002" +
"\000\050\002\uffaf\005\uffaf\007\uffaf\020\uffaf\023\uffaf\030" +
"\uffaf\031\uffaf\033\uffaf\034\uffaf\035\uffaf\036\uffaf\037\uffaf" +
"\040\uffaf\041\uffaf\042\uffaf\043\uffaf\044\uffaf\045\uffaf\047" +
"\uffaf\001\002\000\006\045\uffad\047\uffad\001\002\000\022" +
"\034\021\053\010\054\026\062\023\064\011\065\015\066" +
"\007\067\017\001\002\000\010\005\ufff7\007\067\045\ufff7" +
"\001\002\000\004\062\070\001\002\000\006\005\ufff6\045" +
"\ufff6\001\002\000\050\002\uffb7\005\uffb7\007\uffb7\020\uffb7" +
"\023\uffb7\030\uffb7\031\uffb7\033\uffb7\034\uffb7\035\uffb7\036" +
"\uffb7\037\uffb7\040\uffb7\041\uffb7\042\uffb7\043\uffb7\044\uffb7" +
"\045\uffb7\047\uffb7\001\002\000\050\002\uffb5\005\uffb5\007" +
"\uffb5\020\uffb5\023\uffb5\030\uffb5\031\uffb5\033\uffb5\034\uffb5" +
"\035\uffb5\036\uffb5\037\uffb5\040\uffb5\041\uffb5\042\uffb5\043" +
"\uffb5\044\uffb5\045\uffb5\047\uffb5\001\002\000\004\062\074" +
"\001\002\000\006\005\ufff4\045\ufff4\001\002\000\006\005" +
"\ufff9\045\065\001\002\000\006\005\ufff8\045\065\001\002" +
"\000\050\002\uffb4\005\uffb4\007\uffb4\020\uffb4\023\uffb4\030" +
"\uffb4\031\uffb4\033\uffb4\034\uffb4\035\uffb4\036\uffb4\037\uffb4" +
"\040\uffb4\041\uffb4\042\uffb4\043\uffb4\044\uffb4\045\uffb4\047" +
"\uffb4\001\002\000\004\066\102\001\002\000\004\002\001" +
"\001\002\000\010\002\ufffc\023\ufffc\055\103\001\002\000" +
"\004\066\104\001\002\000\006\002\ufffb\023\ufffb\001\002" +
"\000\012\050\233\052\232\062\230\063\226\001\002\000" +
"\012\002\000\006\112\020\110\023\000\001\002\000\010" +
"\002\uffff\020\110\023\uffff\001\002\000\004\062\217\001" +
"\002\000\006\002\ufffd\023\ufffd\001\002\000\026\032\116" +
"\034\021\046\114\053\010\054\026\062\115\064\011\065" +
"\015\066\007\067\017\001\002\000\022\030\202\031\205" +
"\037\177\040\203\041\176\042\201\043\204\044\200\001" +
"\002\000\026\032\116\034\021\046\114\053\010\054\026" +
"\062\115\064\011\065\015\066\007\067\017\001\002\000" +
"\052\010\132\011\131\012\136\013\133\030\uffbe\031\uffbe" +
"\032\134\033\uffbe\034\uffbe\035\uffbe\036\uffbe\037\uffbe\040" +
"\uffbe\041\uffbe\042\uffbe\043\uffbe\044\uffbe\046\030\051\137" +
"\056\135\001\002\000\026\032\116\034\021\046\114\053" +
"\010\054\026\062\115\064\011\065\015\066\007\067\017" +
"\001\002\000\020\002\uffe9\020\uffe9\023\uffe9\030\121\031" +
"\123\037\120\040\122\001\002\000\026\032\116\034\021" +
"\046\114\053\010\054\026\062\115\064\011\065\015\066" +
"\007\067\017\001\002\000\026\032\116\034\021\046\114" +
"\053\010\054\026\062\115\064\011\065\015\066\007\067" +
"\017\001\002\000\026\032\116\034\021\046\114\053\010" +
"\054\026\062\115\064\011\065\015\066\007\067\017\001" +
"\002\000\026\032\116\034\021\046\114\053\010\054\026" +
"\062\115\064\011\065\015\066\007\067\017\001\002\000" +
"\022\002\uffe1\020\uffe1\023\uffe1\030\121\031\uffe1\037\120" +
"\040\122\047\uffe1\001\002\000\016\002\uffdf\020\uffdf\023" +
"\uffdf\030\uffdf\031\uffdf\047\uffdf\001\002\000\022\002\uffe2" +
"\020\uffe2\023\uffe2\030\uffe2\031\uffe2\037\120\040\122\047" +
"\uffe2\001\002\000\016\002\uffe0\020\uffe0\023\uffe0\030\uffe0" +
"\031\uffe0\047\uffe0\001\002\000\022\002\uffd5\020\uffd5\023" +
"\uffd5\030\uffd5\031\uffd5\037\120\040\122\047\uffd5\001\002" +
"\000\004\065\172\001\002\000\004\046\167\001\002\000" +
"\016\034\021\053\010\054\026\065\015\066\007\067\017" +
"\001\002\000\012\010\146\011\145\012\150\013\147\001" +
"\002\000\006\032\142\057\143\001\002\000\004\065\141" +
"\001\002\000\004\065\140\001\002\000\022\002\uffca\020" +
"\uffca\023\uffca\030\uffca\031\uffca\037\uffca\040\uffca\047\uffca" +
"\001\002\000\022\002\uffcf\020\uffcf\023\uffcf\030\uffcf\031" +
"\uffcf\037\uffcf\040\uffcf\047\uffcf\001\002\000\004\057\144" +
"\001\002\000\022\002\uffcc\020\uffcc\023\uffcc\030\uffcc\031" +
"\uffcc\037\uffcc\040\uffcc\047\uffcc\001\002\000\022\002\uffcb" +
"\020\uffcb\023\uffcb\030\uffcb\031\uffcb\037\uffcb\040\uffcb\047" +
"\uffcb\001\002\000\004\065\163\001\002\000\004\046\155" +
"\001\002\000\016\034\021\053\010\054\026\065\015\066" +
"\007\067\017\001\002\000\004\065\151\001\002\000\022" +
"\002\uffcd\020\uffcd\023\uffcd\030\uffcd\031\uffcd\037\uffcd\040" +
"\uffcd\047\uffcd\001\002\000\004\030\153\001\002\000\016" +
"\034\021\053\010\054\026\065\015\066\007\067\017\001" +
"\002\000\022\002\uffd1\020\uffd1\023\uffd1\030\uffd1\031\uffd1" +
"\037\uffd1\040\uffd1\047\uffd1\001\002\000\016\034\021\053" +
"\010\054\026\065\015\066\007\067\017\001\002\000\006" +
"\045\uffb2\047\uffb2\001\002\000\006\045\160\047\161\001" +
"\002\000\016\034\021\053\010\054\026\065\015\066\007" +
"\067\017\001\002\000\022\002\uffd3\020\uffd3\023\uffd3\030" +
"\uffd3\031\uffd3\037\uffd3\040\uffd3\047\uffd3\001\002\000\006" +
"\045\uffb1\047\uffb1\001\002\000\022\002\uffce\020\uffce\023" +
"\uffce\030\uffce\031\uffce\037\uffce\040\uffce\047\uffce\001\002" +
"\000\004\030\165\001\002\000\016\034\021\053\010\054" +
"\026\065\015\066\007\067\017\001\002\000\022\002\uffd2" +
"\020\uffd2\023\uffd2\030\uffd2\031\uffd2\037\uffd2\040\uffd2\047" +
"\uffd2\001\002\000\016\034\021\053\010\054\026\065\015" +
"\066\007\067\017\001\002\000\006\045\160\047\171\001" +
"\002\000\022\002\uffd4\020\uffd4\023\uffd4\030\uffd4\031\uffd4" +
"\037\uffd4\040\uffd4\047\uffd4\001\002\000\022\002\uffd0\020" +
"\uffd0\023\uffd0\030\uffd0\031\uffd0\037\uffd0\040\uffd0\047\uffd0" +
"\001\002\000\034\030\uffc8\031\uffc8\033\037\034\040\035" +
"\042\036\041\037\uffc8\040\uffc8\041\uffc8\042\uffc8\043\uffc8" +
"\044\uffc8\047\061\001\002\000\014\030\121\031\123\037" +
"\120\040\122\047\175\001\002\000\022\002\uffd6\020\uffd6" +
"\023\uffd6\030\uffd6\031\uffd6\037\uffd6\040\uffd6\047\uffd6\001" +
"\002\000\024\034\021\046\033\053\010\054\026\062\023" +
"\064\011\065\015\066\007\067\017\001\002\000\024\034" +
"\021\046\033\053\010\054\026\062\023\064\011\065\015" +
"\066\007\067\017\001\002\000\024\034\021\046\033\053" +
"\010\054\026\062\023\064\011\065\015\066\007\067\017" +
"\001\002\000\024\034\021\046\033\053\010\054\026\062" +
"\023\064\011\065\015\066\007\067\017\001\002\000\024" +
"\034\021\046\033\053\010\054\026\062\023\064\011\065" +
"\015\066\007\067\017\001\002\000\024\034\021\046\033" +
"\053\010\054\026\062\023\064\011\065\015\066\007\067" +
"\017\001\002\000\024\034\021\046\033\053\010\054\026" +
"\062\023\064\011\065\015\066\007\067\017\001\002\000" +
"\024\034\021\046\033\053\010\054\026\062\023\064\011" +
"\065\015\066\007\067\017\001\002\000\022\002\uffdd\020" +
"\uffdd\023\uffdd\030\uffdd\031\uffdd\037\uffdd\040\uffdd\047\uffdd" +
"\001\002\000\022\002\uffd8\020\uffd8\023\uffd8\030\uffd8\031" +
"\uffd8\037\uffd8\040\uffd8\047\uffd8\001\002\000\022\002\uffdb" +
"\020\uffdb\023\uffdb\030\uffdb\031\uffdb\037\uffdb\040\uffdb\047" +
"\uffdb\001\002\000\022\002\uffde\020\uffde\023\uffde\030\uffde" +
"\031\uffde\037\uffde\040\uffde\047\uffde\001\002\000\022\002" +
"\uffd9\020\uffd9\023\uffd9\030\uffd9\031\uffd9\037\uffd9\040\uffd9" +
"\047\uffd9\001\002\000\022\002\uffd7\020\uffd7\023\uffd7\030" +
"\uffd7\031\uffd7\037\uffd7\040\uffd7\047\uffd7\001\002\000\022" +
"\002\uffdc\020\uffdc\023\uffdc\030\uffdc\031\uffdc\037\uffdc\040" +
"\uffdc\047\uffdc\001\002\000\022\002\uffda\020\uffda\023\uffda" +
"\030\uffda\031\uffda\037\uffda\040\uffda\047\uffda\001\002\000" +
"\010\002\uffe7\023\uffe7\045\uffe7\001\002\000\014\002\uffe5" +
"\023\uffe5\026\224\027\223\045\uffe5\001\002\000\010\002" +
"\uffe8\023\uffe8\045\221\001\002\000\004\062\217\001\002" +
"\000\010\002\uffe6\023\uffe6\045\uffe6\001\002\000\010\002" +
"\uffe3\023\uffe3\045\uffe3\001\002\000\010\002\uffe4\023\uffe4" +
"\045\uffe4\001\002\000\006\002\ufffe\023\ufffe\001\002\000" +
"\016\002\uffee\006\uffee\007\uffee\020\uffee\023\uffee\045\uffee" +
"\001\002\000\014\002\ufff2\006\ufff2\020\ufff2\023\ufff2\045" +
"\235\001\002\000\016\002\uffef\006\uffef\007\uffef\020\uffef" +
"\023\uffef\045\uffef\001\002\000\016\002\uffeb\006\uffeb\007" +
"\242\020\uffeb\023\uffeb\045\uffeb\001\002\000\006\062\230" +
"\063\226\001\002\000\006\062\230\063\226\001\002\000" +
"\014\002\ufff0\006\ufff0\020\ufff0\023\ufff0\045\235\001\002" +
"\000\006\062\230\063\226\001\002\000\016\002\uffed\006" +
"\uffed\007\237\020\uffed\023\uffed\045\uffed\001\002\000\004" +
"\062\240\001\002\000\014\002\uffec\006\uffec\020\uffec\023" +
"\uffec\045\uffec\001\002\000\014\002\ufff1\006\ufff1\020\ufff1" +
"\023\ufff1\045\235\001\002\000\004\062\243\001\002\000" +
"\014\002\uffea\006\uffea\020\uffea\023\uffea\045\uffea\001\002" +
"" });
/** Access to parse-action table. */
public short[][] action_table() {return _action_table;}
/** <code>reduce_goto</code> table. */
protected static final short[][] _reduce_table =
unpackFromStrings(new String[] {
"\000\241\000\006\003\004\014\003\001\001\000\004\015" +
"\105\001\001\000\002\001\001\000\014\004\017\006\023" +
"\007\011\012\013\022\021\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\014" +
"\004\017\006\023\007\011\012\013\022\075\001\001\000" +
"\002\001\001\000\002\001\001\000\014\004\017\006\023" +
"\007\011\012\013\022\074\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
"\001\000\002\001\001\000\020\004\033\005\030\006\023" +
"\007\011\010\034\012\013\013\031\001\001\000\002\001" +
"\001\000\002\001\001\000\014\004\056\006\023\007\011" +
"\010\057\012\013\001\001\000\002\001\001\000\002\001" +
"\001\000\002\001\001\000\012\004\045\006\023\007\011" +
"\012\013\001\001\000\012\004\044\006\023\007\011\012" +
"\013\001\001\000\012\004\043\006\023\007\011\012\013" +
"\001\001\000\012\004\042\006\023\007\011\012\013\001" +
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
"\000\002\001\001\000\012\004\055\006\023\007\011\012" +
"\013\001\001\000\012\004\054\006\023\007\011\012\013" +
"\001\001\000\012\004\053\006\023\007\011\012\013\001" +
"\001\000\012\004\052\006\023\007\011\012\013\001\001" +
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\016\004\033\005\063\006\023\007\011\010" +
"\034\012\013\001\001\000\002\001\001\000\002\001\001" +
"\000\012\004\065\006\023\007\011\012\013\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\006\023\226\027\230" +
"\001\001\000\006\016\106\017\110\001\001\000\004\017" +
"\224\001\001\000\006\025\217\026\215\001\001\000\002" +
"\001\001\000\020\004\033\005\112\006\023\007\011\010" +
"\034\011\116\012\013\001\001\000\002\001\001\000\020" +
"\004\033\005\112\006\023\007\011\010\172\011\173\012" +
"\013\001\001\000\002\001\001\000\020\004\033\005\112" +
"\006\023\007\011\010\034\011\127\012\013\001\001\000" +
"\002\001\001\000\020\004\033\005\112\006\023\007\011" +
"\010\034\011\126\012\013\001\001\000\020\004\033\005" +
"\112\006\023\007\011\010\034\011\125\012\013\001\001" +
"\000\020\004\033\005\112\006\023\007\011\010\034\011" +
"\124\012\013\001\001\000\020\004\033\005\112\006\023" +
"\007\011\010\034\011\123\012\013\001\001\000\002\001" +
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
"\004\006\163\001\001\000\002\001\001\000\002\001\001" +
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\002\001\001\000\002\001\001\000\004\006" +
"\151\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\004\006\153\001\001\000\002\001\001\000" +
"\006\006\155\024\156\001\001\000\002\001\001\000\002" +
"\001\001\000\004\006\161\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\004" +
"\006\165\001\001\000\002\001\001\000\006\006\155\024" +
"\167\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
"\001\000\016\004\033\005\214\006\023\007\011\010\034" +
"\012\013\001\001\000\016\004\033\005\213\006\023\007" +
"\011\010\034\012\013\001\001\000\016\004\033\005\212" +
"\006\023\007\011\010\034\012\013\001\001\000\016\004" +
"\033\005\211\006\023\007\011\010\034\012\013\001\001" +
"\000\016\004\033\005\210\006\023\007\011\010\034\012" +
"\013\001\001\000\016\004\033\005\207\006\023\007\011" +
"\010\034\012\013\001\001\000\016\004\033\005\206\006" +
"\023\007\011\010\034\012\013\001\001\000\016\004\033" +
"\005\205\006\023\007\011\010\034\012\013\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
"\000\002\001\001\000\004\026\221\001\001\000\002\001" +
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
"\002\001\001\000\006\023\240\027\230\001\001\000\006" +
"\023\233\027\230\001\001\000\002\001\001\000\004\027" +
"\235\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
"\001" });
/** Access to <code>reduce_goto</code> table. */
public short[][] reduce_table() {return _reduce_table;}
/** Instance of action encapsulation class. */
protected CUP$parser$actions action_obj;
/** Action encapsulation object initializer. */
protected void init_actions()
{
action_obj = new CUP$parser$actions(this);
}
/** Invoke a user supplied parse action. */
public java_cup.runtime.Symbol do_action(
int act_num,
java_cup.runtime.lr_parser parser,
java.util.Stack stack,
int top)
throws java.lang.Exception
{
/* call code in generated class */
return action_obj.CUP$parser$do_action(act_num, parser, stack, top);
}
/** Indicates start state. */
public int start_state() {return 0;}
/** Indicates start production. */
public int start_production() {return 0;}
/** <code>EOF</code> Symbol index. */
public int EOF_sym() {return 0;}
/** <code>error</code> Symbol index. */
public int error_sym() {return 1;}
public void report_error(String message, Object info) {
// do nothing
}
public void report_fatal_error(String message, Object info) throws QueryParseException {
if (info instanceof Symbol) parseFailed(message, (Symbol)info);
else parseFailed(message, null);
}
public void syntax_error(Symbol cur_token) {
// do nothing
}
public void unrecovered_syntax_error(Symbol cur_token) throws QueryParseException {
parseFailed("Syntax error", cur_token);
}
public void parseFailed(String message, Symbol token) throws QueryParseException {
done_parsing();
if (token != null) {
StringBuffer buf = new StringBuffer(message);
message = buf.append(": Invalid token <").append(token.value).append("> at offset ").append(token.right).toString();
}
throw new QueryParseException(message);
}
}
/** Cup generated class to encapsulate user supplied action code.*/
class CUP$parser$actions {
private final parser parser;
/** Constructor */
CUP$parser$actions(parser parser) {
this.parser = parser;
}
/** Method with the actual generated action code. */
public final java_cup.runtime.Symbol CUP$parser$do_action(
int CUP$parser$act_num,
java_cup.runtime.lr_parser CUP$parser$parser,
java.util.Stack CUP$parser$stack,
int CUP$parser$top)
throws java.lang.Exception
{
/* Symbol object for return from actions */
java_cup.runtime.Symbol CUP$parser$result;
/* select the action based on the action number */
switch (CUP$parser$act_num)
{
/*. . . . . . . . . . . . . . . . . . . .*/
case 84: // function_args ::= function_args COMMA predicate_operand
{
OperandList RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
OperandList l = (OperandList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand v = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
l.add(v); RESULT = l;
CUP$parser$result = new java_cup.runtime.Symbol(9/*function_args*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 83: // function_args ::= predicate_operand
{
OperandList RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand v = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new OperandList(); RESULT.add(v);
CUP$parser$result = new java_cup.runtime.Symbol(9/*function_args*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 82: // function ::= IDENTIFIER LPARA function_args RPARA
{
Function RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int argsleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int argsright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
OperandList args = (OperandList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
RESULT = new Function(name, args);
CUP$parser$result = new java_cup.runtime.Symbol(8/*function*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 81: // function ::= IDENTIFIER LPARA RPARA
{
Function RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
RESULT = new Function(name);
CUP$parser$result = new java_cup.runtime.Symbol(8/*function*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 80: // literal_list ::= literal_list COMMA literal
{
LiteralList RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
LiteralList l = (LiteralList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Literal v = (Literal)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
l.add(v); RESULT = l;
CUP$parser$result = new java_cup.runtime.Symbol(18/*literal_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 79: // literal_list ::= literal
{
LiteralList RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Literal v = (Literal)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new LiteralList(); RESULT.add(v);
CUP$parser$result = new java_cup.runtime.Symbol(18/*literal_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 78: // literal ::= TIMESTAMP STRING
{
Literal RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String v = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new DateLiteral(v, false);
CUP$parser$result = new java_cup.runtime.Symbol(4/*literal*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 77: // literal ::= DATE STRING
{
Literal RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String v = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new DateLiteral(v, true);
CUP$parser$result = new java_cup.runtime.Symbol(4/*literal*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 76: // literal ::= SUB DOUBLE
{
Literal RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String v = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new DoubleLiteral('-'+v);
CUP$parser$result = new java_cup.runtime.Symbol(4/*literal*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 75: // literal ::= DOUBLE
{
Literal RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String v = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new DoubleLiteral(v);
CUP$parser$result = new java_cup.runtime.Symbol(4/*literal*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 74: // literal ::= SUB INTEGER
{
Literal RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String v = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new IntegerLiteral('-'+v);
CUP$parser$result = new java_cup.runtime.Symbol(4/*literal*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 73: // literal ::= INTEGER
{
Literal RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String v = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new IntegerLiteral(v);
CUP$parser$result = new java_cup.runtime.Symbol(4/*literal*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 72: // literal ::= STRING
{
Literal RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String v = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new StringLiteral(v);
CUP$parser$result = new java_cup.runtime.Symbol(4/*literal*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 71: // operand ::= function
{
Operand RESULT = null;
int fleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int fright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Function f = (Function)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = f;
CUP$parser$result = new java_cup.runtime.Symbol(2/*operand*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 70: // operand ::= reference
{
Operand RESULT = null;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Reference r = (Reference)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = r;
CUP$parser$result = new java_cup.runtime.Symbol(2/*operand*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 69: // operand ::= literal
{
Operand RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Literal v = (Literal)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = v;
CUP$parser$result = new java_cup.runtime.Symbol(2/*operand*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 68: // reference ::= PATH_IDENTIFIER
{
Reference RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String v = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new PathReference(v);
CUP$parser$result = new java_cup.runtime.Symbol(5/*reference*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 67: // reference ::= IDENTIFIER
{
Reference RESULT = null;
int vleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int vright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String v = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Reference(v);
CUP$parser$result = new java_cup.runtime.Symbol(5/*reference*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 66: // expression ::= LPARA expression RPARA
{
Expression RESULT = null;
int eleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int eright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
Expression e = (Expression)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
RESULT = e;
CUP$parser$result = new java_cup.runtime.Symbol(6/*expression*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 65: // expression ::= operand DIV operand
{
Expression RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Expression(l, Operator.DIV, r);
CUP$parser$result = new java_cup.runtime.Symbol(6/*expression*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 64: // expression ::= operand MUL operand
{
Expression RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Expression(l, Operator.MUL, r);
CUP$parser$result = new java_cup.runtime.Symbol(6/*expression*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 63: // expression ::= operand SUB operand
{
Expression RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Expression(l, Operator.SUB, r);
CUP$parser$result = new java_cup.runtime.Symbol(6/*expression*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 62: // expression ::= operand SUM operand
{
Expression RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Expression(l, Operator.SUM, r);
CUP$parser$result = new java_cup.runtime.Symbol(6/*expression*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 61: // expression ::= expression DIV operand
{
Expression RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Expression l = (Expression)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Expression(l, Operator.DIV, r);
CUP$parser$result = new java_cup.runtime.Symbol(6/*expression*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 60: // expression ::= expression MUL operand
{
Expression RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Expression l = (Expression)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Expression(l, Operator.MUL, r);
CUP$parser$result = new java_cup.runtime.Symbol(6/*expression*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 59: // expression ::= expression SUB operand
{
Expression RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Expression l = (Expression)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Expression(l, Operator.SUB, r);
CUP$parser$result = new java_cup.runtime.Symbol(6/*expression*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 58: // expression ::= expression SUM operand
{
Expression RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Expression l = (Expression)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Expression(l, Operator.SUM, r);
CUP$parser$result = new java_cup.runtime.Symbol(6/*expression*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 57: // predicate_operand ::= expression
{
Operand RESULT = null;
int eleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int eright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Expression e = (Expression)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = e;
CUP$parser$result = new java_cup.runtime.Symbol(3/*predicate_operand*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 56: // predicate_operand ::= operand
{
Operand RESULT = null;
int oleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int oright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand o = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = o;
CUP$parser$result = new java_cup.runtime.Symbol(3/*predicate_operand*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 55: // predicate ::= IDENTIFIER STARTSWITH STRING
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int sleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int sright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String s = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(new Reference(name), Operator.STARTSWITH, new StringLiteral(s));
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 54: // predicate ::= IDENTIFIER IS NOT NULL
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
RESULT = new Predicate(new Reference(name), Operator.ISNOTNULL, null);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 53: // predicate ::= IDENTIFIER IS NULL
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
RESULT = new Predicate(new Reference(name), Operator.ISNULL, null);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 52: // predicate ::= IDENTIFIER NOT ILIKE STRING
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int sleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int sright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String s = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(new Reference(name), Operator.NOTILIKE, new StringLiteral(s));
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 51: // predicate ::= IDENTIFIER NOT LIKE STRING
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int sleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int sright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String s = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(new Reference(name), Operator.NOTLIKE, new StringLiteral(s));
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 50: // predicate ::= IDENTIFIER ILIKE STRING
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int sleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int sright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String s = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(new Reference(name), Operator.ILIKE, new StringLiteral(s));
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 49: // predicate ::= IDENTIFIER LIKE STRING
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int sleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int sright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String s = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(new Reference(name), Operator.LIKE, new StringLiteral(s));
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 48: // predicate ::= IDENTIFIER NOT BETWEEN literal AND literal
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
int minleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int minright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Literal min = (Literal)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int maxleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int maxright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Literal max = (Literal)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
LiteralList range = new LiteralList();
range.add(min); range.add(max);
RESULT = new Predicate(new Reference(name), Operator.NOTBETWEEN, range);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 47: // predicate ::= IDENTIFIER BETWEEN literal AND literal
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value;
int minleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int minright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Literal min = (Literal)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int maxleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int maxright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Literal max = (Literal)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
LiteralList range = new LiteralList();
range.add(min); range.add(max);
RESULT = new Predicate(new Reference(name), Operator.BETWEEN, range);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 46: // predicate ::= IDENTIFIER NOT IN LPARA literal_list RPARA
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
LiteralList list = (LiteralList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
RESULT = new Predicate(new Reference(name), Operator.NOTIN, list);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 45: // predicate ::= IDENTIFIER IN LPARA literal_list RPARA
{
Predicate RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
LiteralList list = (LiteralList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
RESULT = new Predicate(new Reference(name), Operator.IN, list);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 44: // predicate ::= NOT predicate
{
Predicate RESULT = null;
int pleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int pright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Predicate p = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(p, Operator.NOT, null);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 43: // predicate ::= LPARA predicate RPARA
{
Predicate RESULT = null;
int pleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int pright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
Predicate p = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
RESULT = p;
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 42: // predicate ::= predicate_operand GTEQ predicate_operand
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.GTEQ, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 41: // predicate ::= predicate_operand LTEQ predicate_operand
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.LTEQ, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 40: // predicate ::= predicate_operand GT predicate_operand
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.GT, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 39: // predicate ::= predicate_operand LT predicate_operand
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.LT, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 38: // predicate ::= predicate_operand NOTEQ predicate_operand
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.NOTEQ, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 37: // predicate ::= predicate_operand EQ predicate_operand
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.EQ, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 36: // predicate ::= predicate_operand OR predicate_operand
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.OR, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 35: // predicate ::= predicate_operand AND predicate_operand
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand l = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand r = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.AND, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 34: // predicate ::= predicate NOTEQ predicate
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Predicate l = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Predicate r = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.NOTEQ, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 33: // predicate ::= predicate EQ predicate
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Predicate l = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Predicate r = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.EQ, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 32: // predicate ::= predicate OR predicate
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Predicate l = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Predicate r = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.OR, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 31: // predicate ::= predicate AND predicate
{
Predicate RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Predicate l = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Predicate r = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new Predicate(l, Operator.AND, r);
CUP$parser$result = new java_cup.runtime.Symbol(7/*predicate*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 30: // order_by_expr ::= IDENTIFIER DESC
{
OrderByExpr RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
RESULT = new OrderByExpr(new Reference(name), true);
CUP$parser$result = new java_cup.runtime.Symbol(20/*order_by_expr*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 29: // order_by_expr ::= IDENTIFIER ASC
{
OrderByExpr RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
RESULT = new OrderByExpr(new Reference(name), false);
CUP$parser$result = new java_cup.runtime.Symbol(20/*order_by_expr*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 28: // order_by_expr ::= IDENTIFIER
{
OrderByExpr RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new OrderByExpr(new Reference(name), false);
CUP$parser$result = new java_cup.runtime.Symbol(20/*order_by_expr*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 27: // order_by_list ::= order_by_list COMMA order_by_expr
{
OrderByList RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
OrderByList l = (OrderByList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int eleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int eright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
OrderByExpr e = (OrderByExpr)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
l.add(e); RESULT = l;
CUP$parser$result = new java_cup.runtime.Symbol(19/*order_by_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 26: // order_by_list ::= order_by_expr
{
OrderByList RESULT = null;
int eleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int eright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
OrderByExpr e = (OrderByExpr)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new OrderByList(e);
CUP$parser$result = new java_cup.runtime.Symbol(19/*order_by_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 25: // order_by_clause ::= ORDERBY order_by_list
{
OrderByClause RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
OrderByList l = (OrderByList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new OrderByClause(l);
CUP$parser$result = new java_cup.runtime.Symbol(13/*order_by_clause*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 24: // where_clause ::= WHERE predicate
{
WhereClause RESULT = null;
int eleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int eright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Predicate e = (Predicate)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new WhereClause(e);
CUP$parser$result = new java_cup.runtime.Symbol(12/*where_clause*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 23: // from_list ::= from_key AS IDENTIFIER
{
FromList RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int aliasleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int aliasright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String alias = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new FromList();
RESULT.add(alias, name);
CUP$parser$result = new java_cup.runtime.Symbol(17/*from_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 22: // from_list ::= from_key
{
FromList RESULT = null;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new FromList();
RESULT.add(name, name);
CUP$parser$result = new java_cup.runtime.Symbol(17/*from_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 21: // from_list ::= from_list COMMA from_key AS IDENTIFIER
{
FromList RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).right;
FromList list = (FromList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int aliasleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int aliasright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String alias = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
list.add(alias, name);
RESULT = list;
CUP$parser$result = new java_cup.runtime.Symbol(17/*from_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 20: // from_list ::= from_list COMMA from_key
{
FromList RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
FromList list = (FromList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int nameleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int nameright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String name = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
list.add(name, name);
RESULT = list;
CUP$parser$result = new java_cup.runtime.Symbol(17/*from_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 19: // from_key ::= FROM_IDENTIFIER
{
String RESULT = null;
int idleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int idright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String id = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = id;
CUP$parser$result = new java_cup.runtime.Symbol(21/*from_key*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 18: // from_key ::= IDENTIFIER
{
String RESULT = null;
int idleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int idright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String id = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = id;
CUP$parser$result = new java_cup.runtime.Symbol(21/*from_key*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 17: // from_clause ::= FROM LOCATION from_list
{
FromClause RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
FromList list = (FromList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new FromClause(FromClause.LOCATION, list);
CUP$parser$result = new java_cup.runtime.Symbol(11/*from_clause*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 16: // from_clause ::= FROM TYPE from_list
{
FromClause RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
FromList list = (FromList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new FromClause(FromClause.DOCTYPE, list);
CUP$parser$result = new java_cup.runtime.Symbol(11/*from_clause*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 15: // from_clause ::= FROM from_list
{
FromClause RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
FromList list = (FromList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new FromClause(list);
CUP$parser$result = new java_cup.runtime.Symbol(11/*from_clause*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 14: // select_list ::= MUL
{
SelectList RESULT = null;
RESULT = new SelectList();
CUP$parser$result = new java_cup.runtime.Symbol(16/*select_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 13: // select_list ::= operand AS IDENTIFIER
{
SelectList RESULT = null;
int oleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int oright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand o = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int aliasleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int aliasright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String alias = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new SelectList();
RESULT.add(alias, o);
CUP$parser$result = new java_cup.runtime.Symbol(16/*select_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 12: // select_list ::= operand
{
SelectList RESULT = null;
int oleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int oright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand o = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new SelectList();
RESULT.add(o.toString(), o);
CUP$parser$result = new java_cup.runtime.Symbol(16/*select_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 11: // select_list ::= select_list COMMA operand AS IDENTIFIER
{
SelectList RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).right;
SelectList list = (SelectList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value;
int oleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int oright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
Operand o = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int aliasleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int aliasright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String alias = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
list.add(alias, o);
RESULT = list;
CUP$parser$result = new java_cup.runtime.Symbol(16/*select_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 10: // select_list ::= select_list COMMA operand
{
SelectList RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
SelectList list = (SelectList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int oleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int oright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
Operand o = (Operand)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
list.add(o.toString(), o);
RESULT = list;
CUP$parser$result = new java_cup.runtime.Symbol(16/*select_list*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 9: // select_clause ::= SELECT ALL select_list
{
SelectClause RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
SelectList list = (SelectList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new SelectClause(list, false);
CUP$parser$result = new java_cup.runtime.Symbol(10/*select_clause*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 8: // select_clause ::= SELECT DISTINCT select_list
{
SelectClause RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
SelectList list = (SelectList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new SelectClause(list, true);
CUP$parser$result = new java_cup.runtime.Symbol(10/*select_clause*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 7: // select_clause ::= SELECT select_list
{
SelectClause RESULT = null;
int listleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int listright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
SelectList list = (SelectList)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new SelectClause(list);
CUP$parser$result = new java_cup.runtime.Symbol(10/*select_clause*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 6: // query ::= query LIMIT INTEGER OFFSET INTEGER
{
SQLQuery RESULT = null;
int qleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left;
int qright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).right;
SQLQuery q = (SQLQuery)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
String l = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int oleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int oright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String o = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
q.limit = Long.parseLong(l); q.offset = Long.parseLong(o); RESULT = q;
CUP$parser$result = new java_cup.runtime.Symbol(1/*query*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 5: // query ::= query LIMIT INTEGER
{
SQLQuery RESULT = null;
int qleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int qright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
SQLQuery q = (SQLQuery)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int lleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int lright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
String l = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
q.limit = Long.parseLong(l); RESULT = q;
CUP$parser$result = new java_cup.runtime.Symbol(1/*query*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 4: // query ::= select_clause from_clause order_by_clause
{
SQLQuery RESULT = null;
int selectleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int selectright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
SelectClause select = (SelectClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int fromleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int fromright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
FromClause from = (FromClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int orderleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int orderright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
OrderByClause order = (OrderByClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new SQLQuery(select, from, null, order);
CUP$parser$result = new java_cup.runtime.Symbol(1/*query*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 3: // query ::= select_clause from_clause where_clause order_by_clause
{
SQLQuery RESULT = null;
int selectleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
int selectright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
SelectClause select = (SelectClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
int fromleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int fromright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
FromClause from = (FromClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int whereleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int whereright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
WhereClause where = (WhereClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int orderleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int orderright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
OrderByClause order = (OrderByClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new SQLQuery(select, from, where, order);
CUP$parser$result = new java_cup.runtime.Symbol(1/*query*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 2: // query ::= select_clause from_clause where_clause
{
SQLQuery RESULT = null;
int selectleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
int selectright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
SelectClause select = (SelectClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
int fromleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int fromright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
FromClause from = (FromClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int whereleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int whereright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
WhereClause where = (WhereClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new SQLQuery(select, from, where);
CUP$parser$result = new java_cup.runtime.Symbol(1/*query*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 1: // query ::= select_clause from_clause
{
SQLQuery RESULT = null;
int selectleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int selectright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
SelectClause select = (SelectClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
int fromleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int fromright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
FromClause from = (FromClause)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
RESULT = new SQLQuery(select, from);
CUP$parser$result = new java_cup.runtime.Symbol(1/*query*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
return CUP$parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 0: // $START ::= query EOF
{
Object RESULT = null;
int start_valleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
int start_valright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
SQLQuery start_val = (SQLQuery)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
RESULT = start_val;
CUP$parser$result = new java_cup.runtime.Symbol(0/*$START*/, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right, RESULT);
}
/* ACCEPT */
CUP$parser$parser.done_parsing();
return CUP$parser$result;
/* . . . . . .*/
default:
throw new Exception(
"Invalid action number found in internal parse table");
}
}
}