coffeescript
Version:
Unfancy JavaScript
939 lines (929 loc) • 192 kB
JavaScript
/* parser generated by jison 0.4.18 */
/*
Returns a Parser object of the following structure:
Parser: {
yy: {}
}
Parser.prototype: {
yy: {},
trace: function(),
symbols_: {associative list: name ==> number},
terminals_: {associative list: number ==> name},
productions_: [...],
performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$),
table: [...],
defaultActions: {...},
parseError: function(str, hash),
parse: function(input),
lexer: {
EOF: 1,
parseError: function(str, hash),
setInput: function(input),
input: function(),
unput: function(str),
more: function(),
less: function(n),
pastInput: function(),
upcomingInput: function(),
showPosition: function(),
test_match: function(regex_match_array, rule_index),
next: function(),
lex: function(),
begin: function(condition),
popState: function(),
_currentRules: function(),
topState: function(),
pushState: function(condition),
options: {
ranges: boolean (optional: true ==> token location info will include a .range[] member)
flex: boolean (optional: true ==> flex-like lexing behaviour where the rules are tested exhaustively to find the longest match)
backtrack_lexer: boolean (optional: true ==> lexer regexes are tested in order and for each matching regex the action code is invoked; the lexer terminates the scan when a token is returned by the action code)
},
performAction: function(yy, yy_, $avoiding_name_collisions, YY_START),
rules: [...],
conditions: {associative list: name ==> set},
}
}
token location info (@$, _$, etc.): {
first_line: n,
last_line: n,
first_column: n,
last_column: n,
range: [start_number, end_number] (where the numbers are indexes into the input string, regular zero-based)
}
the parseError function receives a 'hash' object with these members for lexer and parser errors: {
text: (matched text)
token: (the produced terminal token, if any)
line: (yylineno)
}
while parser (grammar) errors will also provide these members, i.e. parser errors deliver a superset of attributes: {
loc: (yylloc)
expected: (string describing the set of expected tokens)
recoverable: (boolean: TRUE when the parser has a error recovery rule available for this particular error)
}
*/
var parser = (function(){
var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,24],$V1=[1,59],$V2=[1,98],$V3=[1,99],$V4=[1,94],$V5=[1,100],$V6=[1,101],$V7=[1,96],$V8=[1,97],$V9=[1,68],$Va=[1,70],$Vb=[1,71],$Vc=[1,72],$Vd=[1,73],$Ve=[1,74],$Vf=[1,76],$Vg=[1,80],$Vh=[1,77],$Vi=[1,78],$Vj=[1,62],$Vk=[1,45],$Vl=[1,38],$Vm=[1,83],$Vn=[1,84],$Vo=[1,81],$Vp=[1,82],$Vq=[1,93],$Vr=[1,57],$Vs=[1,63],$Vt=[1,64],$Vu=[1,79],$Vv=[1,50],$Vw=[1,58],$Vx=[1,75],$Vy=[1,88],$Vz=[1,89],$VA=[1,90],$VB=[1,91],$VC=[1,56],$VD=[1,87],$VE=[1,40],$VF=[1,41],$VG=[1,61],$VH=[1,42],$VI=[1,43],$VJ=[1,44],$VK=[1,46],$VL=[1,47],$VM=[1,102],$VN=[1,6,35,52,155],$VO=[1,6,33,35,52,74,76,96,137,144,155,158,166],$VP=[1,120],$VQ=[1,121],$VR=[1,122],$VS=[1,117],$VT=[1,105],$VU=[1,104],$VV=[1,103],$VW=[1,106],$VX=[1,107],$VY=[1,108],$VZ=[1,109],$V_=[1,110],$V$=[1,111],$V01=[1,112],$V11=[1,113],$V21=[1,114],$V31=[1,115],$V41=[1,116],$V51=[1,124],$V61=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,157,158,159,165,166,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$V71=[2,222],$V81=[1,130],$V91=[1,135],$Va1=[1,131],$Vb1=[1,132],$Vc1=[1,133],$Vd1=[1,136],$Ve1=[1,129],$Vf1=[1,6,33,35,52,74,76,96,137,144,155,157,158,159,165,166,183],$Vg1=[1,6,33,35,46,47,52,74,76,91,96,105,106,107,110,111,112,115,119,135,136,137,144,155,157,158,159,165,166,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$Vh1=[2,129],$Vi1=[2,133],$Vj1=[6,33,91,96],$Vk1=[2,106],$Vl1=[1,148],$Vm1=[1,147],$Vn1=[1,142],$Vo1=[1,151],$Vp1=[1,156],$Vq1=[1,154],$Vr1=[1,160],$Vs1=[1,166],$Vt1=[1,162],$Vu1=[1,163],$Vv1=[1,165],$Vw1=[1,170],$Vx1=[1,6,33,35,46,47,52,66,74,76,91,96,105,106,107,110,111,112,115,119,135,136,137,144,155,157,158,159,165,166,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$Vy1=[2,126],$Vz1=[1,6,35,52,74,76,91,96,107,119,137,144,155,157,158,159,165,166,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$VA1=[2,31],$VB1=[1,195],$VC1=[1,196],$VD1=[2,93],$VE1=[1,202],$VF1=[1,208],$VG1=[1,223],$VH1=[1,218],$VI1=[1,227],$VJ1=[1,224],$VK1=[1,229],$VL1=[1,230],$VM1=[1,232],$VN1=[2,227],$VO1=[1,234],$VP1=[14,32,33,39,40,44,46,47,54,55,59,60,61,62,63,64,73,75,82,85,87,88,89,93,94,108,109,117,120,122,131,139,149,153,154,157,159,162,165,176,182,185,186,187,188,189,190,191,192],$VQ1=[1,6,33,35,46,47,52,66,74,76,91,96,105,106,107,110,111,112,115,119,121,135,136,137,144,155,157,158,159,165,166,183,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205],$VR1=[1,247],$VS1=[1,248],$VT1=[2,156],$VU1=[1,264],$VV1=[1,265],$VW1=[1,267],$VX1=[1,277],$VY1=[1,278],$VZ1=[1,6,33,35,46,47,52,70,74,76,91,96,105,106,107,110,111,112,115,119,135,136,137,144,155,157,158,159,165,166,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$V_1=[1,6,33,35,36,46,47,52,66,70,74,76,91,96,105,106,107,110,111,112,115,119,121,128,135,136,137,144,155,157,158,159,165,166,173,174,175,183,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205],$V$1=[1,6,33,35,46,47,49,51,52,57,70,74,76,91,96,105,106,107,110,111,112,115,119,123,135,136,137,144,155,157,158,159,165,166,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$V02=[1,283],$V12=[46,47,136],$V22=[1,322],$V32=[1,321],$V42=[6,33],$V52=[2,104],$V62=[1,328],$V72=[6,33,35,91,96],$V82=[6,33,35,66,76,91,96],$V92=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,157,158,159,165,166,183,189,190,194,195,196,197,198,199,200,201,202,203,204],$Va2=[2,377],$Vb2=[2,378],$Vc2=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,157,158,159,165,166,183,189,190,194,196,197,198,199,200,201,202,203,204],$Vd2=[46,47,105,106,110,111,112,115,135,136],$Ve2=[1,357],$Vf2=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,157,158,159,165,166,183],$Vg2=[2,91],$Vh2=[1,375],$Vi2=[1,377],$Vj2=[1,382],$Vk2=[1,384],$Vl2=[6,33,74,96],$Vm2=[2,247],$Vn2=[2,248],$Vo2=[1,6,33,35,46,47,52,66,74,76,91,96,105,106,107,110,111,112,115,119,135,136,137,144,155,157,158,159,165,166,173,174,175,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$Vp2=[1,398],$Vq2=[14,32,33,35,39,40,44,46,47,54,55,59,60,61,62,63,64,73,74,75,76,82,85,87,88,89,93,94,96,108,109,117,120,122,131,139,149,153,154,157,159,162,165,176,182,185,186,187,188,189,190,191,192],$Vr2=[1,400],$Vs2=[6,33,35,74,96],$Vt2=[6,14,32,33,35,39,40,44,46,47,54,55,59,60,61,62,63,64,73,74,75,76,82,85,87,88,89,93,94,96,108,109,117,120,122,131,139,149,153,154,157,159,162,165,176,182,185,186,187,188,189,190,191,192],$Vu2=[6,33,35,74,96,137],$Vv2=[1,6,33,35,46,47,52,57,74,76,91,96,105,106,107,110,111,112,115,119,135,136,137,144,155,157,158,159,165,166,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$Vw2=[1,411],$Vx2=[1,6,33,35,46,47,52,66,70,74,76,91,96,105,106,107,110,111,112,115,119,121,135,136,137,144,155,157,158,159,165,166,173,174,175,183,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205],$Vy2=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,166,183],$Vz2=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,158,166,183],$VA2=[2,300],$VB2=[173,174,175],$VC2=[96,173,174,175],$VD2=[6,33,119],$VE2=[1,431],$VF2=[6,33,35,96,119],$VG2=[6,33,35,70,96,119],$VH2=[6,33,35,66,70,76,96,105,106,110,111,112,115,119,135,136],$VI2=[6,33,35,76,96,105,106,110,111,112,115,119,135,136],$VJ2=[46,47,49,51],$VK2=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,157,158,159,165,166,183,189,190,196,197,198,199,200,201,202,203,204],$VL2=[2,367],$VM2=[2,366],$VN2=[35,107],$VO2=[14,32,35,39,40,44,46,47,54,55,59,60,61,62,63,64,73,75,82,85,87,88,89,93,94,107,108,109,117,120,122,131,139,149,153,154,157,159,162,165,176,182,185,186,187,188,189,190,191,192],$VP2=[2,233],$VQ2=[6,33,35],$VR2=[2,105],$VS2=[1,470],$VT2=[1,471],$VU2=[1,6,33,35,46,47,52,74,76,91,96,105,106,107,110,111,112,115,119,135,136,137,144,151,152,155,157,158,159,165,166,178,180,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$VV2=[1,337],$VW2=[35,178,180],$VX2=[1,6,35,52,74,76,91,96,107,119,137,144,155,158,166,183],$VY2=[1,509],$VZ2=[1,516],$V_2=[1,6,33,35,52,74,76,96,137,144,155,158,166,183],$V$2=[2,120],$V03=[1,529],$V13=[33,35,74],$V23=[1,537],$V33=[6,33,35,96,137],$V43=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,157,158,159,165,166,178,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$V53=[1,6,33,35,52,74,76,96,137,144,155,158,166,178],$V63=[2,314],$V73=[2,315],$V83=[2,330],$V93=[1,557],$Va3=[1,558],$Vb3=[6,33,35,119],$Vc3=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,157,159,165,166,183],$Vd3=[6,33,35,96],$Ve3=[1,6,33,35,52,74,76,91,96,107,119,137,144,151,155,157,158,159,165,166,183,189,190,193,194,195,196,197,198,199,200,201,202,203,204],$Vf3=[33,96],$Vg3=[1,611],$Vh3=[1,612],$Vi3=[1,619],$Vj3=[1,620],$Vk3=[1,638],$Vl3=[1,639],$Vm3=[2,285],$Vn3=[2,288],$Vo3=[2,301],$Vp3=[2,316],$Vq3=[2,320],$Vr3=[2,317],$Vs3=[2,321],$Vt3=[2,318],$Vu3=[2,319],$Vv3=[2,331],$Vw3=[2,332],$Vx3=[1,6,33,35,52,74,76,91,96,107,119,137,144,155,157,158,159,165,183],$Vy3=[2,322],$Vz3=[2,324],$VA3=[2,326],$VB3=[2,328],$VC3=[2,323],$VD3=[2,325],$VE3=[2,327],$VF3=[2,329];
var parser = {trace: function trace () { },
yy: {},
symbols_: {"error":2,"Root":3,"Body":4,"Line":5,"TERMINATOR":6,"Expression":7,"ExpressionLine":8,"Statement":9,"FuncDirective":10,"YieldReturn":11,"AwaitReturn":12,"Return":13,"STATEMENT":14,"Import":15,"Export":16,"Value":17,"Code":18,"Operation":19,"Assign":20,"If":21,"Try":22,"While":23,"For":24,"Switch":25,"Class":26,"Throw":27,"Yield":28,"CodeLine":29,"IfLine":30,"OperationLine":31,"YIELD":32,"INDENT":33,"Object":34,"OUTDENT":35,"FROM":36,"Block":37,"Identifier":38,"IDENTIFIER":39,"JSX_TAG":40,"Property":41,"PROPERTY":42,"AlphaNumeric":43,"NUMBER":44,"String":45,"STRING":46,"STRING_START":47,"Interpolations":48,"STRING_END":49,"InterpolationChunk":50,"INTERPOLATION_START":51,"INTERPOLATION_END":52,"Regex":53,"REGEX":54,"REGEX_START":55,"Invocation":56,"REGEX_END":57,"Literal":58,"JS":59,"UNDEFINED":60,"NULL":61,"BOOL":62,"INFINITY":63,"NAN":64,"Assignable":65,"=":66,"AssignObj":67,"ObjAssignable":68,"ObjRestValue":69,":":70,"SimpleObjAssignable":71,"ThisProperty":72,"[":73,"]":74,"@":75,"...":76,"ObjSpreadExpr":77,"ObjSpreadIdentifier":78,"Parenthetical":79,"Super":80,"This":81,"SUPER":82,"OptFuncExist":83,"Arguments":84,"DYNAMIC_IMPORT":85,"Accessor":86,"RETURN":87,"AWAIT":88,"PARAM_START":89,"ParamList":90,"PARAM_END":91,"FuncGlyph":92,"->":93,"=>":94,"OptComma":95,",":96,"Param":97,"ParamVar":98,"Array":99,"Splat":100,"SimpleAssignable":101,"Range":102,"DoIife":103,"MetaProperty":104,".":105,"INDEX_START":106,"INDEX_END":107,"NEW_TARGET":108,"IMPORT_META":109,"?.":110,"::":111,"?::":112,"Index":113,"IndexValue":114,"INDEX_SOAK":115,"Slice":116,"{":117,"AssignList":118,"}":119,"CLASS":120,"EXTENDS":121,"IMPORT":122,"ASSERT":123,"ImportDefaultSpecifier":124,"ImportNamespaceSpecifier":125,"ImportSpecifierList":126,"ImportSpecifier":127,"AS":128,"DEFAULT":129,"IMPORT_ALL":130,"EXPORT":131,"ExportSpecifierList":132,"EXPORT_ALL":133,"ExportSpecifier":134,"FUNC_EXIST":135,"CALL_START":136,"CALL_END":137,"ArgList":138,"THIS":139,"Elisions":140,"ArgElisionList":141,"OptElisions":142,"RangeDots":143,"..":144,"Arg":145,"ArgElision":146,"Elision":147,"SimpleArgs":148,"TRY":149,"Catch":150,"FINALLY":151,"CATCH":152,"THROW":153,"(":154,")":155,"WhileLineSource":156,"WHILE":157,"WHEN":158,"UNTIL":159,"WhileSource":160,"Loop":161,"LOOP":162,"ForBody":163,"ForLineBody":164,"FOR":165,"BY":166,"ForStart":167,"ForSource":168,"ForLineSource":169,"ForVariables":170,"OWN":171,"ForValue":172,"FORIN":173,"FOROF":174,"FORFROM":175,"SWITCH":176,"Whens":177,"ELSE":178,"When":179,"LEADING_WHEN":180,"IfBlock":181,"IF":182,"POST_IF":183,"IfBlockLine":184,"UNARY":185,"DO":186,"DO_IIFE":187,"UNARY_MATH":188,"-":189,"+":190,"--":191,"++":192,"?":193,"MATH":194,"**":195,"SHIFT":196,"COMPARE":197,"&":198,"^":199,"|":200,"&&":201,"||":202,"BIN?":203,"RELATION":204,"COMPOUND_ASSIGN":205,"$accept":0,"$end":1},
terminals_: {2:"error",6:"TERMINATOR",14:"STATEMENT",32:"YIELD",33:"INDENT",35:"OUTDENT",36:"FROM",39:"IDENTIFIER",40:"JSX_TAG",42:"PROPERTY",44:"NUMBER",46:"STRING",47:"STRING_START",49:"STRING_END",51:"INTERPOLATION_START",52:"INTERPOLATION_END",54:"REGEX",55:"REGEX_START",57:"REGEX_END",59:"JS",60:"UNDEFINED",61:"NULL",62:"BOOL",63:"INFINITY",64:"NAN",66:"=",70:":",73:"[",74:"]",75:"@",76:"...",82:"SUPER",85:"DYNAMIC_IMPORT",87:"RETURN",88:"AWAIT",89:"PARAM_START",91:"PARAM_END",93:"->",94:"=>",96:",",105:".",106:"INDEX_START",107:"INDEX_END",108:"NEW_TARGET",109:"IMPORT_META",110:"?.",111:"::",112:"?::",115:"INDEX_SOAK",117:"{",119:"}",120:"CLASS",121:"EXTENDS",122:"IMPORT",123:"ASSERT",128:"AS",129:"DEFAULT",130:"IMPORT_ALL",131:"EXPORT",133:"EXPORT_ALL",135:"FUNC_EXIST",136:"CALL_START",137:"CALL_END",139:"THIS",144:"..",149:"TRY",151:"FINALLY",152:"CATCH",153:"THROW",154:"(",155:")",157:"WHILE",158:"WHEN",159:"UNTIL",162:"LOOP",165:"FOR",166:"BY",171:"OWN",173:"FORIN",174:"FOROF",175:"FORFROM",176:"SWITCH",178:"ELSE",180:"LEADING_WHEN",182:"IF",183:"POST_IF",185:"UNARY",186:"DO",187:"DO_IIFE",188:"UNARY_MATH",189:"-",190:"+",191:"--",192:"++",193:"?",194:"MATH",195:"**",196:"SHIFT",197:"COMPARE",198:"&",199:"^",200:"|",201:"&&",202:"||",203:"BIN?",204:"RELATION",205:"COMPOUND_ASSIGN"},
productions_: [0,[3,0],[3,1],[4,1],[4,3],[4,2],[5,1],[5,1],[5,1],[5,1],[10,1],[10,1],[9,1],[9,1],[9,1],[9,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[8,1],[8,1],[8,1],[28,1],[28,2],[28,4],[28,3],[37,2],[37,3],[38,1],[38,1],[41,1],[43,1],[43,1],[45,1],[45,3],[48,1],[48,2],[50,3],[50,5],[50,2],[50,1],[53,1],[53,3],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[20,3],[20,4],[20,5],[67,1],[67,1],[67,3],[67,5],[67,3],[67,5],[71,1],[71,1],[71,1],[68,1],[68,3],[68,4],[68,1],[69,2],[69,2],[69,2],[69,2],[77,1],[77,1],[77,1],[77,1],[77,1],[77,3],[77,2],[77,3],[77,3],[78,2],[78,2],[13,2],[13,4],[13,1],[11,3],[11,2],[12,3],[12,2],[18,5],[18,2],[29,5],[29,2],[92,1],[92,1],[95,0],[95,1],[90,0],[90,1],[90,3],[90,4],[90,6],[97,1],[97,2],[97,2],[97,3],[97,1],[98,1],[98,1],[98,1],[98,1],[100,2],[100,2],[101,1],[101,2],[101,2],[101,1],[65,1],[65,1],[65,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[80,3],[80,4],[80,6],[104,3],[104,3],[86,2],[86,2],[86,2],[86,2],[86,1],[86,1],[86,1],[113,3],[113,5],[113,2],[114,1],[114,1],[34,4],[118,0],[118,1],[118,3],[118,4],[118,6],[26,1],[26,2],[26,3],[26,4],[26,2],[26,3],[26,4],[26,5],[15,2],[15,4],[15,4],[15,6],[15,4],[15,6],[15,5],[15,7],[15,7],[15,9],[15,6],[15,8],[15,9],[15,11],[126,1],[126,3],[126,4],[126,4],[126,6],[127,1],[127,3],[127,1],[127,3],[124,1],[125,3],[16,3],[16,5],[16,2],[16,4],[16,5],[16,6],[16,3],[16,5],[16,4],[16,6],[16,5],[16,7],[16,7],[16,9],[132,1],[132,3],[132,4],[132,4],[132,6],[134,1],[134,3],[134,3],[134,1],[134,3],[56,3],[56,3],[56,3],[56,2],[83,0],[83,1],[84,2],[84,4],[81,1],[81,1],[72,2],[99,2],[99,3],[99,4],[143,1],[143,1],[102,5],[102,5],[116,3],[116,2],[116,3],[116,2],[116,2],[116,1],[138,1],[138,3],[138,4],[138,4],[138,6],[145,1],[145,1],[145,1],[145,1],[141,1],[141,3],[141,4],[141,4],[141,6],[146,1],[146,2],[142,1],[142,2],[140,1],[140,2],[147,1],[147,2],[148,1],[148,1],[148,3],[148,3],[22,2],[22,3],[22,4],[22,5],[150,3],[150,3],[150,2],[27,2],[27,4],[79,3],[79,5],[156,2],[156,4],[156,2],[156,4],[160,2],[160,4],[160,4],[160,2],[160,4],[160,4],[23,2],[23,2],[23,2],[23,2],[23,1],[161,2],[161,2],[24,2],[24,2],[24,2],[24,2],[163,2],[163,4],[163,2],[164,4],[164,2],[167,2],[167,3],[167,3],[172,1],[172,1],[172,1],[172,1],[170,1],[170,3],[168,2],[168,2],[168,4],[168,4],[168,4],[168,4],[168,4],[168,4],[168,6],[168,6],[168,6],[168,6],[168,6],[168,6],[168,6],[168,6],[168,2],[168,4],[168,4],[169,2],[169,2],[169,4],[169,4],[169,4],[169,4],[169,4],[169,4],[169,6],[169,6],[169,6],[169,6],[169,6],[169,6],[169,6],[169,6],[169,2],[169,4],[169,4],[25,5],[25,5],[25,7],[25,7],[25,4],[25,6],[177,1],[177,2],[179,3],[179,4],[181,3],[181,5],[21,1],[21,3],[21,3],[21,3],[184,3],[184,5],[30,1],[30,3],[30,3],[30,3],[31,2],[31,2],[31,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,4],[19,2],[19,2],[19,2],[19,2],[19,2],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,5],[19,4],[103,2]],
performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) {
/* this == yyval */
var $0 = $$.length - 1;
switch (yystate) {
case 1:
return this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Root(new yy.Block()));
break;
case 2:
return this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Root($$[$0]));
break;
case 3:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(yy.Block.wrap([$$[$0]]));
break;
case 4:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)($$[$0-2].push($$[$0]));
break;
case 5:
this.$ = $$[$0-1];
break;
case 6: case 7: case 8: case 9: case 10: case 11: case 12: case 14: case 15: case 16: case 17: case 18: case 19: case 20: case 21: case 22: case 23: case 24: case 25: case 26: case 27: case 28: case 29: case 30: case 41: case 52: case 54: case 64: case 69: case 70: case 71: case 72: case 75: case 80: case 81: case 82: case 83: case 84: case 104: case 105: case 116: case 117: case 118: case 119: case 125: case 126: case 129: case 135: case 149: case 247: case 248: case 249: case 251: case 264: case 265: case 308: case 309: case 364: case 370:
this.$ = $$[$0];
break;
case 13:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.StatementLiteral($$[$0]));
break;
case 31:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Op($$[$0],
new yy.Value(new yy.Literal(''))));
break;
case 32: case 374: case 375: case 376: case 378: case 379: case 382: case 405:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Op($$[$0-1],
$$[$0]));
break;
case 33: case 383:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Op($$[$0-3],
$$[$0-1]));
break;
case 34:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Op($$[$0-2].concat($$[$0-1]),
$$[$0]));
break;
case 35:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Block());
break;
case 36: case 150:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)($$[$0-1]);
break;
case 37:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.IdentifierLiteral($$[$0]));
break;
case 38:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)((function() {
var ref,
ref1,
ref2,
ref3;
return new yy.JSXTag($$[$0].toString(),
{
tagNameLocationData: $$[$0].tagNameToken[2],
closingTagOpeningBracketLocationData: (ref = $$[$0].closingTagOpeningBracketToken) != null ? ref[2] : void 0,
closingTagSlashLocationData: (ref1 = $$[$0].closingTagSlashToken) != null ? ref1[2] : void 0,
closingTagNameLocationData: (ref2 = $$[$0].closingTagNameToken) != null ? ref2[2] : void 0,
closingTagClosingBracketLocationData: (ref3 = $$[$0].closingTagClosingBracketToken) != null ? ref3[2] : void 0
});
}()));
break;
case 39:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.PropertyName($$[$0].toString()));
break;
case 40:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.NumberLiteral($$[$0].toString(),
{
parsedValue: $$[$0].parsedValue
}));
break;
case 42:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.StringLiteral($$[$0].slice(1,
-1), // strip artificial quotes and unwrap to primitive string
{
quote: $$[$0].quote,
initialChunk: $$[$0].initialChunk,
finalChunk: $$[$0].finalChunk,
indent: $$[$0].indent,
double: $$[$0].double,
heregex: $$[$0].heregex
}));
break;
case 43:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.StringWithInterpolations(yy.Block.wrap($$[$0-1]),
{
quote: $$[$0-2].quote,
startQuote: yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.Literal($$[$0-2].toString()))
}));
break;
case 44: case 107: case 157: case 183: case 208: case 242: case 256: case 260: case 312: case 358:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)([$$[$0]]);
break;
case 45: case 257: case 261: case 359:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)($$[$0-1].concat($$[$0]));
break;
case 46:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Interpolation($$[$0-1]));
break;
case 47:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Interpolation($$[$0-2]));
break;
case 48:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Interpolation());
break;
case 49: case 293:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)($$[$0]);
break;
case 50:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.RegexLiteral($$[$0].toString(),
{
delimiter: $$[$0].delimiter,
heregexCommentTokens: $$[$0].heregexCommentTokens
}));
break;
case 51:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.RegexWithInterpolations($$[$0-1],
{
heregexCommentTokens: $$[$0].heregexCommentTokens
}));
break;
case 53:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.PassthroughLiteral($$[$0].toString(),
{
here: $$[$0].here,
generated: $$[$0].generated
}));
break;
case 55:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.UndefinedLiteral($$[$0]));
break;
case 56:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.NullLiteral($$[$0]));
break;
case 57:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.BooleanLiteral($$[$0].toString(),
{
originalValue: $$[$0].original
}));
break;
case 58:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.InfinityLiteral($$[$0].toString(),
{
originalValue: $$[$0].original
}));
break;
case 59:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.NaNLiteral($$[$0]));
break;
case 60:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Assign($$[$0-2],
$$[$0]));
break;
case 61:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Assign($$[$0-3],
$$[$0]));
break;
case 62:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Assign($$[$0-4],
$$[$0-1]));
break;
case 63: case 122: case 127: case 128: case 130: case 131: case 132: case 133: case 134: case 136: case 137: case 310: case 311:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Value($$[$0]));
break;
case 65:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Assign(yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.Value($$[$0-2])),
$$[$0],
'object',
{
operatorToken: yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Literal($$[$0-1]))
}));
break;
case 66:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Assign(yy.addDataToNode(yy, _$[$0-4], $$[$0-4], null, null, true)(new yy.Value($$[$0-4])),
$$[$0-1],
'object',
{
operatorToken: yy.addDataToNode(yy, _$[$0-3], $$[$0-3], null, null, true)(new yy.Literal($$[$0-3]))
}));
break;
case 67:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Assign(yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.Value($$[$0-2])),
$$[$0],
null,
{
operatorToken: yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Literal($$[$0-1]))
}));
break;
case 68:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Assign(yy.addDataToNode(yy, _$[$0-4], $$[$0-4], null, null, true)(new yy.Value($$[$0-4])),
$$[$0-1],
null,
{
operatorToken: yy.addDataToNode(yy, _$[$0-3], $$[$0-3], null, null, true)(new yy.Literal($$[$0-3]))
}));
break;
case 73:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Value(new yy.ComputedPropertyName($$[$0-1])));
break;
case 74:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Value(yy.addDataToNode(yy, _$[$0-3], $$[$0-3], null, null, true)(new yy.ThisLiteral($$[$0-3])),
[yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.ComputedPropertyName($$[$0-1]))],
'this'));
break;
case 76:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Splat(new yy.Value($$[$0-1])));
break;
case 77:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Splat(new yy.Value($$[$0]),
{
postfix: false
}));
break;
case 78: case 120:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Splat($$[$0-1]));
break;
case 79: case 121:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Splat($$[$0],
{
postfix: false
}));
break;
case 85: case 220:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.SuperCall(yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.Super()),
$$[$0],
$$[$0-1].soak,
$$[$0-2]));
break;
case 86: case 221:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.DynamicImportCall(yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.DynamicImport()),
$$[$0]));
break;
case 87:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Call(new yy.Value($$[$0-2]),
$$[$0],
$$[$0-1].soak));
break;
case 88: case 219:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Call($$[$0-2],
$$[$0],
$$[$0-1].soak));
break;
case 89: case 90:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)((new yy.Value($$[$0-1])).add($$[$0]));
break;
case 91:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Return($$[$0]));
break;
case 92:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Return(new yy.Value($$[$0-1])));
break;
case 93:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Return());
break;
case 94:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.YieldReturn($$[$0],
{
returnKeyword: yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Literal($$[$0-1]))
}));
break;
case 95:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.YieldReturn(null,
{
returnKeyword: yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.Literal($$[$0]))
}));
break;
case 96:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.AwaitReturn($$[$0],
{
returnKeyword: yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Literal($$[$0-1]))
}));
break;
case 97:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.AwaitReturn(null,
{
returnKeyword: yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.Literal($$[$0]))
}));
break;
case 98:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Code($$[$0-3],
$$[$0],
$$[$0-1],
yy.addDataToNode(yy, _$[$0-4], $$[$0-4], null, null, true)(new yy.Literal($$[$0-4]))));
break;
case 99:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Code([],
$$[$0],
$$[$0-1]));
break;
case 100:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Code($$[$0-3],
yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(yy.Block.wrap([$$[$0]])),
$$[$0-1],
yy.addDataToNode(yy, _$[$0-4], $$[$0-4], null, null, true)(new yy.Literal($$[$0-4]))));
break;
case 101:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Code([],
yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(yy.Block.wrap([$$[$0]])),
$$[$0-1]));
break;
case 102: case 103:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.FuncGlyph($$[$0]));
break;
case 106: case 156: case 258:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)([]);
break;
case 108: case 158: case 184: case 209: case 243: case 252:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)($$[$0-2].concat($$[$0]));
break;
case 109: case 159: case 185: case 210: case 244: case 253:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)($$[$0-3].concat($$[$0]));
break;
case 110: case 160: case 187: case 212: case 246:
this.$ = yy.addDataToNode(yy, _$[$0-5], $$[$0-5], _$[$0], $$[$0], true)($$[$0-5].concat($$[$0-2]));
break;
case 111:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Param($$[$0]));
break;
case 112:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Param($$[$0-1],
null,
true));
break;
case 113:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Param($$[$0],
null,
{
postfix: false
}));
break;
case 114:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Param($$[$0-2],
$$[$0]));
break;
case 115: case 250:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Expansion());
break;
case 123:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)($$[$0-1].add($$[$0]));
break;
case 124:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Value($$[$0-1]).add($$[$0]));
break;
case 138:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Super(yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.Access($$[$0])),
yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.Literal($$[$0-2]))));
break;
case 139:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Super(yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Index($$[$0-1])),
yy.addDataToNode(yy, _$[$0-3], $$[$0-3], null, null, true)(new yy.Literal($$[$0-3]))));
break;
case 140:
this.$ = yy.addDataToNode(yy, _$[$0-5], $$[$0-5], _$[$0], $$[$0], true)(new yy.Super(yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.Index($$[$0-2])),
yy.addDataToNode(yy, _$[$0-5], $$[$0-5], null, null, true)(new yy.Literal($$[$0-5]))));
break;
case 141: case 142:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.MetaProperty(yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.IdentifierLiteral($$[$0-2])),
yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.Access($$[$0]))));
break;
case 143:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Access($$[$0]));
break;
case 144:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Access($$[$0],
{
soak: true
}));
break;
case 145:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)([
yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Access(new yy.PropertyName('prototype'),
{
shorthand: true
})),
yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.Access($$[$0]))
]);
break;
case 146:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)([
yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Access(new yy.PropertyName('prototype'),
{
shorthand: true,
soak: true
})),
yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.Access($$[$0]))
]);
break;
case 147:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Access(new yy.PropertyName('prototype'),
{
shorthand: true
}));
break;
case 148:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Access(new yy.PropertyName('prototype'),
{
shorthand: true,
soak: true
}));
break;
case 151:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)($$[$0-2]);
break;
case 152:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(yy.extend($$[$0],
{
soak: true
}));
break;
case 153:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Index($$[$0]));
break;
case 154:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Slice($$[$0]));
break;
case 155:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Obj($$[$0-2],
$$[$0-3].generated));
break;
case 161:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Class());
break;
case 162:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Class(null,
null,
$$[$0]));
break;
case 163:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Class(null,
$$[$0]));
break;
case 164:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Class(null,
$$[$0-1],
$$[$0]));
break;
case 165:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Class($$[$0]));
break;
case 166:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Class($$[$0-1],
null,
$$[$0]));
break;
case 167:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Class($$[$0-2],
$$[$0]));
break;
case 168:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Class($$[$0-3],
$$[$0-1],
$$[$0]));
break;
case 169:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.ImportDeclaration(null,
$$[$0]));
break;
case 170:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.ImportDeclaration(null,
$$[$0-2],
$$[$0]));
break;
case 171:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause($$[$0-2],
null),
$$[$0]));
break;
case 172:
this.$ = yy.addDataToNode(yy, _$[$0-5], $$[$0-5], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause($$[$0-4],
null),
$$[$0-2],
$$[$0]));
break;
case 173:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause(null,
$$[$0-2]),
$$[$0]));
break;
case 174:
this.$ = yy.addDataToNode(yy, _$[$0-5], $$[$0-5], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause(null,
$$[$0-4]),
$$[$0-2],
$$[$0]));
break;
case 175:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause(null,
new yy.ImportSpecifierList([])),
$$[$0]));
break;
case 176:
this.$ = yy.addDataToNode(yy, _$[$0-6], $$[$0-6], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause(null,
new yy.ImportSpecifierList([])),
$$[$0-2],
$$[$0]));
break;
case 177:
this.$ = yy.addDataToNode(yy, _$[$0-6], $$[$0-6], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause(null,
new yy.ImportSpecifierList($$[$0-4])),
$$[$0]));
break;
case 178:
this.$ = yy.addDataToNode(yy, _$[$0-8], $$[$0-8], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause(null,
new yy.ImportSpecifierList($$[$0-6])),
$$[$0-2],
$$[$0]));
break;
case 179:
this.$ = yy.addDataToNode(yy, _$[$0-5], $$[$0-5], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause($$[$0-4],
$$[$0-2]),
$$[$0]));
break;
case 180:
this.$ = yy.addDataToNode(yy, _$[$0-7], $$[$0-7], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause($$[$0-6],
$$[$0-4]),
$$[$0-2],
$$[$0]));
break;
case 181:
this.$ = yy.addDataToNode(yy, _$[$0-8], $$[$0-8], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause($$[$0-7],
new yy.ImportSpecifierList($$[$0-4])),
$$[$0]));
break;
case 182:
this.$ = yy.addDataToNode(yy, _$[$0-10], $$[$0-10], _$[$0], $$[$0], true)(new yy.ImportDeclaration(new yy.ImportClause($$[$0-9],
new yy.ImportSpecifierList($$[$0-6])),
$$[$0-2],
$$[$0]));
break;
case 186: case 211: case 245:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)($$[$0-2]);
break;
case 188:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.ImportSpecifier($$[$0]));
break;
case 189:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.ImportSpecifier($$[$0-2],
$$[$0]));
break;
case 190:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.ImportSpecifier(yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.DefaultLiteral($$[$0]))));
break;
case 191:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.ImportSpecifier(yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.DefaultLiteral($$[$0-2])),
$$[$0]));
break;
case 192:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.ImportDefaultSpecifier($$[$0]));
break;
case 193:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.ImportNamespaceSpecifier(new yy.Literal($$[$0-2]),
$$[$0]));
break;
case 194:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration(new yy.ExportSpecifierList([])));
break;
case 195:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration(new yy.ExportSpecifierList($$[$0-2])));
break;
case 196:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration($$[$0]));
break;
case 197:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration(yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Assign($$[$0-2],
$$[$0],
null,
{
moduleDeclaration: 'export'
}))));
break;
case 198:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration(yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Assign($$[$0-3],
$$[$0],
null,
{
moduleDeclaration: 'export'
}))));
break;
case 199:
this.$ = yy.addDataToNode(yy, _$[$0-5], $$[$0-5], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration(yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Assign($$[$0-4],
$$[$0-1],
null,
{
moduleDeclaration: 'export'
}))));
break;
case 200:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.ExportDefaultDeclaration($$[$0]));
break;
case 201:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.ExportDefaultDeclaration(new yy.Value($$[$0-1])));
break;
case 202:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.ExportAllDeclaration(new yy.Literal($$[$0-2]),
$$[$0]));
break;
case 203:
this.$ = yy.addDataToNode(yy, _$[$0-5], $$[$0-5], _$[$0], $$[$0], true)(new yy.ExportAllDeclaration(new yy.Literal($$[$0-4]),
$$[$0-2],
$$[$0]));
break;
case 204:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration(new yy.ExportSpecifierList([]),
$$[$0]));
break;
case 205:
this.$ = yy.addDataToNode(yy, _$[$0-6], $$[$0-6], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration(new yy.ExportSpecifierList([]),
$$[$0-2],
$$[$0]));
break;
case 206:
this.$ = yy.addDataToNode(yy, _$[$0-6], $$[$0-6], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration(new yy.ExportSpecifierList($$[$0-4]),
$$[$0]));
break;
case 207:
this.$ = yy.addDataToNode(yy, _$[$0-8], $$[$0-8], _$[$0], $$[$0], true)(new yy.ExportNamedDeclaration(new yy.ExportSpecifierList($$[$0-6]),
$$[$0-2],
$$[$0]));
break;
case 213:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.ExportSpecifier($$[$0]));
break;
case 214:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.ExportSpecifier($$[$0-2],
$$[$0]));
break;
case 215:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.ExportSpecifier($$[$0-2],
yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.DefaultLiteral($$[$0]))));
break;
case 216:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.ExportSpecifier(yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.DefaultLiteral($$[$0]))));
break;
case 217:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.ExportSpecifier(yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.DefaultLiteral($$[$0-2])),
$$[$0]));
break;
case 218:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.TaggedTemplateCall($$[$0-2],
$$[$0],
$$[$0-1].soak));
break;
case 222:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)({
soak: false
});
break;
case 223:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)({
soak: true
});
break;
case 224:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)([]);
break;
case 225:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)((function() {
$$[$0-2].implicit = $$[$0-3].generated;
return $$[$0-2];
}()));
break;
case 226: case 227:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Value(new yy.ThisLiteral($$[$0])));
break;
case 228:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Value(yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.ThisLiteral($$[$0-1])),
[yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.Access($$[$0]))],
'this'));
break;
case 229:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Arr([]));
break;
case 230:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Arr($$[$0-1]));
break;
case 231:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Arr([].concat($$[$0-2],
$$[$0-1])));
break;
case 232:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)({
exclusive: false
});
break;
case 233:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)({
exclusive: true
});
break;
case 234: case 235:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Range($$[$0-3],
$$[$0-1],
$$[$0-2].exclusive ? 'exclusive' : 'inclusive'));
break;
case 236: case 238:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Range($$[$0-2],
$$[$0],
$$[$0-1].exclusive ? 'exclusive' : 'inclusive'));
break;
case 237: case 239:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Range($$[$0-1],
null,
$$[$0].exclusive ? 'exclusive' : 'inclusive'));
break;
case 240:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Range(null,
$$[$0],
$$[$0-1].exclusive ? 'exclusive' : 'inclusive'));
break;
case 241:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Range(null,
null,
$$[$0].exclusive ? 'exclusive' : 'inclusive'));
break;
case 254:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)($$[$0-2].concat($$[$0-1]));
break;
case 255:
this.$ = yy.addDataToNode(yy, _$[$0-5], $$[$0-5], _$[$0], $$[$0], true)($$[$0-5].concat($$[$0-4],
$$[$0-2],
$$[$0-1]));
break;
case 259:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)([].concat($$[$0]));
break;
case 262:
this.$ = yy.addDataToNode(yy, _$[$0], $$[$0], _$[$0], $$[$0], true)(new yy.Elision());
break;
case 263:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)($$[$0-1]);
break;
case 266: case 267:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)([].concat($$[$0-2],
$$[$0]));
break;
case 268:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Try($$[$0]));
break;
case 269:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Try($$[$0-1],
$$[$0]));
break;
case 270:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Try($$[$0-2],
null,
$$[$0],
yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Literal($$[$0-1]))));
break;
case 271:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Try($$[$0-3],
$$[$0-2],
$$[$0],
yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Literal($$[$0-1]))));
break;
case 272:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Catch($$[$0],
$$[$0-1]));
break;
case 273:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Catch($$[$0],
yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.Value($$[$0-1]))));
break;
case 274:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Catch($$[$0]));
break;
case 275:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.Throw($$[$0]));
break;
case 276:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.Throw(new yy.Value($$[$0-1])));
break;
case 277:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)(new yy.Parens($$[$0-1]));
break;
case 278:
this.$ = yy.addDataToNode(yy, _$[$0-4], $$[$0-4], _$[$0], $$[$0], true)(new yy.Parens($$[$0-2]));
break;
case 279: case 283:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.While($$[$0]));
break;
case 280: case 284: case 285:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.While($$[$0-2],
{
guard: $$[$0]
}));
break;
case 281: case 286:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.While($$[$0],
{
invert: true
}));
break;
case 282: case 287: case 288:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.While($$[$0-2],
{
invert: true,
guard: $$[$0]
}));
break;
case 289: case 290: case 298: case 299:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)($$[$0-1].addBody($$[$0]));
break;
case 291: case 292:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)((Object.assign($$[$0],
{
postfix: true
})).addBody(yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(yy.Block.wrap([$$[$0-1]]))));
break;
case 294:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.While(yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.BooleanLiteral('true')),
{
isLoop: true
}).addBody($$[$0]));
break;
case 295:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.While(yy.addDataToNode(yy, _$[$0-1], $$[$0-1], null, null, true)(new yy.BooleanLiteral('true')),
{
isLoop: true
}).addBody(yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(yy.Block.wrap([$$[$0]]))));
break;
case 296: case 297:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)((function() {
$$[$0].postfix = true;
return $$[$0].addBody($$[$0-1]);
}()));
break;
case 300:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.For([],
{
source: yy.addDataToNode(yy, _$[$0], $$[$0], null, null, true)(new yy.Value($$[$0]))
}));
break;
case 301: case 303:
this.$ = yy.addDataToNode(yy, _$[$0-3], $$[$0-3], _$[$0], $$[$0], true)(new yy.For([],
{
source: yy.addDataToNode(yy, _$[$0-2], $$[$0-2], null, null, true)(new yy.Value($$[$0-2])),
step: $$[$0]
}));
break;
case 302: case 304:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)($$[$0-1].addSource($$[$0]));
break;
case 305:
this.$ = yy.addDataToNode(yy, _$[$0-1], $$[$0-1], _$[$0], $$[$0], true)(new yy.For([],
{
name: $$[$0][0],
index: $$[$0][1]
}));
break;
case 306:
this.$ = yy.addDataToNode(yy, _$[$0-2], $$[$0-2], _$[$0], $$[$0], true)((function() {
var index,
name;
[name,
index]