diff --git a/bun.lock b/bun.lock index a89800c..1f007bf 100644 --- a/bun.lock +++ b/bun.lock @@ -62,11 +62,11 @@ "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=="], - "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=="], diff --git a/package.json b/package.json index 472b4af..f167e90 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "repl": "bun generate-parser && bun bin/repl", "update-reef": "rm -rf ~/.bun/install/cache/ && rm bun.lock && bun update reefvm", "cli:install": "ln -s \"$(pwd)/bin/shrimp\" ~/.bun/bin/shrimp", - "cli:remove": "rm ~/.bun/bin/shrimp", + "cli:remove": "rm ~/.bun/bin/shrimp" }, "dependencies": { "@codemirror/view": "^6.38.3", @@ -31,4 +31,4 @@ "singleQuote": true, "printWidth": 100 } -} +} \ No newline at end of file diff --git a/src/parser/shrimp.grammar b/src/parser/shrimp.grammar index a4e22b0..64dd06f 100644 --- a/src/parser/shrimp.grammar +++ b/src/parser/shrimp.grammar @@ -45,9 +45,9 @@ null { @specialize[@name=Null] } or @left, and @left, comparison @left, - bitwise @left, multiplicative @left, additive @left, + bitwise @left, call } diff --git a/src/parser/shrimp.ts b/src/parser/shrimp.ts index 8a7b29c..842e7c3 100644 --- a/src/parser/shrimp.ts +++ b/src/parser/shrimp.ts @@ -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} export const parser = LRParser.deserialize({ 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<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`<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<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`< (specializeKeyword(value, stack) << 1), external: specializeKeyword},{term: 26, get: (value: keyof typeof spec_Identifier) => spec_Identifier[value] || -1}], - tokenPrec: 1863 + tokenPrec: 1834 })