//---------------------------------------------------- // The following code was generated by CUP v0.11a beta 20060608 // Thu Nov 23 22:36:21 CET 2006 //---------------------------------------------------- package se.chalmers.cs.gf.GFC; /** CUP v0.11a beta 20060608 generated parser. * @version Thu Nov 23 22:36:21 CET 2006 */ 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);} /** Constructor which sets the default scanner. */ public parser(java_cup.runtime.Scanner s, java_cup.runtime.SymbolFactory sf) {super(s,sf);} /** Production table. */ protected static final short _production_table[][] = unpackFromStrings(new String[] { "\000\216\000\002\002\004\000\002\002\010\000\002\002" + "\003\000\002\003\007\000\002\003\007\000\002\003\004" + "\000\002\003\004\000\002\003\003\000\002\004\012\000" + "\002\005\004\000\002\005\006\000\002\005\004\000\002" + "\005\010\000\002\006\002\000\002\006\004\000\002\007" + "\004\000\002\007\002\000\002\010\005\000\002\010\002" + "\000\002\011\006\000\002\012\011\000\002\012\010\000" + "\002\012\006\000\002\012\006\000\002\012\010\000\002" + "\012\012\000\002\012\015\000\002\012\006\000\002\013" + "\004\000\002\014\003\000\002\014\002\000\002\015\005" + "\000\002\016\004\000\002\016\003\000\002\017\011\000" + "\002\017\006\000\002\017\005\000\002\017\003\000\002" + "\020\003\000\002\020\003\000\002\020\005\000\002\021" + "\003\000\002\022\005\000\002\023\006\000\002\023\003" + "\000\002\023\003\000\002\023\003\000\002\023\003\000" + "\002\023\003\000\002\024\002\000\002\024\003\000\002" + "\024\005\000\002\025\002\000\002\025\004\000\002\026" + "\002\000\002\026\005\000\002\027\003\000\002\027\005" + "\000\002\027\004\000\002\027\004\000\002\027\003\000" + "\002\027\003\000\002\027\003\000\002\030\005\000\002" + "\031\005\000\002\031\007\000\002\031\003\000\002\031" + "\003\000\002\031\004\000\002\032\005\000\002\033\003" + "\000\002\033\003\000\002\033\006\000\002\033\004\000" + "\002\033\005\000\002\033\003\000\002\033\003\000\002" + "\033\003\000\002\033\004\000\002\033\005\000\002\034" + "\005\000\002\034\007\000\002\034\007\000\002\034\005" + "\000\002\034\006\000\002\034\003\000\002\035\005\000" + "\002\035\003\000\002\036\003\000\002\036\011\000\002" + "\037\005\000\002\040\005\000\002\041\005\000\002\042" + "\003\000\002\042\004\000\002\043\005\000\002\043\007" + "\000\002\044\006\000\002\044\003\000\002\044\003\000" + "\002\044\005\000\002\044\003\000\002\044\003\000\002" + "\045\005\000\002\046\002\000\002\046\005\000\002\047" + "\002\000\002\047\005\000\002\050\002\000\002\050\003" + "\000\002\050\005\000\002\051\002\000\002\051\004\000" + "\002\052\002\000\002\052\004\000\002\053\002\000\002" + "\053\003\000\002\053\005\000\002\054\002\000\002\054" + "\003\000\002\054\005\000\002\055\002\000\002\055\003" + "\000\002\055\005\000\002\056\002\000\002\056\003\000" + "\002\056\005\000\002\057\002\000\002\057\004\000\002" + "\060\002\000\002\060\004\000\002\061\002\000\002\061" + "\003\000\002\061\005\000\002\062\002\000\002\062\003" + "\000\002\062\005\000\002\063\002\000\002\063\004\000" + "\002\064\002\000\002\064\003\000\002\064\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\u0119\000\016\002\ufff4\041\ufff4\043\ufff4\047\006\060" + "\ufff4\062\ufff4\001\002\000\004\002\u011b\001\002\000\014" + "\002\uffff\041\023\043\022\060\020\062\017\001\002\000" + "\006\053\uff76\067\010\001\002\000\004\053\013\001\002" + "\000\012\012\uff75\035\011\050\uff75\053\uff75\001\002\000" + "\012\012\uff76\050\uff76\053\uff76\067\010\001\002\000\010" + "\012\uff74\050\uff74\053\uff74\001\002\000\004\067\014\001" + "\002\000\004\004\015\001\002\000\014\002\ufff4\041\ufff4" + "\043\ufff4\060\ufff4\062\ufff4\001\002\000\014\002\000\041" + "\023\043\022\060\020\062\017\001\002\000\004\067\u0116" + "\001\002\000\004\067\u0115\001\002\000\014\002\ufff3\041" + "\ufff3\043\ufff3\060\ufff3\062\ufff3\001\002\000\004\067\u0112" + "\001\002\000\004\067\u0111\001\002\000\004\005\025\001" + "\002\000\012\006\ufff1\012\uff76\054\ufff1\067\010\001\002" + "\000\004\012\u0110\001\002\000\006\006\uffef\054\031\001" + "\002\000\004\006\034\001\002\000\006\050\uff76\067\010" + "\001\002\000\004\050\033\001\002\000\004\006\ufff0\001" + "\002\000\026\007\uff99\042\uff99\045\uff99\046\uff99\051\uff99" + "\052\uff99\055\uff99\056\uff99\062\uff99\067\uff99\001\002\000" + "\026\007\uff97\042\uff97\045\036\046\uff97\051\uff97\052\uff97" + "\055\uff97\056\uff97\062\uff97\067\uff97\001\002\000\004\067" + "\u010d\001\002\000\024\007\044\042\042\046\053\051\052" + "\052\051\055\050\056\047\062\045\067\046\001\002\000" + "\004\004\041\001\002\000\026\007\uff98\042\uff98\045\uff98" + "\046\uff98\051\uff98\052\uff98\055\uff98\056\uff98\062\uff98\067" + "\uff98\001\002\000\004\067\u0100\001\002\000\004\004\377" + "\001\002\000\014\002\ufff9\041\ufff9\043\ufff9\060\ufff9\062" + "\ufff9\001\002\000\004\067\374\001\002\000\006\044\371" + "\050\uffe3\001\002\000\004\067\357\001\002\000\004\067" + "\352\001\002\000\004\067\343\001\002\000\004\067\145" + "\001\002\000\004\067\054\001\002\000\004\010\055\001" + "\002\000\030\006\060\015\076\017\070\022\066\024\063" + "\025\062\040\057\044\056\064\067\065\072\067\065\001" + "\002\000\034\004\uffda\005\uffda\014\uffda\017\uffda\020\uffda" + "\022\uffda\024\uffda\025\uffda\040\uffda\044\uffda\064\uffda\065" + "\uffda\067\uffda\001\002\000\034\004\uffd8\005\uffd8\014\uffd8" + "\017\uffd8\020\uffd8\022\uffd8\024\uffd8\025\uffd8\040\uffd8\044" + "\uffd8\064\uffd8\065\uffd8\067\uffd8\001\002\000\022\007\uffcb" + "\011\uffcb\017\uffcb\021\uffcb\064\uffcb\065\uffcb\066\uffcb\067" + "\uffcb\001\002\000\004\005\122\001\002\000\004\065\121" + "\001\002\000\004\067\120\001\002\000\034\004\uffc9\005" + "\uffc9\014\uffc9\017\uffc9\020\uffc9\022\uffc9\024\uffc9\025\uffc9" + "\040\uffc9\044\uffc9\064\uffc9\065\uffc9\067\uffc9\001\002\000" + "\004\016\107\001\002\000\004\067\065\001\002\000\034" + "\004\uffc5\005\uffc5\014\uffc5\017\uffc5\020\uffc5\022\uffc5\024" + "\uffc5\025\uffc5\040\uffc5\044\uffc5\064\uffc5\065\uffc5\067\uffc5" + "\001\002\000\030\006\060\015\076\017\070\022\066\024" + "\063\025\062\040\057\044\056\064\067\065\072\067\106" + "\001\002\000\034\004\uffc3\005\uffc3\014\uffc3\017\uffc3\020" + "\uffc3\022\uffc3\024\uffc3\025\uffc3\040\uffc3\044\uffc3\064\uffc3" + "\065\uffc3\067\uffc3\001\002\000\034\004\uffc4\005\uffc4\014" + "\uffc4\017\uffc4\020\uffc4\022\uffc4\024\uffc4\025\uffc4\040\uffc4" + "\044\uffc4\064\uffc4\065\uffc4\067\uffc4\001\002\000\034\004" + "\uffdb\005\uffdb\014\uffdb\017\uffdb\020\uffdb\022\uffdb\024\uffdb" + "\025\uffdb\040\uffdb\044\uffdb\064\uffdb\065\uffdb\067\uffdb\001" + "\002\000\034\004\uffe0\005\uffe0\014\uffe0\017\uffe0\020\uffe0" + "\022\uffe0\024\uffe0\025\uffe0\040\uffe0\044\uffe0\064\uffe0\065" + "\uffe0\067\uffe0\001\002\000\034\004\uffdc\005\uffdc\014\uffdc" + "\017\102\020\uffdc\022\066\024\063\025\062\040\057\044" + "\056\064\067\065\072\067\065\001\002\000\004\067\077" + "\001\002\000\004\011\100\001\002\000\030\006\060\015" + "\076\017\070\022\066\024\063\025\062\040\057\044\056" + "\064\067\065\072\067\065\001\002\000\012\004\uffde\005" + "\uffde\014\uffde\020\uffde\001\002\000\030\006\060\015\076" + "\017\070\022\066\024\063\025\062\040\057\044\056\064" + "\067\065\072\067\065\001\002\000\034\004\uffe1\005\uffe1" + "\014\uffe1\017\uffe1\020\uffe1\022\uffe1\024\uffe1\025\uffe1\040" + "\uffe1\044\uffe1\064\uffe1\065\uffe1\067\uffe1\001\002\000\004" + "\020\105\001\002\000\034\004\uffd9\005\uffd9\014\uffd9\017" + "\uffd9\020\uffd9\022\uffd9\024\uffd9\025\uffd9\040\uffd9\044\uffd9" + "\064\uffd9\065\uffd9\067\uffd9\001\002\000\006\010\110\016" + "\107\001\002\000\004\067\115\001\002\000\030\006\060" + "\015\076\017\070\022\066\024\063\025\062\040\057\044" + "\056\064\067\065\072\067\065\001\002\000\004\020\112" + "\001\002\000\004\011\113\001\002\000\030\006\060\015" + "\076\017\070\022\066\024\063\025\062\040\057\044\056" + "\064\067\065\072\067\065\001\002\000\012\004\uffdf\005" + "\uffdf\014\uffdf\020\uffdf\001\002\000\066\004\uffe2\005\uffe2" + "\006\uffe2\007\uffe2\013\uffe2\014\uffe2\016\uffe2\017\uffe2\020" + "\uffe2\021\uffe2\022\uffe2\023\uffe2\024\uffe2\025\uffe2\026\uffe2" + "\027\uffe2\030\uffe2\034\uffe2\036\uffe2\037\uffe2\040\uffe2\044" + "\uffe2\064\uffe2\065\uffe2\066\uffe2\067\uffe2\001\002\000\004" + "\023\117\001\002\000\034\004\uffc8\005\uffc8\014\uffc8\017" + "\uffc8\020\uffc8\022\uffc8\024\uffc8\025\uffc8\040\uffc8\044\uffc8" + "\064\uffc8\065\uffc8\067\uffc8\001\002\000\034\004\uffc7\005" + "\uffc7\014\uffc7\017\uffc7\020\uffc7\022\uffc7\024\uffc7\025\uffc7" + "\040\uffc7\044\uffc7\064\uffc7\065\uffc7\067\uffc7\001\002\000" + "\034\004\uffc6\005\uffc6\014\uffc6\017\uffc6\020\uffc6\022\uffc6" + "\024\uffc6\025\uffc6\040\uffc6\044\uffc6\064\uffc6\065\uffc6\067" + "\uffc6\001\002\000\030\006\060\015\076\017\070\022\066" + "\024\063\025\062\040\057\044\056\064\067\065\072\067" + "\065\001\002\000\004\004\uffec\001\002\000\022\007\125" + "\011\uffcd\017\uffcd\021\uffcd\064\uffcd\065\uffcd\066\uffcd\067" + "\uffcd\001\002\000\012\004\uffdd\005\uffdd\014\uffdd\020\uffdd" + "\001\002\000\004\004\144\001\002\000\020\011\136\017" + "\137\021\134\064\130\065\132\066\133\067\131\001\002" + "\000\022\011\uffd4\017\uffd4\020\uffd4\021\uffd4\064\uffd4\065" + "\uffd4\066\uffd4\067\uffd4\001\002\000\022\011\uffd5\017\uffd5" + "\020\uffd5\021\uffd5\064\uffd5\065\uffd5\066\uffd5\067\uffd5\001" + "\002\000\022\011\uffd3\017\uffd3\020\uffd3\021\uffd3\064\uffd3" + "\065\uffd3\066\uffd3\067\uffd3\001\002\000\022\011\uffd2\017" + "\uffd2\020\uffd2\021\uffd2\064\uffd2\065\uffd2\066\uffd2\067\uffd2" + "\001\002\000\022\011\uffd1\017\uffd1\020\uffd1\021\uffd1\064" + "\uffd1\065\uffd1\066\uffd1\067\uffd1\001\002\000\022\011\uffcc" + "\017\uffcc\020\uffcc\021\uffcc\064\uffcc\065\uffcc\066\uffcc\067" + "\uffcc\001\002\000\030\006\060\015\076\017\070\022\066" + "\024\063\025\062\040\057\044\056\064\067\065\072\067" + "\065\001\002\000\004\067\065\001\002\000\020\017\uffcd" + "\020\uffcd\021\uffcd\064\uffcd\065\uffcd\066\uffcd\067\uffcd\001" + "\002\000\020\017\137\020\142\021\134\064\130\065\132" + "\066\133\067\131\001\002\000\022\011\uffd6\017\uffd6\020" + "\uffd6\021\uffd6\064\uffd6\065\uffd6\066\uffd6\067\uffd6\001\002" + "\000\004\004\uffd7\001\002\000\022\007\uffca\011\uffca\017" + "\uffca\021\uffca\064\uffca\065\uffca\066\uffca\067\uffca\001\002" + "\000\004\010\146\001\002\000\004\067\065\001\002\000" + "\004\005\150\001\002\000\004\015\151\001\002\000\006" + "\011\uff8b\067\154\001\002\000\004\011\165\001\002\000" + "\006\011\uff8a\035\163\001\002\000\006\032\155\033\156" + "\001\002\000\004\065\162\001\002\000\004\065\157\001" + "\002\000\004\032\160\001\002\000\004\065\161\001\002" + "\000\050\004\uffa1\006\uffa1\007\uffa1\011\uffa1\013\uffa1\014" + "\uffa1\016\uffa1\017\uffa1\020\uffa1\022\uffa1\023\uffa1\024\uffa1" + "\027\uffa1\030\uffa1\035\uffa1\064\uffa1\065\uffa1\066\uffa1\067" + "\uffa1\001\002\000\050\004\uffa2\006\uffa2\007\uffa2\011\uffa2" + "\013\uffa2\014\uffa2\016\uffa2\017\uffa2\020\uffa2\022\uffa2\023" + "\uffa2\024\uffa2\027\uffa2\030\uffa2\035\uffa2\064\uffa2\065\uffa2" + "\066\uffa2\067\uffa2\001\002\000\006\011\uff8b\067\154\001" + "\002\000\004\011\uff89\001\002\000\030\006\172\013\167" + "\017\203\022\201\024\174\061\175\063\173\064\177\065" + "\204\066\205\067\200\001\002\000\016\004\uffac\007\uffac" + "\016\341\020\uffac\027\uffac\030\uffac\001\002\000\006\014" + "\324\057\323\001\002\000\014\004\uffaa\007\uffaa\020\uffaa" + "\027\213\030\uffaa\001\002\000\044\004\uffb4\006\uffb4\007" + "\uffb4\013\uffb4\014\uffb4\016\uffb4\017\uffb4\020\uffb4\022\uffb4" + "\023\uffb4\024\uffb4\027\uffb4\030\uffb4\064\uffb4\065\uffb4\066" + "\uffb4\067\uffb4\001\002\000\010\007\uff8e\024\261\067\260" + "\001\002\000\004\006\310\001\002\000\004\067\307\001" + "\002\000\014\006\224\017\230\036\226\037\225\067\065" + "\001\002\000\044\004\uffba\006\uffba\007\uffba\013\uffba\014" + "\uffba\016\uffba\017\uffba\020\uffba\022\uffba\023\uffba\024\uffba" + "\027\uffba\030\uffba\064\uffba\065\uffba\066\uffba\067\uffba\001" + "\002\000\044\004\uffa9\006\uffa9\007\uffa9\013\uffa9\014\uffa9" + "\016\uffa9\017\uffa9\020\uffa9\022\uffa9\023\uffa9\024\uffa9\027" + "\uffa9\030\uffa9\064\uffa9\065\uffa9\066\uffa9\067\uffa9\001\002" + "\000\010\016\107\032\155\033\156\001\002\000\004\067" + "\065\001\002\000\006\004\215\030\210\001\002\000\030" + "\006\172\013\167\017\203\022\201\024\174\061\175\063" + "\173\064\177\065\204\066\205\067\200\001\002\000\044" + "\004\uffb6\006\uffb6\007\uffb6\013\uffb6\014\uffb6\016\uffb6\017" + "\uffb6\020\uffb6\022\uffb6\023\uffb6\024\uffb6\027\uffb6\030\uffb6" + "\064\uffb6\065\uffb6\066\uffb6\067\uffb6\001\002\000\044\004" + "\uffb5\006\uffb5\007\uffb5\013\uffb5\014\uffb5\016\uffb5\017\uffb5" + "\020\uffb5\022\uffb5\023\uffb5\024\uffb5\027\uffb5\030\uffb5\064" + "\uffb5\065\uffb5\066\uffb5\067\uffb5\001\002\000\044\004\uffbb" + "\006\uffbb\007\uffbb\013\uffbb\014\uffbb\016\uffbb\017\uffbb\020" + "\uffbb\022\uffbb\023\uffbb\024\uffbb\027\uffbb\030\uffbb\064\uffbb" + "\065\uffbb\066\uffbb\067\uffbb\001\002\000\006\020\211\030" + "\210\001\002\000\030\006\172\013\167\017\203\022\201" + "\024\174\061\175\063\173\064\177\065\204\066\205\067" + "\200\001\002\000\044\004\uffb2\006\uffb2\007\uffb2\013\uffb2" + "\014\uffb2\016\uffb2\017\uffb2\020\uffb2\022\uffb2\023\uffb2\024" + "\uffb2\027\uffb2\030\uffb2\064\uffb2\065\uffb2\066\uffb2\067\uffb2" + "\001\002\000\014\004\uffab\007\uffab\020\uffab\027\213\030" + "\uffab\001\002\000\024\006\172\013\167\017\203\022\201" + "\024\174\064\177\065\204\066\205\067\200\001\002\000" + "\014\004\uffae\007\uffae\020\uffae\027\uffae\030\uffae\001\002" + "\000\030\006\172\013\167\017\203\022\201\024\174\061" + "\175\063\173\064\177\065\204\066\205\067\200\001\002" + "\000\006\004\uffe7\030\210\001\002\000\026\006\uff82\013" + "\uff82\017\uff82\022\uff82\023\uff82\024\uff82\064\uff82\065\uff82" + "\066\uff82\067\uff82\001\002\000\026\006\172\013\167\017" + "\203\022\201\023\222\024\174\064\177\065\204\066\205" + "\067\200\001\002\000\032\006\uff81\007\uff81\013\uff81\014" + "\uff81\017\uff81\022\uff81\023\uff81\024\uff81\064\uff81\065\uff81" + "\066\uff81\067\uff81\001\002\000\044\004\uffb9\006\uffb9\007" + "\uffb9\013\uffb9\014\uffb9\016\uffb9\017\uffb9\020\uffb9\022\uffb9" + "\023\uffb9\024\uffb9\027\uffb9\030\uffb9\064\uffb9\065\uffb9\066" + "\uffb9\067\uffb9\001\002\000\032\004\uffbf\005\uffbf\006\uffbf" + "\007\uffbf\013\uffbf\017\uffbf\020\uffbf\026\uffbf\034\uffbf\036" + "\uffbf\037\uffbf\067\uffbf\001\002\000\010\007\uff88\024\261" + "\067\260\001\002\000\032\004\uffbe\005\uffbe\006\uffbe\007" + "\uffbe\013\uffbe\017\uffbe\020\uffbe\026\uffbe\034\uffbe\036\uffbe" + "\037\uffbe\067\uffbe\001\002\000\004\065\276\001\002\000" + "\006\006\235\013\236\001\002\000\014\006\224\017\230" + "\036\226\037\225\067\065\001\002\000\004\026\232\001" + "\002\000\014\006\224\017\230\036\226\037\225\067\065" + "\001\002\000\004\020\234\001\002\000\032\004\uffc0\005" + "\uffc0\006\uffc0\007\uffc0\013\uffc0\017\uffc0\020\uffc0\026\uffc0" + "\034\uffc0\036\uffc0\037\uffc0\067\uffc0\001\002\000\022\006" + "\uff78\007\uff85\017\uff78\021\uff78\026\uff78\065\uff78\066\uff78" + "\067\uff78\001\002\000\026\006\uff82\013\uff82\014\uff82\017" + "\uff82\022\uff82\024\uff82\064\uff82\065\uff82\066\uff82\067\uff82" + "\001\002\000\026\006\172\013\167\014\240\017\203\022" + "\201\024\174\064\177\065\204\066\205\067\200\001\002" + "\000\014\004\uffaf\007\uffaf\020\uffaf\027\uffaf\030\uffaf\001" + "\002\000\006\004\274\007\uff84\001\002\000\004\007\273" + "\001\002\000\020\006\244\017\253\021\251\026\245\065" + "\250\066\252\067\247\001\002\000\010\007\uff7b\024\261" + "\067\260\001\002\000\030\006\172\013\167\017\203\022" + "\201\024\174\061\175\063\173\064\177\065\204\066\205" + "\067\200\001\002\000\022\006\uff77\017\uff77\020\uff77\021" + "\uff77\026\uff77\065\uff77\066\uff77\067\uff77\001\002\000\026" + "\004\uff9f\006\uff9f\007\uff9f\017\uff9f\020\uff9f\021\uff9f\026" + "\uff9f\065\uff9f\066\uff9f\067\uff9f\001\002\000\026\004\uff9c" + "\006\uff9c\007\uff9c\017\uff9c\020\uff9c\021\uff9c\026\uff9c\065" + "\uff9c\066\uff9c\067\uff9c\001\002\000\026\004\uff9e\006\uff9e" + "\007\uff9e\017\uff9e\020\uff9e\021\uff9e\026\uff9e\065\uff9e\066" + "\uff9e\067\uff9e\001\002\000\026\004\uff9b\006\uff9b\007\uff9b" + "\017\uff9b\020\uff9b\021\uff9b\026\uff9b\065\uff9b\066\uff9b\067" + "\uff9b\001\002\000\004\067\065\001\002\000\020\006\uff78" + "\017\uff78\020\uff78\021\uff78\065\uff78\066\uff78\067\uff78\001" + "\002\000\020\006\244\017\253\020\256\021\251\065\250" + "\066\252\067\247\001\002\000\026\004\uffa0\006\uffa0\007" + "\uffa0\017\uffa0\020\uffa0\021\uffa0\026\uffa0\065\uffa0\066\uffa0" + "\067\uffa0\001\002\000\010\004\uffa6\007\uffa6\030\210\001" + "\002\000\020\004\uffa4\005\uffa4\007\uffa4\010\uffa4\020\uffa4" + "\027\uffa4\030\uffa4\001\002\000\004\065\272\001\002\000" + "\004\007\271\001\002\000\006\004\267\007\uff7a\001\002" + "\000\004\005\265\001\002\000\016\006\244\017\253\021" + "\251\065\250\066\252\067\247\001\002\000\006\004\uff9a" + "\007\uff9a\001\002\000\010\007\uff7b\024\261\067\260\001" + "\002\000\004\007\uff79\001\002\000\026\004\uff9d\006\uff9d" + "\007\uff9d\017\uff9d\020\uff9d\021\uff9d\026\uff9d\065\uff9d\066" + "\uff9d\067\uff9d\001\002\000\020\004\uffa3\005\uffa3\007\uffa3" + "\010\uffa3\020\uffa3\027\uffa3\030\uffa3\001\002\000\014\004" + "\uffb0\007\uffb0\020\uffb0\027\uffb0\030\uffb0\001\002\000\022" + "\006\uff78\007\uff85\017\uff78\021\uff78\026\uff78\065\uff78\066" + "\uff78\067\uff78\001\002\000\004\007\uff83\001\002\000\032" + "\004\uffbd\005\uffbd\006\uffbd\007\uffbd\013\uffbd\017\uffbd\020" + "\uffbd\026\uffbd\034\uffbd\036\uffbd\037\uffbd\067\uffbd\001\002" + "\000\004\007\306\001\002\000\004\010\304\001\002\000" + "\006\004\302\007\uff87\001\002\000\010\007\uff88\024\261" + "\067\260\001\002\000\004\007\uff86\001\002\000\014\006" + "\224\017\230\036\226\037\225\067\065\001\002\000\006" + "\004\uffbc\007\uffbc\001\002\000\032\004\uffc1\005\uffc1\006" + "\uffc1\007\uffc1\013\uffc1\017\uffc1\020\uffc1\026\uffc1\034\uffc1" + "\036\uffc1\037\uffc1\067\uffc1\001\002\000\044\004\uffb8\006" + "\uffb8\007\uffb8\013\uffb8\014\uffb8\016\uffb8\017\uffb8\020\uffb8" + "\022\uffb8\023\uffb8\024\uffb8\027\uffb8\030\uffb8\064\uffb8\065" + "\uffb8\066\uffb8\067\uffb8\001\002\000\026\006\uff82\007\uff82" + "\013\uff82\017\uff82\022\uff82\024\uff82\064\uff82\065\uff82\066" + "\uff82\067\uff82\001\002\000\026\006\172\007\312\013\167" + "\017\203\022\201\024\174\064\177\065\204\066\205\067" + "\200\001\002\000\014\004\uffad\007\uffad\020\uffad\027\uffad" + "\030\uffad\001\002\000\004\005\321\001\002\000\004\007" + "\320\001\002\000\006\004\316\007\uff8d\001\002\000\010" + "\007\uff8e\024\261\067\260\001\002\000\004\007\uff8c\001" + "\002\000\044\004\uffb7\006\uffb7\007\uffb7\013\uffb7\014\uffb7" + "\016\uffb7\017\uffb7\020\uffb7\022\uffb7\023\uffb7\024\uffb7\027" + "\uffb7\030\uffb7\064\uffb7\065\uffb7\066\uffb7\067\uffb7\001\002" + "\000\030\006\172\013\167\017\203\022\201\024\174\061" + "\175\063\173\064\177\065\204\066\205\067\200\001\002" + "\000\010\004\uffa7\007\uffa7\030\210\001\002\000\006\006" + "\uff80\064\uff80\001\002\000\044\004\uffb3\006\uffb3\007\uffb3" + "\013\uffb3\014\uffb3\016\uffb3\017\uffb3\020\uffb3\022\uffb3\023" + "\uffb3\024\uffb3\027\uffb3\030\uffb3\064\uffb3\065\uffb3\066\uffb3" + "\067\uffb3\001\002\000\006\006\327\064\326\001\002\000" + "\014\004\uff7f\006\uff7f\007\uff7f\031\uff7f\064\uff7f\001\002" + "\000\010\007\uff7e\031\uff80\064\uff80\001\002\000\006\004" + "\337\007\uff7d\001\002\000\006\031\335\064\326\001\002" + "\000\004\007\333\001\002\000\004\014\334\001\002\000" + "\044\004\uffa8\006\uffa8\007\uffa8\013\uffa8\014\uffa8\016\uffa8" + "\017\uffa8\020\uffa8\022\uffa8\023\uffa8\024\uffa8\027\uffa8\030" + "\uffa8\064\uffa8\065\uffa8\066\uffa8\067\uffa8\001\002\000\010" + "\004\uff80\007\uff80\064\uff80\001\002\000\010\004\uffa5\007" + "\uffa5\064\326\001\002\000\010\007\uff7e\031\uff80\064\uff80" + "\001\002\000\004\007\uff7c\001\002\000\006\024\261\067" + "\260\001\002\000\014\004\uffb1\007\uffb1\020\uffb1\027\uffb1" + "\030\uffb1\001\002\000\004\005\344\001\002\000\014\006" + "\224\017\230\036\226\037\225\067\065\001\002\000\004" + "\005\346\001\002\000\030\006\172\013\167\017\203\022" + "\201\024\174\061\175\063\173\064\177\065\204\066\205" + "\067\200\001\002\000\006\004\350\030\210\001\002\000" + "\030\006\172\013\167\017\203\022\201\024\174\061\175" + "\063\173\064\177\065\204\066\205\067\200\001\002\000" + "\006\004\uffe8\030\210\001\002\000\004\010\353\001\002" + "\000\014\006\224\017\230\036\226\037\225\067\065\001" + "\002\000\004\005\355\001\002\000\030\006\172\013\167" + "\017\203\022\201\024\174\061\175\063\173\064\177\065" + "\204\066\205\067\200\001\002\000\006\004\uffe9\030\210" + "\001\002\000\004\005\360\001\002\000\006\004\uff95\067" + "\363\001\002\000\004\004\uffea\001\002\000\006\004\uff94" + "\034\366\001\002\000\020\004\uff92\006\uff92\017\uff92\034" + "\uff92\036\uff92\037\uff92\067\uff92\001\002\000\020\004\uffe5" + "\006\224\017\230\034\uffe5\036\226\037\225\067\065\001" + "\002\000\020\004\uff91\006\uff91\017\uff91\034\uff91\036\uff91" + "\037\uff91\067\uff91\001\002\000\006\004\uff95\067\363\001" + "\002\000\004\004\uff93\001\002\000\004\050\372\001\002" + "\000\004\050\uffe4\001\002\000\004\067\373\001\002\000" + "\004\004\uffe6\001\002\000\004\005\375\001\002\000\030" + "\006\060\015\076\017\070\022\066\024\063\025\062\040" + "\057\044\056\064\067\065\072\067\065\001\002\000\004" + "\004\uffeb\001\002\000\024\007\uff96\042\uff96\046\uff96\051" + "\uff96\052\uff96\055\uff96\056\uff96\062\uff96\067\uff96\001\002" + "\000\004\013\u0101\001\002\000\006\014\uffd0\067\u0103\001" + "\002\000\004\014\u0109\001\002\000\004\010\u0107\001\002" + "\000\006\004\u0105\014\uffcf\001\002\000\006\014\uffd0\067" + "\u0103\001\002\000\004\014\uffce\001\002\000\030\006\060" + "\015\076\017\070\022\066\024\063\025\062\040\057\044" + "\056\064\067\065\072\067\065\001\002\000\006\004\uffc2" + "\014\uffc2\001\002\000\004\005\u010a\001\002\000\006\004" + "\uff90\067\uff90\001\002\000\006\004\uffed\067\065\001\002" + "\000\006\004\uff8f\067\uff8f\001\002\000\004\005\u010e\001" + "\002\000\004\067\u010f\001\002\000\004\004\uffee\001\002" + "\000\006\006\ufff2\054\ufff2\001\002\000\004\005\ufff8\001" + "\002\000\004\053\u0113\001\002\000\004\067\u0114\001\002" + "\000\004\005\ufff7\001\002\000\004\005\ufff6\001\002\000" + "\004\010\u0117\001\002\000\004\067\u0118\001\002\000\004" + "\011\u0119\001\002\000\004\067\u011a\001\002\000\004\005" + "\ufff5\001\002\000\004\002\001\001\002" }); /** Access to parse-action table. */ public short[][] action_table() {return _action_table;} /** reduce_goto table. */ protected static final short[][] _reduce_table = unpackFromStrings(new String[] { "\000\u0119\000\006\002\003\006\004\001\001\000\002\001" + "\001\000\006\004\020\005\023\001\001\000\004\064\006" + "\001\001\000\002\001\001\000\002\001\001\000\004\064" + "\011\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\004\006\015\001\001\000\006\004\020\005" + "\023\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\007\026\064\025\001\001\000\002\001\001" + "\000\004\010\027\001\001\000\002\001\001\000\004\064" + "\031\001\001\000\002\001\001\000\002\001\001\000\004" + "\046\034\001\001\000\006\011\037\047\036\001\001\000" + "\002\001\001\000\004\012\042\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\014\367\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" + "\015\063\016\074\017\060\020\073\021\070\027\072\001" + "\001\000\002\001\001\000\002\001\001\000\004\026\123" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\004\015\115" + "\001\001\000\002\001\001\000\016\015\063\016\074\017" + "\103\020\073\021\070\027\072\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\012\015\063\020\102\021\070\027\072\001\001\000\002" + "\001\001\000\002\001\001\000\016\015\063\016\074\017" + "\100\020\073\021\070\027\072\001\001\000\002\001\001" + "\000\016\015\063\016\074\017\103\020\073\021\070\027" + "\072\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\016\015" + "\063\016\074\017\110\020\073\021\070\027\072\001\001" + "\000\002\001\001\000\002\001\001\000\016\015\063\016" + "\074\017\113\020\073\021\070\027\072\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\015\063" + "\016\074\017\122\020\073\021\070\027\072\001\001\000" + "\002\001\001\000\006\022\125\025\126\001\001\000\002" + "\001\001\000\002\001\001\000\004\023\134\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\015" + "\063\016\074\017\142\020\073\021\070\027\072\001\001" + "\000\004\015\137\001\001\000\004\025\140\001\001\000" + "\004\023\134\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\004\015\146\001" + "\001\000\002\001\001\000\002\001\001\000\006\043\152" + "\054\151\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\043\152\054\163\001\001\000\002\001\001" + "\000\016\015\175\033\165\034\167\035\201\036\170\043" + "\205\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\010\037\314\042\312\053" + "\313\001\001\000\002\001\001\000\002\001\001\000\006" + "\015\222\031\226\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\004\015\216\001\001\000\002" + "\001\001\000\016\015\175\033\165\034\167\035\206\036" + "\170\043\205\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\014\015\175\033" + "\165\034\211\036\170\043\205\001\001\000\002\001\001" + "\000\002\001\001\000\012\015\175\033\213\036\170\043" + "\205\001\001\000\002\001\001\000\016\015\175\033\165" + "\034\167\035\215\036\170\043\205\001\001\000\002\001" + "\001\000\004\057\217\001\001\000\012\015\175\033\220" + "\036\170\043\205\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\010\032\300\042\277\055\276" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\006\015\222\031\230\001\001\000\002\001\001" + "\000\006\015\222\031\232\001\001\000\002\001\001\000" + "\002\001\001\000\010\040\240\056\241\063\242\001\001" + "\000\004\057\236\001\001\000\012\015\175\033\220\036" + "\170\043\205\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\004\044\245\001\001\000\010\042" + "\263\045\262\062\261\001\001\000\016\015\175\033\165" + "\034\167\035\256\036\170\043\205\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\004\015\253\001\001\000\004\063" + "\254\001\001\000\004\044\245\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" + "\044\265\001\001\000\002\001\001\000\010\042\263\045" + "\262\062\267\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\010\040\240\056" + "\274\063\242\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\010\032\300\042\277\055\302\001\001\000\002\001\001" + "\000\006\015\222\031\304\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\004\057\310\001\001" + "\000\012\015\175\033\220\036\170\043\205\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\010\037\314\042\312\053\316\001\001\000" + "\002\001\001\000\002\001\001\000\016\015\175\033\165" + "\034\167\035\321\036\170\043\205\001\001\000\002\001" + "\001\000\004\060\324\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\010\041\327\060\330\061" + "\331\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\004\060" + "\335\001\001\000\002\001\001\000\010\041\327\060\330" + "\061\337\001\001\000\002\001\001\000\004\042\341\001" + "\001\000\002\001\001\000\002\001\001\000\006\015\222" + "\031\344\001\001\000\002\001\001\000\016\015\175\033" + "\165\034\167\035\346\036\170\043\205\001\001\000\002" + "\001\001\000\016\015\175\033\165\034\167\035\350\036" + "\170\043\205\001\001\000\002\001\001\000\002\001\001" + "\000\006\015\222\031\353\001\001\000\002\001\001\000" + "\016\015\175\033\165\034\167\035\355\036\170\043\205" + "\001\001\000\002\001\001\000\002\001\001\000\006\013" + "\361\050\360\001\001\000\002\001\001\000\002\001\001" + "\000\004\051\363\001\001\000\006\015\222\031\364\001" + "\001\000\002\001\001\000\006\013\361\050\366\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" + "\015\063\016\074\017\375\020\073\021\070\027\072\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\006\024\u0101\030\u0103\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\006\024\u0105\030\u0103" + "\001\001\000\002\001\001\000\016\015\063\016\074\017" + "\u0107\020\073\021\070\027\072\001\001\000\002\001\001" + "\000\002\001\001\000\004\052\u010a\001\001\000\004\015" + "\u010b\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\002" + "\001\001" }); /** Access to reduce_goto 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;} /** EOF Symbol index. */ public int EOF_sym() {return 0;} /** error Symbol index. */ public int error_sym() {return 1;} public se.chalmers.cs.gf.GFC.Absyn.Canon pCanon() throws Exception { java_cup.runtime.Symbol res = parse(); return (se.chalmers.cs.gf.GFC.Absyn.Canon) res.value; } public > A cons_(B x, A xs) { xs.addFirst(x); return xs; } public void syntax_error(java_cup.runtime.Symbol cur_token) { report_error("Syntax Error, trying to recover and continue parse...", cur_token); } public void unrecovered_syntax_error(java_cup.runtime.Symbol cur_token) throws java.lang.Exception { throw new Exception("Unrecoverable Syntax Error"); } } /** 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 141: // ListIdent ::= _IDENT_ _SYMB_25 ListIdent { se.chalmers.cs.gf.GFC.Absyn.ListIdent RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListIdent p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListIdent)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_3; p_3.addFirst(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListIdent",50, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 140: // ListIdent ::= _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.ListIdent RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListIdent(); RESULT.addLast(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListIdent",50, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 139: // ListIdent ::= { se.chalmers.cs.gf.GFC.Absyn.ListIdent RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListIdent(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListIdent",50, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 138: // ListPatt ::= ListPatt Patt { se.chalmers.cs.gf.GFC.Absyn.ListPatt RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListPatt p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListPatt)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; se.chalmers.cs.gf.GFC.Absyn.Patt p_2 = (se.chalmers.cs.gf.GFC.Absyn.Patt)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListPatt",49, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 137: // ListPatt ::= { se.chalmers.cs.gf.GFC.Absyn.ListPatt RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListPatt(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListPatt",49, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 136: // ListPattAssign ::= PattAssign _SYMB_0 ListPattAssign { se.chalmers.cs.gf.GFC.Absyn.ListPattAssign RESULT =null; se.chalmers.cs.gf.GFC.Absyn.PattAssign p_1 = (se.chalmers.cs.gf.GFC.Absyn.PattAssign)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListPattAssign p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListPattAssign)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_3; p_3.addFirst(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListPattAssign",48, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 135: // ListPattAssign ::= PattAssign { se.chalmers.cs.gf.GFC.Absyn.ListPattAssign RESULT =null; se.chalmers.cs.gf.GFC.Absyn.PattAssign p_1 = (se.chalmers.cs.gf.GFC.Absyn.PattAssign)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListPattAssign(); RESULT.addLast(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListPattAssign",48, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 134: // ListPattAssign ::= { se.chalmers.cs.gf.GFC.Absyn.ListPattAssign RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListPattAssign(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListPattAssign",48, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 133: // ListVariant ::= Variant _SYMB_0 ListVariant { se.chalmers.cs.gf.GFC.Absyn.ListVariant RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Variant p_1 = (se.chalmers.cs.gf.GFC.Absyn.Variant)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListVariant p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListVariant)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_3; p_3.addFirst(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListVariant",47, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 132: // ListVariant ::= Variant { se.chalmers.cs.gf.GFC.Absyn.ListVariant RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Variant p_1 = (se.chalmers.cs.gf.GFC.Absyn.Variant)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListVariant(); RESULT.addLast(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListVariant",47, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 131: // ListVariant ::= { se.chalmers.cs.gf.GFC.Absyn.ListVariant RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListVariant(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListVariant",47, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 130: // ListString ::= ListString _STRING_ { se.chalmers.cs.gf.GFC.Absyn.ListString RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListString p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListString)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListString",46, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 129: // ListString ::= { se.chalmers.cs.gf.GFC.Absyn.ListString RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListString(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListString",46, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 128: // ListTerm2 ::= ListTerm2 Term2 { se.chalmers.cs.gf.GFC.Absyn.ListTerm RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListTerm p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_2 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListTerm2",45, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 127: // ListTerm2 ::= { se.chalmers.cs.gf.GFC.Absyn.ListTerm RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListTerm(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListTerm2",45, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 126: // ListCase ::= Case _SYMB_0 ListCase { se.chalmers.cs.gf.GFC.Absyn.ListCase RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Case p_1 = (se.chalmers.cs.gf.GFC.Absyn.Case)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListCase p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListCase)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_3; p_3.addFirst(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListCase",44, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 125: // ListCase ::= Case { se.chalmers.cs.gf.GFC.Absyn.ListCase RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Case p_1 = (se.chalmers.cs.gf.GFC.Absyn.Case)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListCase(); RESULT.addLast(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListCase",44, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 124: // ListCase ::= { se.chalmers.cs.gf.GFC.Absyn.ListCase RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListCase(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListCase",44, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 123: // ListLabelling ::= Labelling _SYMB_0 ListLabelling { se.chalmers.cs.gf.GFC.Absyn.ListLabelling RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Labelling p_1 = (se.chalmers.cs.gf.GFC.Absyn.Labelling)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListLabelling p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListLabelling)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_3; p_3.addFirst(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListLabelling",43, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 122: // ListLabelling ::= Labelling { se.chalmers.cs.gf.GFC.Absyn.ListLabelling RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Labelling p_1 = (se.chalmers.cs.gf.GFC.Absyn.Labelling)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListLabelling(); RESULT.addLast(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListLabelling",43, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 121: // ListLabelling ::= { se.chalmers.cs.gf.GFC.Absyn.ListLabelling RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListLabelling(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListLabelling",43, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 120: // ListArgVar ::= ArgVar _SYMB_25 ListArgVar { se.chalmers.cs.gf.GFC.Absyn.ListArgVar RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ArgVar p_1 = (se.chalmers.cs.gf.GFC.Absyn.ArgVar)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListArgVar p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListArgVar)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_3; p_3.addFirst(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListArgVar",42, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 119: // ListArgVar ::= ArgVar { se.chalmers.cs.gf.GFC.Absyn.ListArgVar RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ArgVar p_1 = (se.chalmers.cs.gf.GFC.Absyn.ArgVar)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListArgVar(); RESULT.addLast(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListArgVar",42, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 118: // ListArgVar ::= { se.chalmers.cs.gf.GFC.Absyn.ListArgVar RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListArgVar(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListArgVar",42, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 117: // ListAssign ::= Assign _SYMB_0 ListAssign { se.chalmers.cs.gf.GFC.Absyn.ListAssign RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Assign p_1 = (se.chalmers.cs.gf.GFC.Absyn.Assign)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListAssign p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListAssign)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_3; p_3.addFirst(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListAssign",41, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 116: // ListAssign ::= Assign { se.chalmers.cs.gf.GFC.Absyn.ListAssign RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Assign p_1 = (se.chalmers.cs.gf.GFC.Absyn.Assign)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListAssign(); RESULT.addLast(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListAssign",41, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 115: // ListAssign ::= { se.chalmers.cs.gf.GFC.Absyn.ListAssign RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListAssign(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListAssign",41, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 114: // ListCIdent ::= ListCIdent CIdent { se.chalmers.cs.gf.GFC.Absyn.ListCIdent RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListCIdent p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListCIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; se.chalmers.cs.gf.GFC.Absyn.CIdent p_2 = (se.chalmers.cs.gf.GFC.Absyn.CIdent)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListCIdent",40, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 113: // ListCIdent ::= { se.chalmers.cs.gf.GFC.Absyn.ListCIdent RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListCIdent(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListCIdent",40, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 112: // ListCType ::= ListCType CType { se.chalmers.cs.gf.GFC.Absyn.ListCType RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListCType p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListCType)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; se.chalmers.cs.gf.GFC.Absyn.CType p_2 = (se.chalmers.cs.gf.GFC.Absyn.CType)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListCType",39, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 111: // ListCType ::= { se.chalmers.cs.gf.GFC.Absyn.ListCType RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListCType(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListCType",39, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 110: // ListParDef ::= ParDef _SYMB_24 ListParDef { se.chalmers.cs.gf.GFC.Absyn.ListParDef RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ParDef p_1 = (se.chalmers.cs.gf.GFC.Absyn.ParDef)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListParDef p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListParDef)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_3; p_3.addFirst(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListParDef",38, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 109: // ListParDef ::= ParDef { se.chalmers.cs.gf.GFC.Absyn.ListParDef RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ParDef p_1 = (se.chalmers.cs.gf.GFC.Absyn.ParDef)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListParDef(); RESULT.addLast(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListParDef",38, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 108: // ListParDef ::= { se.chalmers.cs.gf.GFC.Absyn.ListParDef RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListParDef(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListParDef",38, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 107: // ListDef ::= ListDef Def _SYMB_0 { se.chalmers.cs.gf.GFC.Absyn.ListDef RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListDef p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListDef)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Def p_2 = (se.chalmers.cs.gf.GFC.Absyn.Def)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListDef",37, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 106: // ListDef ::= { se.chalmers.cs.gf.GFC.Absyn.ListDef RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListDef(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListDef",37, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 105: // ListFlag ::= ListFlag Flag _SYMB_0 { se.chalmers.cs.gf.GFC.Absyn.ListFlag RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListFlag p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListFlag)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Flag p_2 = (se.chalmers.cs.gf.GFC.Absyn.Flag)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListFlag",36, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 104: // ListFlag ::= { se.chalmers.cs.gf.GFC.Absyn.ListFlag RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListFlag(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListFlag",36, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 103: // PattAssign ::= Label _SYMB_1 Patt { se.chalmers.cs.gf.GFC.Absyn.PattAssign RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Label p_1 = (se.chalmers.cs.gf.GFC.Absyn.Label)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Patt p_3 = (se.chalmers.cs.gf.GFC.Absyn.Patt)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.PAss(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("PattAssign",35, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 102: // Patt ::= _DOUBLE_ { se.chalmers.cs.gf.GFC.Absyn.Patt RESULT =null; Double p_1 = (Double)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.PF(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Patt",34, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 101: // Patt ::= _INTEGER_ { se.chalmers.cs.gf.GFC.Absyn.Patt RESULT =null; Integer p_1 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.PI(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Patt",34, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 100: // Patt ::= _SYMB_2 ListPattAssign _SYMB_3 { se.chalmers.cs.gf.GFC.Absyn.Patt RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListPattAssign p_2 = (se.chalmers.cs.gf.GFC.Absyn.ListPattAssign)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.PR(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Patt",34, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 99: // Patt ::= _SYMB_13 { se.chalmers.cs.gf.GFC.Absyn.Patt RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.PW(); CUP$parser$result = parser.getSymbolFactory().newSymbol("Patt",34, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 98: // Patt ::= _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.Patt RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.PV(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Patt",34, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 97: // Patt ::= _SYMB_11 CIdent ListPatt _SYMB_12 { se.chalmers.cs.gf.GFC.Absyn.Patt RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CIdent p_2 = (se.chalmers.cs.gf.GFC.Absyn.CIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListPatt p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListPatt)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.PC(p_2,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Patt",34, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 96: // ArgVar ::= _IDENT_ _SYMB_23 _INTEGER_ _SYMB_22 _INTEGER_ { se.chalmers.cs.gf.GFC.Absyn.ArgVar RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; Integer p_3 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; Integer p_5 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AB(p_1,p_3,p_5); CUP$parser$result = parser.getSymbolFactory().newSymbol("ArgVar",33, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 95: // ArgVar ::= _IDENT_ _SYMB_22 _INTEGER_ { se.chalmers.cs.gf.GFC.Absyn.ArgVar RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; Integer p_3 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.A(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("ArgVar",33, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 94: // Label ::= _SYMB_16 _INTEGER_ { se.chalmers.cs.gf.GFC.Absyn.Label RESULT =null; Integer p_2 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.LV(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Label",32, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 93: // Label ::= _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.Label RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.L(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Label",32, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 92: // Variant ::= ListString _SYMB_21 ListString { se.chalmers.cs.gf.GFC.Absyn.Variant RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListString p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListString)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListString p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListString)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Var(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Variant",31, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 91: // Case ::= ListPatt _SYMB_18 Term { se.chalmers.cs.gf.GFC.Absyn.Case RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListPatt p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListPatt)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_3 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Cas(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Case",30, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 90: // Assign ::= Label _SYMB_1 Term { se.chalmers.cs.gf.GFC.Absyn.Assign RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Label p_1 = (se.chalmers.cs.gf.GFC.Absyn.Label)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_3 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Ass(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Assign",29, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 89: // Tokn ::= _SYMB_7 _SYMB_43 ListString _SYMB_2 ListVariant _SYMB_3 _SYMB_8 { se.chalmers.cs.gf.GFC.Absyn.Tokn RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListString p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListString)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; se.chalmers.cs.gf.GFC.Absyn.ListVariant p_5 = (se.chalmers.cs.gf.GFC.Absyn.ListVariant)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.KP(p_3,p_5); CUP$parser$result = parser.getSymbolFactory().newSymbol("Tokn",28, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 88: // Tokn ::= _STRING_ { se.chalmers.cs.gf.GFC.Absyn.Tokn RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.KS(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Tokn",28, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 87: // Term ::= Term1 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Term p_1 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; CUP$parser$result = parser.getSymbolFactory().newSymbol("Term",27, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 86: // Term ::= Term _SYMB_20 Term1 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Term p_1 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_3 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.C(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term",27, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 85: // Term1 ::= Term2 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Term p_1 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; CUP$parser$result = parser.getSymbolFactory().newSymbol("Term1",26, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 84: // Term1 ::= _SYMB_47 _SYMB_2 ListTerm2 _SYMB_3 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListTerm p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.FV(p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term1",26, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 83: // Term1 ::= Term1 _SYMB_19 Term2 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Term p_1 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_3 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.S(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term1",26, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 82: // Term1 ::= _SYMB_45 CType _SYMB_7 ListTerm2 _SYMB_8 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CType p_2 = (se.chalmers.cs.gf.GFC.Absyn.CType)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value; se.chalmers.cs.gf.GFC.Absyn.ListTerm p_4 = (se.chalmers.cs.gf.GFC.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.V(p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term1",26, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 81: // Term1 ::= _SYMB_45 CType _SYMB_2 ListCase _SYMB_3 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CType p_2 = (se.chalmers.cs.gf.GFC.Absyn.CType)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value; se.chalmers.cs.gf.GFC.Absyn.ListCase p_4 = (se.chalmers.cs.gf.GFC.Absyn.ListCase)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.T(p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term1",26, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 80: // Term1 ::= Term2 _SYMB_10 Label { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Term p_1 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Label p_3 = (se.chalmers.cs.gf.GFC.Absyn.Label)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.P(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term1",26, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 79: // Term2 ::= _SYMB_11 Term _SYMB_12 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Term p_2 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = p_2; CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 78: // Term2 ::= _SYMB_7 _SYMB_8 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.E(); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 77: // Term2 ::= Tokn { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Tokn p_1 = (se.chalmers.cs.gf.GFC.Absyn.Tokn)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.K(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 76: // Term2 ::= _DOUBLE_ { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; Double p_1 = (Double)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.EFloat(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 75: // Term2 ::= _INTEGER_ { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; Integer p_1 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.EInt(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 74: // Term2 ::= _SYMB_2 ListAssign _SYMB_3 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListAssign p_2 = (se.chalmers.cs.gf.GFC.Absyn.ListAssign)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.R(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 73: // Term2 ::= _SYMB_16 _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.LI(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 72: // Term2 ::= _SYMB_14 CIdent ListTerm2 _SYMB_15 { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CIdent p_2 = (se.chalmers.cs.gf.GFC.Absyn.CIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListTerm p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Par(p_2,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 71: // Term2 ::= CIdent { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CIdent p_1 = (se.chalmers.cs.gf.GFC.Absyn.CIdent)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.I(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 70: // Term2 ::= ArgVar { se.chalmers.cs.gf.GFC.Absyn.Term RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ArgVar p_1 = (se.chalmers.cs.gf.GFC.Absyn.ArgVar)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Arg(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Term2",25, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 69: // Labelling ::= Label _SYMB_4 CType { se.chalmers.cs.gf.GFC.Absyn.Labelling RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Label p_1 = (se.chalmers.cs.gf.GFC.Absyn.Label)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.CType p_3 = (se.chalmers.cs.gf.GFC.Absyn.CType)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Lbg(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Labelling",24, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 68: // CType ::= _SYMB_26 _INTEGER_ { se.chalmers.cs.gf.GFC.Absyn.CType RESULT =null; Integer p_2 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.TInts(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("CType",23, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 67: // CType ::= _SYMB_27 { se.chalmers.cs.gf.GFC.Absyn.CType RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.TStr(); CUP$parser$result = parser.getSymbolFactory().newSymbol("CType",23, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 66: // CType ::= CIdent { se.chalmers.cs.gf.GFC.Absyn.CType RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CIdent p_1 = (se.chalmers.cs.gf.GFC.Absyn.CIdent)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Cn(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("CType",23, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 65: // CType ::= _SYMB_11 CType _SYMB_18 CType _SYMB_12 { se.chalmers.cs.gf.GFC.Absyn.CType RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CType p_2 = (se.chalmers.cs.gf.GFC.Absyn.CType)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value; se.chalmers.cs.gf.GFC.Absyn.CType p_4 = (se.chalmers.cs.gf.GFC.Absyn.CType)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Table(p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("CType",23, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 64: // CType ::= _SYMB_2 ListLabelling _SYMB_3 { se.chalmers.cs.gf.GFC.Absyn.CType RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListLabelling p_2 = (se.chalmers.cs.gf.GFC.Absyn.ListLabelling)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.RecType(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("CType",23, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 63: // Decl ::= _IDENT_ _SYMB_4 Exp { se.chalmers.cs.gf.GFC.Absyn.Decl RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Exp p_3 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Decl(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Decl",22, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 62: // Atom ::= Sort { se.chalmers.cs.gf.GFC.Absyn.Atom RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Sort p_1 = (se.chalmers.cs.gf.GFC.Absyn.Sort)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AT(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Atom",21, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 61: // Atom ::= _INTEGER_ { se.chalmers.cs.gf.GFC.Absyn.Atom RESULT =null; Integer p_1 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AI(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Atom",21, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 60: // Atom ::= _STRING_ { se.chalmers.cs.gf.GFC.Absyn.Atom RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AS(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Atom",21, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 59: // Atom ::= _SYMB_17 _INTEGER_ { se.chalmers.cs.gf.GFC.Absyn.Atom RESULT =null; Integer p_2 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AM(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Atom",21, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 58: // Atom ::= _SYMB_16 _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.Atom RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AV(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Atom",21, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 57: // Atom ::= _SYMB_14 CIdent _SYMB_15 { se.chalmers.cs.gf.GFC.Absyn.Atom RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CIdent p_2 = (se.chalmers.cs.gf.GFC.Absyn.CIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AD(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Atom",21, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 56: // Atom ::= CIdent { se.chalmers.cs.gf.GFC.Absyn.Atom RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CIdent p_1 = (se.chalmers.cs.gf.GFC.Absyn.CIdent)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AC(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Atom",21, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 55: // ListEquation ::= ListEquation Equation _SYMB_0 { se.chalmers.cs.gf.GFC.Absyn.ListEquation RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListEquation p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListEquation)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Equation p_2 = (se.chalmers.cs.gf.GFC.Absyn.Equation)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListEquation",20, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 54: // ListEquation ::= { se.chalmers.cs.gf.GFC.Absyn.ListEquation RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListEquation(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListEquation",20, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 53: // ListAPatt ::= ListAPatt APatt { se.chalmers.cs.gf.GFC.Absyn.ListAPatt RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListAPatt p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListAPatt)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; se.chalmers.cs.gf.GFC.Absyn.APatt p_2 = (se.chalmers.cs.gf.GFC.Absyn.APatt)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListAPatt",19, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 52: // ListAPatt ::= { se.chalmers.cs.gf.GFC.Absyn.ListAPatt RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListAPatt(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListAPatt",19, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 51: // ListDecl ::= Decl _SYMB_0 ListDecl { se.chalmers.cs.gf.GFC.Absyn.ListDecl RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Decl p_1 = (se.chalmers.cs.gf.GFC.Absyn.Decl)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListDecl p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListDecl)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_3; p_3.addFirst(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListDecl",18, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 50: // ListDecl ::= Decl { se.chalmers.cs.gf.GFC.Absyn.ListDecl RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Decl p_1 = (se.chalmers.cs.gf.GFC.Absyn.Decl)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListDecl(); RESULT.addLast(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListDecl",18, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 49: // ListDecl ::= { se.chalmers.cs.gf.GFC.Absyn.ListDecl RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListDecl(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListDecl",18, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 48: // APatt ::= _SYMB_13 { se.chalmers.cs.gf.GFC.Absyn.APatt RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.APW(); CUP$parser$result = parser.getSymbolFactory().newSymbol("APatt",17, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 47: // APatt ::= _DOUBLE_ { se.chalmers.cs.gf.GFC.Absyn.APatt RESULT =null; Double p_1 = (Double)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.APF(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("APatt",17, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 46: // APatt ::= _INTEGER_ { se.chalmers.cs.gf.GFC.Absyn.APatt RESULT =null; Integer p_1 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.API(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("APatt",17, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 45: // APatt ::= _STRING_ { se.chalmers.cs.gf.GFC.Absyn.APatt RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.APS(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("APatt",17, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 44: // APatt ::= _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.APatt RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.APV(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("APatt",17, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 43: // APatt ::= _SYMB_11 CIdent ListAPatt _SYMB_12 { se.chalmers.cs.gf.GFC.Absyn.APatt RESULT =null; se.chalmers.cs.gf.GFC.Absyn.CIdent p_2 = (se.chalmers.cs.gf.GFC.Absyn.CIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListAPatt p_3 = (se.chalmers.cs.gf.GFC.Absyn.ListAPatt)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.APC(p_2,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("APatt",17, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 42: // Equation ::= ListAPatt _SYMB_5 Exp { se.chalmers.cs.gf.GFC.Absyn.Equation RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListAPatt p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListAPatt)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Exp p_3 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Equ(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("Equation",16, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 41: // Sort ::= _SYMB_28 { se.chalmers.cs.gf.GFC.Absyn.Sort RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.SType(); CUP$parser$result = parser.getSymbolFactory().newSymbol("Sort",15, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 40: // Exp2 ::= _SYMB_11 Exp _SYMB_12 { se.chalmers.cs.gf.GFC.Absyn.Exp RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Exp p_2 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = p_2; CUP$parser$result = parser.getSymbolFactory().newSymbol("Exp2",14, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 39: // Exp2 ::= _SYMB_32 { se.chalmers.cs.gf.GFC.Absyn.Exp RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.EData(); CUP$parser$result = parser.getSymbolFactory().newSymbol("Exp2",14, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 38: // Exp2 ::= Atom { se.chalmers.cs.gf.GFC.Absyn.Exp RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Atom p_1 = (se.chalmers.cs.gf.GFC.Absyn.Atom)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.EAtom(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Exp2",14, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 37: // Exp ::= Exp1 { se.chalmers.cs.gf.GFC.Absyn.Exp RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Exp p_1 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; CUP$parser$result = parser.getSymbolFactory().newSymbol("Exp",13, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 36: // Exp ::= _SYMB_2 ListEquation _SYMB_3 { se.chalmers.cs.gf.GFC.Absyn.Exp RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListEquation p_2 = (se.chalmers.cs.gf.GFC.Absyn.ListEquation)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.EEq(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Exp",13, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 35: // Exp ::= _SYMB_9 _IDENT_ _SYMB_5 Exp { se.chalmers.cs.gf.GFC.Absyn.Exp RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Exp p_4 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.EAbs(p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("Exp",13, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 34: // Exp ::= _SYMB_11 _IDENT_ _SYMB_4 Exp _SYMB_12 _SYMB_5 Exp { se.chalmers.cs.gf.GFC.Absyn.Exp RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value; se.chalmers.cs.gf.GFC.Absyn.Exp p_4 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value; se.chalmers.cs.gf.GFC.Absyn.Exp p_7 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.EProd(p_2,p_4,p_7); CUP$parser$result = parser.getSymbolFactory().newSymbol("Exp",13, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 33: // Exp1 ::= Exp2 { se.chalmers.cs.gf.GFC.Absyn.Exp RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Exp p_1 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; CUP$parser$result = parser.getSymbolFactory().newSymbol("Exp1",12, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 32: // Exp1 ::= Exp1 Exp2 { se.chalmers.cs.gf.GFC.Absyn.Exp RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Exp p_1 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; se.chalmers.cs.gf.GFC.Absyn.Exp p_2 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.EApp(p_1,p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Exp1",12, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 31: // CIdent ::= _IDENT_ _SYMB_10 _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.CIdent RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; String p_3 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.CIQ(p_1,p_3); CUP$parser$result = parser.getSymbolFactory().newSymbol("CIdent",11, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 30: // Status ::= { se.chalmers.cs.gf.GFC.Absyn.Status RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.NonCan(); CUP$parser$result = parser.getSymbolFactory().newSymbol("Status",10, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 29: // Status ::= _SYMB_32 { se.chalmers.cs.gf.GFC.Absyn.Status RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Canon(); CUP$parser$result = parser.getSymbolFactory().newSymbol("Status",10, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 28: // ParDef ::= _IDENT_ ListCType { se.chalmers.cs.gf.GFC.Absyn.ParDef RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; se.chalmers.cs.gf.GFC.Absyn.ListCType p_2 = (se.chalmers.cs.gf.GFC.Absyn.ListCType)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ParD(p_1,p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ParDef",9, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 27: // Def ::= _IDENT_ Status _SYMB_36 _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.Def RESULT =null; String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value; se.chalmers.cs.gf.GFC.Absyn.Status p_2 = (se.chalmers.cs.gf.GFC.Absyn.Status)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; String p_4 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AnyDInd(p_1,p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("Def",8, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 26: // Def ::= _SYMB_37 _IDENT_ _SYMB_4 CIdent _SYMB_1 _SYMB_9 ListArgVar _SYMB_5 Term _SYMB_0 Term { se.chalmers.cs.gf.GFC.Absyn.Def RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-9)).value; se.chalmers.cs.gf.GFC.Absyn.CIdent p_4 = (se.chalmers.cs.gf.GFC.Absyn.CIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-7)).value; se.chalmers.cs.gf.GFC.Absyn.ListArgVar p_7 = (se.chalmers.cs.gf.GFC.Absyn.ListArgVar)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_9 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_11 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.CncDFun(p_2,p_4,p_7,p_9,p_11); CUP$parser$result = parser.getSymbolFactory().newSymbol("Def",8, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 25: // Def ::= _SYMB_38 _IDENT_ _SYMB_1 CType _SYMB_1 Term _SYMB_0 Term { se.chalmers.cs.gf.GFC.Absyn.Def RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-6)).value; se.chalmers.cs.gf.GFC.Absyn.CType p_4 = (se.chalmers.cs.gf.GFC.Absyn.CType)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_6 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_8 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.CncDCat(p_2,p_4,p_6,p_8); CUP$parser$result = parser.getSymbolFactory().newSymbol("Def",8, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 24: // Def ::= _SYMB_41 _IDENT_ _SYMB_4 CType _SYMB_1 Term { se.chalmers.cs.gf.GFC.Absyn.Def RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; se.chalmers.cs.gf.GFC.Absyn.CType p_4 = (se.chalmers.cs.gf.GFC.Absyn.CType)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Term p_6 = (se.chalmers.cs.gf.GFC.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ResDOper(p_2,p_4,p_6); CUP$parser$result = parser.getSymbolFactory().newSymbol("Def",8, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 23: // Def ::= _SYMB_42 _IDENT_ _SYMB_1 ListParDef { se.chalmers.cs.gf.GFC.Absyn.Def RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListParDef p_4 = (se.chalmers.cs.gf.GFC.Absyn.ListParDef)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ResDPar(p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("Def",8, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 22: // Def ::= _SYMB_46 _IDENT_ _SYMB_1 Exp { se.chalmers.cs.gf.GFC.Absyn.Def RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Exp p_4 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AbsDTrans(p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("Def",8, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 21: // Def ::= _SYMB_34 _IDENT_ _SYMB_4 Exp _SYMB_1 Exp { se.chalmers.cs.gf.GFC.Absyn.Def RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; se.chalmers.cs.gf.GFC.Absyn.Exp p_4 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Exp p_6 = (se.chalmers.cs.gf.GFC.Absyn.Exp)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AbsDFun(p_2,p_4,p_6); CUP$parser$result = parser.getSymbolFactory().newSymbol("Def",8, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 20: // Def ::= _SYMB_30 _IDENT_ _SYMB_7 ListDecl _SYMB_8 _SYMB_1 ListCIdent { se.chalmers.cs.gf.GFC.Absyn.Def RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value; se.chalmers.cs.gf.GFC.Absyn.ListDecl p_4 = (se.chalmers.cs.gf.GFC.Absyn.ListDecl)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value; se.chalmers.cs.gf.GFC.Absyn.ListCIdent p_7 = (se.chalmers.cs.gf.GFC.Absyn.ListCIdent)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.AbsDCat(p_2,p_4,p_7); CUP$parser$result = parser.getSymbolFactory().newSymbol("Def",8, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 19: // Flag ::= _SYMB_33 _IDENT_ _SYMB_1 _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.Flag RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; String p_4 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Flg(p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("Flag",7, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 18: // Open ::= { se.chalmers.cs.gf.GFC.Absyn.Open RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.NoOpens(); CUP$parser$result = parser.getSymbolFactory().newSymbol("Open",6, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 17: // Open ::= _SYMB_40 ListIdent _SYMB_36 { se.chalmers.cs.gf.GFC.Absyn.Open RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListIdent p_2 = (se.chalmers.cs.gf.GFC.Absyn.ListIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Opens(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("Open",6, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 16: // Extend ::= { se.chalmers.cs.gf.GFC.Absyn.Extend RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.NoExt(); CUP$parser$result = parser.getSymbolFactory().newSymbol("Extend",5, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 15: // Extend ::= ListIdent _SYMB_6 { se.chalmers.cs.gf.GFC.Absyn.Extend RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListIdent p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Ext(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Extend",5, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 14: // ListModule ::= ListModule Module { se.chalmers.cs.gf.GFC.Absyn.ListModule RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListModule p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListModule)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; se.chalmers.cs.gf.GFC.Absyn.Module p_2 = (se.chalmers.cs.gf.GFC.Absyn.Module)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = p_1; p_1.addLast(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListModule",4, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 13: // ListModule ::= { se.chalmers.cs.gf.GFC.Absyn.ListModule RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.ListModule(); CUP$parser$result = parser.getSymbolFactory().newSymbol("ListModule",4, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 12: // ModType ::= _SYMB_46 _IDENT_ _SYMB_4 _IDENT_ _SYMB_5 _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.ModType RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; String p_4 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; String p_6 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.MTTrans(p_2,p_4,p_6); CUP$parser$result = parser.getSymbolFactory().newSymbol("ModType",3, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 11: // ModType ::= _SYMB_44 _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.ModType RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.MTRes(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ModType",3, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 10: // ModType ::= _SYMB_31 _IDENT_ _SYMB_39 _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.ModType RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; String p_4 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.MTCnc(p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("ModType",3, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 9: // ModType ::= _SYMB_29 _IDENT_ { se.chalmers.cs.gf.GFC.Absyn.ModType RESULT =null; String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.MTAbs(p_2); CUP$parser$result = parser.getSymbolFactory().newSymbol("ModType",3, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 8: // Module ::= ModType _SYMB_1 Extend Open _SYMB_2 ListFlag ListDef _SYMB_3 { se.chalmers.cs.gf.GFC.Absyn.Module RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ModType p_1 = (se.chalmers.cs.gf.GFC.Absyn.ModType)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-7)).value; se.chalmers.cs.gf.GFC.Absyn.Extend p_3 = (se.chalmers.cs.gf.GFC.Absyn.Extend)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value; se.chalmers.cs.gf.GFC.Absyn.Open p_4 = (se.chalmers.cs.gf.GFC.Absyn.Open)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; se.chalmers.cs.gf.GFC.Absyn.ListFlag p_6 = (se.chalmers.cs.gf.GFC.Absyn.ListFlag)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListDef p_7 = (se.chalmers.cs.gf.GFC.Absyn.ListDef)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Mod(p_1,p_3,p_4,p_6,p_7); CUP$parser$result = parser.getSymbolFactory().newSymbol("Module",2, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 7: // Line ::= _SYMB_3 { se.chalmers.cs.gf.GFC.Absyn.Line RESULT =null; RESULT = new se.chalmers.cs.gf.GFC.Absyn.LEnd(); CUP$parser$result = parser.getSymbolFactory().newSymbol("Line",1, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 6: // Line ::= Def _SYMB_0 { se.chalmers.cs.gf.GFC.Absyn.Line RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Def p_1 = (se.chalmers.cs.gf.GFC.Absyn.Def)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.LDef(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Line",1, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 5: // Line ::= Flag _SYMB_0 { se.chalmers.cs.gf.GFC.Absyn.Line RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Flag p_1 = (se.chalmers.cs.gf.GFC.Absyn.Flag)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.LFlag(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Line",1, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 4: // Line ::= ModType _SYMB_1 Extend Open _SYMB_2 { se.chalmers.cs.gf.GFC.Absyn.Line RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ModType p_1 = (se.chalmers.cs.gf.GFC.Absyn.ModType)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; se.chalmers.cs.gf.GFC.Absyn.Extend p_3 = (se.chalmers.cs.gf.GFC.Absyn.Extend)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.Open p_4 = (se.chalmers.cs.gf.GFC.Absyn.Open)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.LHeader(p_1,p_3,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("Line",1, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 3: // Line ::= _SYMB_35 ListIdent _SYMB_39 _IDENT_ _SYMB_0 { se.chalmers.cs.gf.GFC.Absyn.Line RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListIdent p_2 = (se.chalmers.cs.gf.GFC.Absyn.ListIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value; String p_4 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.LMulti(p_2,p_4); CUP$parser$result = parser.getSymbolFactory().newSymbol("Line",1, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 2: // Canon ::= ListModule { se.chalmers.cs.gf.GFC.Absyn.Canon RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListModule p_1 = (se.chalmers.cs.gf.GFC.Absyn.ListModule)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.Gr(p_1); CUP$parser$result = parser.getSymbolFactory().newSymbol("Canon",0, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 1: // Canon ::= _SYMB_35 ListIdent _SYMB_39 _IDENT_ _SYMB_0 ListModule { se.chalmers.cs.gf.GFC.Absyn.Canon RESULT =null; se.chalmers.cs.gf.GFC.Absyn.ListIdent p_2 = (se.chalmers.cs.gf.GFC.Absyn.ListIdent)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value; String p_4 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value; se.chalmers.cs.gf.GFC.Absyn.ListModule p_6 = (se.chalmers.cs.gf.GFC.Absyn.ListModule)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value; RESULT = new se.chalmers.cs.gf.GFC.Absyn.MGr(p_2,p_4,p_6); CUP$parser$result = parser.getSymbolFactory().newSymbol("Canon",0, RESULT); } return CUP$parser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 0: // $START ::= Canon EOF { Object RESULT =null; se.chalmers.cs.gf.GFC.Absyn.Canon start_val = (se.chalmers.cs.gf.GFC.Absyn.Canon)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value; RESULT = start_val; CUP$parser$result = parser.getSymbolFactory().newSymbol("$START",0, RESULT); } /* ACCEPT */ CUP$parser$parser.done_parsing(); return CUP$parser$result; /* . . . . . .*/ default: throw new Exception( "Invalid action number found in internal parse table"); } } }