update reef, fix precedence test

This commit is contained in:
Chris Wanstrath 2025-11-07 22:55:34 -08:00
parent 3c6d0913c0
commit cf09f51380
4 changed files with 9 additions and 9 deletions

View File

@ -62,11 +62,11 @@
"hono": ["hono@4.10.4", "", {}, "sha512-YG/fo7zlU3KwrBL5vDpWKisLYiM+nVstBQqfr7gCPbSYURnNEP9BDxEMz8KfsDR9JX0lJWDRNc6nXX31v7ZEyg=="], "hono": ["hono@4.10.4", "", {}, "sha512-YG/fo7zlU3KwrBL5vDpWKisLYiM+nVstBQqfr7gCPbSYURnNEP9BDxEMz8KfsDR9JX0lJWDRNc6nXX31v7ZEyg=="],
"reefvm": ["reefvm@git+https://git.nose.space/defunkt/reefvm#bffb83a5280a4d74e424c4e0f4fbd46f790227a3", { "peerDependencies": { "typescript": "^5" } }, "bffb83a5280a4d74e424c4e0f4fbd46f790227a3"], "reefvm": ["reefvm@git+https://git.nose.space/defunkt/reefvm#15884ac239b7ab2310e0f87b82f9f1af485c28c7", { "peerDependencies": { "typescript": "^5" } }, "15884ac239b7ab2310e0f87b82f9f1af485c28c7"],
"style-mod": ["style-mod@4.1.3", "", {}, "sha512-i/n8VsZydrugj3Iuzll8+x/00GH2vnYsk1eomD8QiRrSAeW6ItbCQDtfXCeJHd0iwiNagqjQkvpvREEPtW3IoQ=="], "style-mod": ["style-mod@4.1.3", "", {}, "sha512-i/n8VsZydrugj3Iuzll8+x/00GH2vnYsk1eomD8QiRrSAeW6ItbCQDtfXCeJHd0iwiNagqjQkvpvREEPtW3IoQ=="],
"tailwindcss": ["tailwindcss@4.1.16", "", {}, "sha512-pONL5awpaQX4LN5eiv7moSiSPd/DLDzKVRJz8Q9PgzmAdd1R4307GQS2ZpfiN7ZmekdQrfhZZiSE5jkLR4WNaA=="], "tailwindcss": ["tailwindcss@4.1.17", "", {}, "sha512-j9Ee2YjuQqYT9bbRTfTZht9W/ytp5H+jJpZKiYdP/bpnXARAuELt9ofP0lPnmHjbga7SNQIxdTAXCmtKVYjN+Q=="],
"typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="],

View File

@ -10,7 +10,7 @@
"repl": "bun generate-parser && bun bin/repl", "repl": "bun generate-parser && bun bin/repl",
"update-reef": "rm -rf ~/.bun/install/cache/ && rm bun.lock && bun update reefvm", "update-reef": "rm -rf ~/.bun/install/cache/ && rm bun.lock && bun update reefvm",
"cli:install": "ln -s \"$(pwd)/bin/shrimp\" ~/.bun/bin/shrimp", "cli:install": "ln -s \"$(pwd)/bin/shrimp\" ~/.bun/bin/shrimp",
"cli:remove": "rm ~/.bun/bin/shrimp", "cli:remove": "rm ~/.bun/bin/shrimp"
}, },
"dependencies": { "dependencies": {
"@codemirror/view": "^6.38.3", "@codemirror/view": "^6.38.3",
@ -31,4 +31,4 @@
"singleQuote": true, "singleQuote": true,
"printWidth": 100 "printWidth": 100
} }
} }

View File

@ -45,9 +45,9 @@ null { @specialize[@name=Null]<Identifier, "null"> }
or @left, or @left,
and @left, and @left,
comparison @left, comparison @left,
bitwise @left,
multiplicative @left, multiplicative @left,
additive @left, additive @left,
bitwise @left,
call call
} }

View File

@ -7,9 +7,9 @@ import {highlighting} from "./highlight"
const spec_Identifier = {__proto__:null,while:72, if:80, null:108, catch:114, finally:120, end:122, else:130, try:148, throw:152} const spec_Identifier = {__proto__:null,while:72, if:80, null:108, catch:114, finally:120, end:122, else:130, try:148, throw:152}
export const parser = LRParser.deserialize({ export const parser = LRParser.deserialize({
version: 14, version: 14,
states: "9hQYQbOOO!dOpO'#DWO!iOSO'#D_O$_QcO'#DqO'hQcO'#E`OOQ`'#En'#EnO(kQRO'#DrO*mQcO'#E^O+WQbO'#DSOOQa'#Dt'#DtO-YQbO'#DuOOQa'#E`'#E`O-aQcO'#E`O.xQcO'#E_O/}QcO'#E^O0XQRO'#D{OOQ`'#E^'#E^O0mQbO'#E^O0tQQO'#E]OOQ`'#E]'#E]OOQ`'#D}'#D}QYQbOOO1PQbO'#DZO1[QbO'#DTO2PQbO'#DPO2tQQO'#DwO2PQbO'#DyO2yObO,59rO3UQbO'#DaO3^QWO'#DbOOOO'#Ef'#EfOOOO'#ES'#ESO3rOSO,59yOOQa,59y,59yOOQ`'#DY'#DYO4QQbO'#DmOOQ`'#Ed'#EdOOQ`'#EP'#EPO4[QbO,59qOOQa'#E_'#E_O2PQbO,5:^O2PQbO,5:^O2PQbO,5:^O2PQbO,5:^O2PQbO,59mO2PQbO,59mO2PQbO,59mO5UQRO,59nO5]QQO,59nO5eQQO,59nO5pQRO,59nO5wQRO,59nO6VQQO'#C}OOQ`'#EV'#EVO6[QbO,5:aO6cQQO,5:`OOQa,5:a,5:aO6nQbO,5:aO+WQbO,5:hO+WQbO,5:gO6xQbO,5:bO7PQbO,59iOOQ`,5:w,5:wO+WQbO'#EOOOQ`-E7{-E7{OOQ`'#EQ'#EQO7kQbO'#D[O7vQbO'#D]OOQO'#ER'#ERO7nQQO'#D[O8UQQO,59uO8ZQcO'#E_O8bQRO'#EbO9XQRO'#EbOOQO'#Eb'#EbO9`QQO,59oO9eQRO,59kO9lQRO,59kO6xQbO,5:cO9wQcO,5:eO;PQcO,5:eO;sQcO,5:eOOQa1G/^1G/^OOOO,59{,59{OOOO,59|,59|OOOO-E8Q-E8QOOQa1G/e1G/eOOQ`,5:X,5:XOOQ`-E7}-E7}OOQa1G/x1G/xO=XQcO1G/xO;}QcO1G/xO>jQcO1G/xO=`QcO1G/xO>qQcO1G/xOOQa1G/X1G/XOASQcO1G/XOAZQcO1G/XOAbQcO1G/XOOQa1G/Y1G/YOOQ`-E8T-E8TOAiQQO1G/zOOQa1G/{1G/{OAtQbO1G/{OOQO'#EW'#EWOAiQQO1G/zOOQa1G/z1G/zOOQ`'#EX'#EXOAtQbO1G/{OBOQbO1G0SOBjQbO1G0ROCUQbO'#DhOCgQbO'#DhOCzQbO1G/|OOQ`-E7|-E7|OOQ`,5:j,5:jOOQ`-E8O-E8OODVQQO,59vOOQO,59w,59wOOQO-E8P-E8POD_QbO1G/aO6xQbO1G/ZO6xQbO1G/VODfQbO1G/}ODqQQO7+%fOOQa7+%f7+%fOD|QbO7+%gOOQa7+%g7+%gOOQO-E8U-E8UOOQ`-E8V-E8VOOQ`'#ET'#ETOEWQQO'#ETOE`QbO'#EmOOQ`,5:S,5:SOEsQbO'#DfOExQQO'#DiOOQ`7+%h7+%hOE}QbO7+%hOFSQbO7+%hOF[QbO7+${OFjQbO7+${OFzQbO7+$uOGSQbO7+$qOOQ`7+%i7+%iOGXQbO7+%iOG^QbO7+%iOOQa<<IQ<<IQOOQa<<IR<<IROOQ`,5:o,5:oOOQ`-E8R-E8ROGfQQO,5:QO6xQbO,5:TOOQ`<<IS<<ISOGkQbO<<ISOOQ`<<Hg<<HgOGpQbO<<HgOGuQbO<<HgOG}QbO<<HgOOQ`'#EU'#EUOHYQbO<<HaOHbQbO'#DpOOQ`<<Ha<<HaOHjQbO<<HaOOQ`<<H]<<H]OOQ`<<IT<<ITOHoQbO<<ITO6xQbO1G/lOOQ`1G/o1G/oOOQ`AN>nAN>nOOQ`AN>RAN>ROHtQbOAN>ROHyQbOAN>ROOQ`-E8S-E8SOOQ`AN={AN={OIRQbOAN={O1[QbO,5:YO6xQbO,5:[OOQ`AN>oAN>oOOQ`7+%W7+%WOOQ`G23mG23mOIWQbOG23mPI]QbO'#DnOOQ`G23gG23gOIbQQO1G/tOOQ`1G/v1G/vOOQ`LD)XLD)XO6xQbO7+%`OOQ`<<Hz<<Hz", states: "9hQYQbOOO!dOpO'#DWO!iOSO'#D_O$_QcO'#DqO'hQcO'#E`OOQ`'#En'#EnO(kQRO'#DrO*mQcO'#E^O+WQbO'#DSOOQa'#Dt'#DtO-YQbO'#DuOOQa'#E`'#E`O-aQcO'#E`O.xQcO'#E_O/}QcO'#E^O0XQRO'#D{OOQ`'#E^'#E^O0mQbO'#E^O0tQQO'#E]OOQ`'#E]'#E]OOQ`'#D}'#D}QYQbOOO1PQbO'#DZO1[QbO'#DTO2PQbO'#DPO2tQQO'#DwO2PQbO'#DyO2yObO,59rO3UQbO'#DaO3^QWO'#DbOOOO'#Ef'#EfOOOO'#ES'#ESO3rOSO,59yOOQa,59y,59yOOQ`'#DY'#DYO4QQbO'#DmOOQ`'#Ed'#EdOOQ`'#EP'#EPO4[QbO,59qOOQa'#E_'#E_O2PQbO,5:^O2PQbO,5:^O2PQbO,5:^O2PQbO,5:^O2PQbO,59mO2PQbO,59mO2PQbO,59mO5UQRO,59nO5]QQO,59nO5eQQO,59nO5pQRO,59nO5wQRO,59nO6VQQO'#C}OOQ`'#EV'#EVO6[QbO,5:aO6cQQO,5:`OOQa,5:a,5:aO6nQbO,5:aO+WQbO,5:hO+WQbO,5:gO6xQbO,5:bO7PQbO,59iOOQ`,5:w,5:wO+WQbO'#EOOOQ`-E7{-E7{OOQ`'#EQ'#EQO7kQbO'#D[O7vQbO'#D]OOQO'#ER'#ERO7nQQO'#D[O8UQQO,59uO8ZQcO'#E_O8bQRO'#EbO9XQRO'#EbOOQO'#Eb'#EbO9`QQO,59oO9eQRO,59kO9lQRO,59kO6xQbO,5:cO9wQcO,5:eO;PQcO,5:eO;sQcO,5:eOOQa1G/^1G/^OOOO,59{,59{OOOO,59|,59|OOOO-E8Q-E8QOOQa1G/e1G/eOOQ`,5:X,5:XOOQ`-E7}-E7}OOQa1G/x1G/xO=UQcO1G/xO=`QcO1G/xO>nQcO1G/xO>xQcO1G/xO?VQcO1G/xOOQa1G/X1G/XO@eQcO1G/XO@lQcO1G/XO@sQcO1G/XOOQa1G/Y1G/YOOQ`-E8T-E8TO@zQQO1G/zOOQa1G/{1G/{OAVQbO1G/{OOQO'#EW'#EWO@zQQO1G/zOOQa1G/z1G/zOOQ`'#EX'#EXOAVQbO1G/{OAaQbO1G0SOA{QbO1G0ROBgQbO'#DhOBxQbO'#DhOC]QbO1G/|OOQ`-E7|-E7|OOQ`,5:j,5:jOOQ`-E8O-E8OOChQQO,59vOOQO,59w,59wOOQO-E8P-E8POCpQbO1G/aO6xQbO1G/ZO6xQbO1G/VOCwQbO1G/}ODSQQO7+%fOOQa7+%f7+%fOD_QbO7+%gOOQa7+%g7+%gOOQO-E8U-E8UOOQ`-E8V-E8VOOQ`'#ET'#ETODiQQO'#ETODqQbO'#EmOOQ`,5:S,5:SOEUQbO'#DfOEZQQO'#DiOOQ`7+%h7+%hOE`QbO7+%hOEeQbO7+%hOEmQbO7+${OE{QbO7+${OF]QbO7+$uOFeQbO7+$qOOQ`7+%i7+%iOFjQbO7+%iOFoQbO7+%iOOQa<<IQ<<IQOOQa<<IR<<IROOQ`,5:o,5:oOOQ`-E8R-E8ROFwQQO,5:QO6xQbO,5:TOOQ`<<IS<<ISOF|QbO<<ISOOQ`<<Hg<<HgOGRQbO<<HgOGWQbO<<HgOG`QbO<<HgOOQ`'#EU'#EUOGkQbO<<HaOGsQbO'#DpOOQ`<<Ha<<HaOG{QbO<<HaOOQ`<<H]<<H]OOQ`<<IT<<ITOHQQbO<<ITO6xQbO1G/lOOQ`1G/o1G/oOOQ`AN>nAN>nOOQ`AN>RAN>ROHVQbOAN>ROH[QbOAN>ROOQ`-E8S-E8SOOQ`AN={AN={OHdQbOAN={O1[QbO,5:YO6xQbO,5:[OOQ`AN>oAN>oOOQ`7+%W7+%WOOQ`G23mG23mOHiQbOG23mPHnQbO'#DnOOQ`G23gG23gOHsQQO1G/tOOQ`1G/v1G/vOOQ`LD)XLD)XO6xQbO7+%`OOQ`<<Hz<<Hz",
stateData: "Ij~O#OOSoOS~OjROk_OlZOmPOnfOthOxgO{ZO!VZO!WZO!gZO!liO!njO#TWO#XQO#`cO#dXO#eYO~O#VkO~O!SnO#XqO#ZlO#[mO~OjwOlZOmPOnfO{ZO!QsO!VZO!WZO!`rO!gZO#TWO#XQO#dXO#eYOT#RXU#RXW#RXX#RXY#RXZ#RX[#RX]#RX~OP#RXQ#RXR#RXS#RX^#RXd#RXe#RXf#RXg#RXh#RXi#RXr!eX!X!eX#`!eX#g!eX#c!eX!Z!eX!^!eX!_!eX!c!eX~P!wOP#SXQ#SXR#SXS#SXT#SXU#SXW#SXX#SXY#SXZ#SX[#SX]#SX^#SXd#SXe#SXf#SXg#SXh#SXi#SXr#SX#`#SX#g#SX#c#SX!Z#SX!^#SX!_#SX!c#SX~OjwOlZOmPOnfO{ZO!QsO!VZO!WZO!`rO!gZO#TWO#XQO#dXO#eYO!X#SX~P%qOPyOQyORzOSzOT}OU!OOW|OX|OY|OZ|O[|O]|O^xOd{Oe{Of{Og{Oh{Oi{O~OPyOQyORzOSzOd{Oe{Of{Og{Oh{Oi{Or#QX~O#`#QX#g#QX!Z#QX!^#QX!_#QX#c#QX!c#QX~P)xOjROk_OlZOmPOnfOthOxgO{ZO!VZO!WZO!gZO!liO!njO#TWO#XQO#dXO#eYO~OjwOlZOmPO{ZO!QsO!VZO!WZO!gZO#TWO#XQO#`!VO#dXO#eYO~O#f!YO~P,_OV![O~P%qOP#RXQ#RXR#RXS#RXT#RXU#RXW#RXX#RXY#RXZ#RX[#RX]#RX^#RXd#RXe#RXf#RXg#RXh#RXi#RXr#QX~O#`#QX#g#QX!Z#QX!^#QX!_#QX#c#QX!c#QX~P-hOr#QX#`#QX#g#QX!Z#QX!^#QX!_#QX#c#QX!c#QX~OT}OU!OO~P/cOV![O_!]O`!]Oa!]Ob!]Oc!]O~O!X!^O~P/cOr!aO#`!`O#g!`O~Oj!cO!Q!eO!X!OP~Oj!iOlZOmPO{ZO!VZO!WZO!gZO#TWO#XQO#dXO#eYO~OjwOlZOmPO{ZO!VZO!WZO!gZO#TWO#XQO#dXO#eYO~O!X!pO~Oj!tO{!tO#TWO~Oj!uO#TWO~O#X!vO#Z!vO#[!vO#]!vO#^!vO#_!vO~O!SnO#X!xO#ZlO#[mO~OnfO!`!yO~P2POnfO!QsO!`rOrya!Xya#`ya#gya#cya!Zya!^ya!_ya!cya~P2PO#c#VO~P)xO#c#VOr#QX~O!X!^O#c#VOr#QX~O#c#VO~P-hOT}OU!OO#c#VOr#QX~Or!aO~O#f#YO~P,_O!QsO#`#[O#f#^O~O#`#_O#f#YO~P2PO#`#dO~P+WOr!aO#`qa#gqa#cqa!Zqa!^qa!_qa!cqa~Oj!cO!Q!eO!X!OX~O{#jO!V#jO!W#jO#XQO~O!X#lO~O!X#RX~P!wOT}OU!OO!X#UX~OT}OU!OOW|OX|OY|OZ|O[|O]|O~O!X#UX~P8mO!X#mO~O!X#nO~P8mOT}OU!OO!X#nO~Or!ma#`!ma#g!ma!Z!ma!^!ma!_!ma#c!ma!c!ma~P(kOr!ma#`!ma#g!ma!Z!ma!^!ma!_!ma#c!ma!c!ma~OPyOQyORzOSzOd{Oe{Of{Og{Oh{Oi{O~P:eOT}OU!OO~P:eOd{Oe{Of{Og{Oh{Oi{OP!fiQ!fiR!fiS!fir!fi#`!fi#g!fi#c!fi!Z!fi!^!fi!_!fi!c!fi~O^xO~P;}OPyOQyOd{Oe{Of{Og{Oh{Oi{OR!fiS!fir!fi#`!fi#g!fi#c!fi!Z!fi!^!fi!_!fi!c!fi~O^xO~P=`O^xOP!fiQ!fiR!fiS!fid!fie!fif!fig!fih!fii!fir!fi#`!fi#g!fi#c!fi!Z!fi!^!fi!_!fi!c!fi~OW|OX|OY|OZ|O[|O]|OTuirui#`ui#gui#cui!Xui!Zui!^ui!_ui!cui~OU!OO~P@OOU!OO~P@bOUui~P@OO!QsO#`#[O#f#qO~O#`#_O#f#sO~P2POr!aO#`!pi#g!pi!Z!pi!^!pi!_!pi#c!pi!c!pi~Or!aO#`!oi#g!oi!Z!oi!^!oi!_!oi#c!oi!c!oi~Or!aO!Z![X!^![X!_![X!c![X~O#`#vO!Z#aP!^#aP!_#aP!c#aP~P+WO!Z#zO!^#{O!_#|O~O!Q!eO!X!Oa~O#`$QO~P+WO!Z#zO!^#{O!_$TO~O!QsO#`#[O#f$WO~O#`#_O#f$XO~P2POr!aO#`$YO~O#`#vO!Z#aX!^#aX!_#aX!c#aX~P+WOj$[O~O!X$]O~O!_$^O~O!^#{O!_$^O~Or!aO!Z#zO!^#{O!_$`O~O#`#vO!Z#aP!^#aP!_#aP~P+WO!_$gO!c$fO~O!_$iO~O!_$jO~O!^#{O!_$jO~O!X$lO~O!_$nO~O!_$oO~O!^#{O!_$oO~O!Z#zO!^#{O!_$oO~O!_$sO!c$fO~Ox$uO!X$vO~O!_$sO~O!_$wO~O!_$yO~O!^#{O!_$yO~O!_$|O~O!_%PO~Ox$uO~O!X%QO~O{!g~", stateData: "H{~O#OOSoOS~OjROk_OlZOmPOnfOthOxgO{ZO!VZO!WZO!gZO!liO!njO#TWO#XQO#`cO#dXO#eYO~O#VkO~O!SnO#XqO#ZlO#[mO~OjwOlZOmPOnfO{ZO!QsO!VZO!WZO!`rO!gZO#TWO#XQO#dXO#eYOT#RXU#RXW#RXX#RXY#RXZ#RX[#RX]#RX~OP#RXQ#RXR#RXS#RX^#RXd#RXe#RXf#RXg#RXh#RXi#RXr!eX!X!eX#`!eX#g!eX#c!eX!Z!eX!^!eX!_!eX!c!eX~P!wOP#SXQ#SXR#SXS#SXT#SXU#SXW#SXX#SXY#SXZ#SX[#SX]#SX^#SXd#SXe#SXf#SXg#SXh#SXi#SXr#SX#`#SX#g#SX#c#SX!Z#SX!^#SX!_#SX!c#SX~OjwOlZOmPOnfO{ZO!QsO!VZO!WZO!`rO!gZO#TWO#XQO#dXO#eYO!X#SX~P%qOPyOQyORzOSzOT}OU!OOW|OX|OY|OZ|O[|O]|O^xOd{Oe{Of{Og{Oh{Oi{O~OPyOQyORzOSzOd{Oe{Of{Og{Oh{Oi{Or#QX~O#`#QX#g#QX!Z#QX!^#QX!_#QX#c#QX!c#QX~P)xOjROk_OlZOmPOnfOthOxgO{ZO!VZO!WZO!gZO!liO!njO#TWO#XQO#dXO#eYO~OjwOlZOmPO{ZO!QsO!VZO!WZO!gZO#TWO#XQO#`!VO#dXO#eYO~O#f!YO~P,_OV![O~P%qOP#RXQ#RXR#RXS#RXT#RXU#RXW#RXX#RXY#RXZ#RX[#RX]#RX^#RXd#RXe#RXf#RXg#RXh#RXi#RXr#QX~O#`#QX#g#QX!Z#QX!^#QX!_#QX#c#QX!c#QX~P-hOr#QX#`#QX#g#QX!Z#QX!^#QX!_#QX#c#QX!c#QX~OT}OU!OO~P/cOV![O_!]O`!]Oa!]Ob!]Oc!]O~O!X!^O~P/cOr!aO#`!`O#g!`O~Oj!cO!Q!eO!X!OP~Oj!iOlZOmPO{ZO!VZO!WZO!gZO#TWO#XQO#dXO#eYO~OjwOlZOmPO{ZO!VZO!WZO!gZO#TWO#XQO#dXO#eYO~O!X!pO~Oj!tO{!tO#TWO~Oj!uO#TWO~O#X!vO#Z!vO#[!vO#]!vO#^!vO#_!vO~O!SnO#X!xO#ZlO#[mO~OnfO!`!yO~P2POnfO!QsO!`rOrya!Xya#`ya#gya#cya!Zya!^ya!_ya!cya~P2PO#c#VO~P)xO#c#VOr#QX~O!X!^O#c#VOr#QX~O#c#VO~P-hOT}OU!OO#c#VOr#QX~Or!aO~O#f#YO~P,_O!QsO#`#[O#f#^O~O#`#_O#f#YO~P2PO#`#dO~P+WOr!aO#`qa#gqa#cqa!Zqa!^qa!_qa!cqa~Oj!cO!Q!eO!X!OX~O{#jO!V#jO!W#jO#XQO~O!X#lO~O!X#RX~P!wOT}OU!OO!X#UX~OT}OU!OOW|OX|OY|OZ|O[|O]|O~O!X#UX~P8mO!X#mO~O!X#nO~P8mOT}OU!OO!X#nO~Or!ma#`!ma#g!ma!Z!ma!^!ma!_!ma#c!ma!c!ma~P(kOr!ma#`!ma#g!ma!Z!ma!^!ma!_!ma#c!ma!c!ma~OPyOQyORzOSzOd{Oe{Of{Og{Oh{Oi{O~P:eOT}OU!OO~P:eO^xOR!fiS!fid!fie!fif!fig!fih!fii!fir!fi#`!fi#g!fi#c!fi!Z!fi!^!fi!_!fi!c!fi~OP!fiQ!fi~P;}OPyOQyO~P;}OPyOQyOd!fie!fif!fig!fih!fii!fir!fi#`!fi#g!fi#c!fi!Z!fi!^!fi!_!fi!c!fi~OR!fiS!fi~P=jORzOSzO^xO~P=jORzOSzO~P=jOW|OX|OY|OZ|O[|O]|OTuirui#`ui#gui#cui!Xui!Zui!^ui!_ui!cui~OU!OO~P?aOU!OO~P?sOUui~P?aO!QsO#`#[O#f#qO~O#`#_O#f#sO~P2POr!aO#`!pi#g!pi!Z!pi!^!pi!_!pi#c!pi!c!pi~Or!aO#`!oi#g!oi!Z!oi!^!oi!_!oi#c!oi!c!oi~Or!aO!Z![X!^![X!_![X!c![X~O#`#vO!Z#aP!^#aP!_#aP!c#aP~P+WO!Z#zO!^#{O!_#|O~O!Q!eO!X!Oa~O#`$QO~P+WO!Z#zO!^#{O!_$TO~O!QsO#`#[O#f$WO~O#`#_O#f$XO~P2POr!aO#`$YO~O#`#vO!Z#aX!^#aX!_#aX!c#aX~P+WOj$[O~O!X$]O~O!_$^O~O!^#{O!_$^O~Or!aO!Z#zO!^#{O!_$`O~O#`#vO!Z#aP!^#aP!_#aP~P+WO!_$gO!c$fO~O!_$iO~O!_$jO~O!^#{O!_$jO~O!X$lO~O!_$nO~O!_$oO~O!^#{O!_$oO~O!Z#zO!^#{O!_$oO~O!_$sO!c$fO~Ox$uO!X$vO~O!_$sO~O!_$wO~O!_$yO~O!^#{O!_$yO~O!_$|O~O!_%PO~Ox$uO~O!X%QO~O{!g~",
goto: "5O#cPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP#dP#zP$`%W#dP&[&tP't'z(k(nP(tP)s)sPPP)wP*T*mPPP+T+gP+k+q,VP,y-u#z#zP#zP#z#z.s.y/V/_/e/o/u/|0S0Y0dPPP0n0r1f3QP4QP4WP4^PPPPPP4b4hr`Oe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QR!QWu`OWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%Qr^Oe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QQ!TWS!jg$uQ!ohQ!sjQ#R!OR#T}xSOWeg![!]!^!a!p#d#l#m#n#x$Q$]$l$u$v%QxZRSYhjsvxyz{|}!O!W!Z!i#Z#`#rQ!tkR!ultTOWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QT!lg$utROWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QxwRSYhjsvxyz{|}!O!W!Z!i#Z#`#rT!ig$uXtRSv!ir`Oe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QWrRSv!iQ!QWR!ysR!hfX!ff!d!g#i!rZORSWYeghjsvxyz{|}!O!W!Z![!]!^!a!i!p#Z#`#d#l#m#n#r#x$Q$]$l$u$v%QR#j!eTnQpQ$O#eQ$V#oQ$b$PR$q$cQ#e!^Q#o!pQ$R#mQ$S#nQ$m$]Q$x$lQ%O$vR%R%QQ#}#eQ$U#oQ$_$OQ$a$PQ$k$VS$p$b$cR$z$qWtRSv!iQ!XYQ#X!WX#[!X#X#]#pT$d$R$eQ$h$RR$t$euTOWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QrVOe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QQ!PWQ!rjQ!{{Q!}yR#Pz!sZORSWYeghjsvxyz{|}!O!W!Z![!]!^!a!i!p#Z#`#d#l#m#n#r#x$Q$]$l$u$v%Q|ZRSYghjsvxyz{|}!O!W!Z!i#Z#`#r$uu[OWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QQeOR!be^!_b!U#a#b#c#w$PR#f!_UvRS!iR!zvQ!dfR#h!dQ!gfQ#i!dT#k!g#iQpQR!wpS#x#d$QR$Z#xQ$e$RR$r$eQ!WYR#W!WQ#]!XQ#p#XT#t#]#pQ#`!ZQ#r#ZT#u#`#rTdOeSbOeQ!UWQ#a![Q#b!]`#c!^!p#m#n$]$l$v%QQ#g!aU#w#d#x$QR$P#ltUOWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QWrRSv!iQ!ZYS!kg$uQ!nhQ!qjQ!ysQ!{xQ!|yQ#OzQ#Q{Q#R|Q#S}Q#U!OQ#Z!WX#_!Z#Z#`#rr]Oe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%Q|wRSYghjsvxyz{|}!O!W!Z!i#Z#`#r$uR!SWQ!mgR$}$uXuRSv!iToQpQ#y#dR$c$QraOe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QR!RW", goto: "5O#cPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP#dP#zP$`%W#dP&[&tP't'z(k(nP(tP)s)sPPP)wP*T*mPPP+T+gP+k+q,VP,y-u#z#zP#zP#z#z.s.y/V/_/e/o/u/|0S0Y0dPPP0n0r1f3QP4QP4WP4^PPPPPP4b4hr`Oe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QR!QWu`OWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%Qr^Oe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QQ!TWS!jg$uQ!ohQ!sjQ#R!OR#T}xSOWeg![!]!^!a!p#d#l#m#n#x$Q$]$l$u$v%QxZRSYhjsvxyz{|}!O!W!Z!i#Z#`#rQ!tkR!ultTOWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QT!lg$utROWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QxwRSYhjsvxyz{|}!O!W!Z!i#Z#`#rT!ig$uXtRSv!ir`Oe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QWrRSv!iQ!QWR!ysR!hfX!ff!d!g#i!rZORSWYeghjsvxyz{|}!O!W!Z![!]!^!a!i!p#Z#`#d#l#m#n#r#x$Q$]$l$u$v%QR#j!eTnQpQ$O#eQ$V#oQ$b$PR$q$cQ#e!^Q#o!pQ$R#mQ$S#nQ$m$]Q$x$lQ%O$vR%R%QQ#}#eQ$U#oQ$_$OQ$a$PQ$k$VS$p$b$cR$z$qWtRSv!iQ!XYQ#X!WX#[!X#X#]#pT$d$R$eQ$h$RR$t$euTOWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QrVOe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QQ!PWQ!rjQ!{yQ#OzR#Q{!sZORSWYeghjsvxyz{|}!O!W!Z![!]!^!a!i!p#Z#`#d#l#m#n#r#x$Q$]$l$u$v%Q|ZRSYghjsvxyz{|}!O!W!Z!i#Z#`#r$uu[OWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QQeOR!be^!_b!U#a#b#c#w$PR#f!_UvRS!iR!zvQ!dfR#h!dQ!gfQ#i!dT#k!g#iQpQR!wpS#x#d$QR$Z#xQ$e$RR$r$eQ!WYR#W!WQ#]!XQ#p#XT#t#]#pQ#`!ZQ#r#ZT#u#`#rTdOeSbOeQ!UWQ#a![Q#b!]`#c!^!p#m#n$]$l$v%QQ#g!aU#w#d#x$QR$P#ltUOWe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QWrRSv!iQ!ZYS!kg$uQ!nhQ!qjQ!ysQ!{xQ!|yQ!}zQ#P{Q#R|Q#S}Q#U!OQ#Z!WX#_!Z#Z#`#rr]Oe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%Q|wRSYghjsvxyz{|}!O!W!Z!i#Z#`#r$uR!SWQ!mgR$}$uXuRSv!iToQpQ#y#dR$c$QraOe![!]!^!a!p#d#l#m#n#x$Q$]$l$v%QR!RW",
nodeNames: "⚠ Star Slash Plus Minus And Or Eq EqEq Neq Lt Lte Gt Gte Modulo PlusEq MinusEq StarEq SlashEq ModuloEq Band Bor Bxor Shl Shr Ushr Identifier AssignableIdentifier Word IdentifierBeforeDot Do Comment Program PipeExpr operator WhileExpr keyword ConditionalOp ParenExpr IfExpr keyword FunctionCall DotGet Number PositionalArg FunctionDef Params NamedParam NamedArgPrefix String StringFragment Interpolation EscapeSeq Boolean Null colon CatchExpr keyword Block FinallyExpr keyword keyword Underscore NamedArg ElseIfExpr keyword ElseExpr FunctionCallOrIdentifier BinOp Regex Dict Array FunctionCallWithBlock TryExpr keyword Throw keyword CompoundAssign Assign", nodeNames: "⚠ Star Slash Plus Minus And Or Eq EqEq Neq Lt Lte Gt Gte Modulo PlusEq MinusEq StarEq SlashEq ModuloEq Band Bor Bxor Shl Shr Ushr Identifier AssignableIdentifier Word IdentifierBeforeDot Do Comment Program PipeExpr operator WhileExpr keyword ConditionalOp ParenExpr IfExpr keyword FunctionCall DotGet Number PositionalArg FunctionDef Params NamedParam NamedArgPrefix String StringFragment Interpolation EscapeSeq Boolean Null colon CatchExpr keyword Block FinallyExpr keyword keyword Underscore NamedArg ElseIfExpr keyword ElseExpr FunctionCallOrIdentifier BinOp Regex Dict Array FunctionCallWithBlock TryExpr keyword Throw keyword CompoundAssign Assign",
maxTerm: 115, maxTerm: 115,
context: trackScope, context: trackScope,
@ -23,5 +23,5 @@ export const parser = LRParser.deserialize({
tokenizers: [operatorTokenizer, 1, 2, 3, tokenizer, new LocalTokenGroup("[~RP!O!PU~ZO#V~~", 11)], tokenizers: [operatorTokenizer, 1, 2, 3, tokenizer, new LocalTokenGroup("[~RP!O!PU~ZO#V~~", 11)],
topRules: {"Program":[0,32]}, topRules: {"Program":[0,32]},
specialized: [{term: 26, get: (value: any, stack: any) => (specializeKeyword(value, stack) << 1), external: specializeKeyword},{term: 26, get: (value: keyof typeof spec_Identifier) => spec_Identifier[value] || -1}], specialized: [{term: 26, get: (value: any, stack: any) => (specializeKeyword(value, stack) << 1), external: specializeKeyword},{term: 26, get: (value: keyof typeof spec_Identifier) => spec_Identifier[value] || -1}],
tokenPrec: 1863 tokenPrec: 1834
}) })