sidebar-md 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +205 -0
- package/dist/server/annotation-ops.d.ts +104 -0
- package/dist/server/annotation-ops.js +166 -0
- package/dist/server/annotation-ops.js.map +1 -0
- package/dist/server/args.d.ts +20 -0
- package/dist/server/args.js +118 -0
- package/dist/server/args.js.map +1 -0
- package/dist/server/author.d.ts +1 -0
- package/dist/server/author.js +45 -0
- package/dist/server/author.js.map +1 -0
- package/dist/server/cli.d.ts +2 -0
- package/dist/server/cli.js +364 -0
- package/dist/server/cli.js.map +1 -0
- package/dist/server/config/gitignore.d.ts +10 -0
- package/dist/server/config/gitignore.js +53 -0
- package/dist/server/config/gitignore.js.map +1 -0
- package/dist/server/config/index.d.ts +5 -0
- package/dist/server/config/index.js +5 -0
- package/dist/server/config/index.js.map +1 -0
- package/dist/server/config/load.d.ts +21 -0
- package/dist/server/config/load.js +106 -0
- package/dist/server/config/load.js.map +1 -0
- package/dist/server/config/paths.d.ts +9 -0
- package/dist/server/config/paths.js +26 -0
- package/dist/server/config/paths.js.map +1 -0
- package/dist/server/config/schema.d.ts +26 -0
- package/dist/server/config/schema.js +56 -0
- package/dist/server/config/schema.js.map +1 -0
- package/dist/server/config/write.d.ts +29 -0
- package/dist/server/config/write.js +74 -0
- package/dist/server/config/write.js.map +1 -0
- package/dist/server/connection-file.d.ts +22 -0
- package/dist/server/connection-file.js +72 -0
- package/dist/server/connection-file.js.map +1 -0
- package/dist/server/dirty-buffer.d.ts +7 -0
- package/dist/server/dirty-buffer.js +39 -0
- package/dist/server/dirty-buffer.js.map +1 -0
- package/dist/server/files.d.ts +19 -0
- package/dist/server/files.js +112 -0
- package/dist/server/files.js.map +1 -0
- package/dist/server/hash.d.ts +1 -0
- package/dist/server/hash.js +7 -0
- package/dist/server/hash.js.map +1 -0
- package/dist/server/init.d.ts +16 -0
- package/dist/server/init.js +53 -0
- package/dist/server/init.js.map +1 -0
- package/dist/server/log.d.ts +8 -0
- package/dist/server/log.js +19 -0
- package/dist/server/log.js.map +1 -0
- package/dist/server/marker-ids.d.ts +3 -0
- package/dist/server/marker-ids.js +31 -0
- package/dist/server/marker-ids.js.map +1 -0
- package/dist/server/mcp-server.d.ts +22 -0
- package/dist/server/mcp-server.js +469 -0
- package/dist/server/mcp-server.js.map +1 -0
- package/dist/server/mention-ops.d.ts +115 -0
- package/dist/server/mention-ops.js +202 -0
- package/dist/server/mention-ops.js.map +1 -0
- package/dist/server/mention-store.d.ts +123 -0
- package/dist/server/mention-store.js +91 -0
- package/dist/server/mention-store.js.map +1 -0
- package/dist/server/runtime-check.d.ts +1 -0
- package/dist/server/runtime-check.js +10 -0
- package/dist/server/runtime-check.js.map +1 -0
- package/dist/server/server.d.ts +28 -0
- package/dist/server/server.js +736 -0
- package/dist/server/server.js.map +1 -0
- package/dist/server/stdio.d.ts +18 -0
- package/dist/server/stdio.js +144 -0
- package/dist/server/stdio.js.map +1 -0
- package/dist/server/verbs/builtin.d.ts +16 -0
- package/dist/server/verbs/builtin.js +27 -0
- package/dist/server/verbs/builtin.js.map +1 -0
- package/dist/server/verbs/index.d.ts +2 -0
- package/dist/server/verbs/index.js +3 -0
- package/dist/server/verbs/index.js.map +1 -0
- package/dist/server/verbs/load.d.ts +7 -0
- package/dist/server/verbs/load.js +24 -0
- package/dist/server/verbs/load.js.map +1 -0
- package/dist/server/workspace.d.ts +19 -0
- package/dist/server/workspace.js +138 -0
- package/dist/server/workspace.js.map +1 -0
- package/dist/shared/backoff.d.ts +1 -0
- package/dist/shared/backoff.js +12 -0
- package/dist/shared/backoff.js.map +1 -0
- package/dist/shared/markers.d.ts +136 -0
- package/dist/shared/markers.js +497 -0
- package/dist/shared/markers.js.map +1 -0
- package/dist/shared/protocol.d.ts +201 -0
- package/dist/shared/protocol.js +4 -0
- package/dist/shared/protocol.js.map +1 -0
- package/dist/static/assets/apl-B4CMkyY2.js +2 -0
- package/dist/static/assets/apl-B4CMkyY2.js.map +1 -0
- package/dist/static/assets/asciiarmor-Df11BRmG.js +2 -0
- package/dist/static/assets/asciiarmor-Df11BRmG.js.map +1 -0
- package/dist/static/assets/asn1-EdZsLKOL.js +2 -0
- package/dist/static/assets/asn1-EdZsLKOL.js.map +1 -0
- package/dist/static/assets/asterisk-B-8jnY81.js +2 -0
- package/dist/static/assets/asterisk-B-8jnY81.js.map +1 -0
- package/dist/static/assets/brainfuck-C4LP7Hcl.js +2 -0
- package/dist/static/assets/brainfuck-C4LP7Hcl.js.map +1 -0
- package/dist/static/assets/clike-B9uivgTg.js +2 -0
- package/dist/static/assets/clike-B9uivgTg.js.map +1 -0
- package/dist/static/assets/clojure-BMjYHr_A.js +2 -0
- package/dist/static/assets/clojure-BMjYHr_A.js.map +1 -0
- package/dist/static/assets/cmake-BQqOBYOt.js +2 -0
- package/dist/static/assets/cmake-BQqOBYOt.js.map +1 -0
- package/dist/static/assets/cobol-CWcv1MsR.js +2 -0
- package/dist/static/assets/cobol-CWcv1MsR.js.map +1 -0
- package/dist/static/assets/coffeescript-S37ZYGWr.js +2 -0
- package/dist/static/assets/coffeescript-S37ZYGWr.js.map +1 -0
- package/dist/static/assets/commonlisp-DBKNyK5s.js +2 -0
- package/dist/static/assets/commonlisp-DBKNyK5s.js.map +1 -0
- package/dist/static/assets/crystal-SjHAIU92.js +2 -0
- package/dist/static/assets/crystal-SjHAIU92.js.map +1 -0
- package/dist/static/assets/css-BnMrqG3P.js +2 -0
- package/dist/static/assets/css-BnMrqG3P.js.map +1 -0
- package/dist/static/assets/cypher-C_CwsFkJ.js +2 -0
- package/dist/static/assets/cypher-C_CwsFkJ.js.map +1 -0
- package/dist/static/assets/d-pRatUO7H.js +2 -0
- package/dist/static/assets/d-pRatUO7H.js.map +1 -0
- package/dist/static/assets/diff-DbItnlRl.js +2 -0
- package/dist/static/assets/diff-DbItnlRl.js.map +1 -0
- package/dist/static/assets/dockerfile-BKs6k2Af.js +2 -0
- package/dist/static/assets/dockerfile-BKs6k2Af.js.map +1 -0
- package/dist/static/assets/dtd-DF_7sFjM.js +2 -0
- package/dist/static/assets/dtd-DF_7sFjM.js.map +1 -0
- package/dist/static/assets/dylan-DwRh75JA.js +2 -0
- package/dist/static/assets/dylan-DwRh75JA.js.map +1 -0
- package/dist/static/assets/ebnf-CDyGwa7X.js +2 -0
- package/dist/static/assets/ebnf-CDyGwa7X.js.map +1 -0
- package/dist/static/assets/ecl-Cabwm37j.js +2 -0
- package/dist/static/assets/ecl-Cabwm37j.js.map +1 -0
- package/dist/static/assets/eiffel-CnydiIhH.js +2 -0
- package/dist/static/assets/eiffel-CnydiIhH.js.map +1 -0
- package/dist/static/assets/elm-vLlmbW-K.js +2 -0
- package/dist/static/assets/elm-vLlmbW-K.js.map +1 -0
- package/dist/static/assets/erlang-BNw1qcRV.js +2 -0
- package/dist/static/assets/erlang-BNw1qcRV.js.map +1 -0
- package/dist/static/assets/factor-kuTfRLto.js +2 -0
- package/dist/static/assets/factor-kuTfRLto.js.map +1 -0
- package/dist/static/assets/fcl-Kvtd6kyn.js +2 -0
- package/dist/static/assets/fcl-Kvtd6kyn.js.map +1 -0
- package/dist/static/assets/forth-Ffai-XNe.js +2 -0
- package/dist/static/assets/forth-Ffai-XNe.js.map +1 -0
- package/dist/static/assets/fortran-DYz_wnZ1.js +2 -0
- package/dist/static/assets/fortran-DYz_wnZ1.js.map +1 -0
- package/dist/static/assets/gas-Bneqetm1.js +2 -0
- package/dist/static/assets/gas-Bneqetm1.js.map +1 -0
- package/dist/static/assets/gherkin-heZmZLOM.js +2 -0
- package/dist/static/assets/gherkin-heZmZLOM.js.map +1 -0
- package/dist/static/assets/groovy-D9Dt4D0W.js +2 -0
- package/dist/static/assets/groovy-D9Dt4D0W.js.map +1 -0
- package/dist/static/assets/haskell-BWDZoCOh.js +2 -0
- package/dist/static/assets/haskell-BWDZoCOh.js.map +1 -0
- package/dist/static/assets/haxe-H-WmDvRZ.js +2 -0
- package/dist/static/assets/haxe-H-WmDvRZ.js.map +1 -0
- package/dist/static/assets/http-DBlCnlav.js +2 -0
- package/dist/static/assets/http-DBlCnlav.js.map +1 -0
- package/dist/static/assets/idl-BEugSyMb.js +2 -0
- package/dist/static/assets/idl-BEugSyMb.js.map +1 -0
- package/dist/static/assets/index-76gOt96S.js +2 -0
- package/dist/static/assets/index-76gOt96S.js.map +1 -0
- package/dist/static/assets/index-BOQmpwuG.js +2 -0
- package/dist/static/assets/index-BOQmpwuG.js.map +1 -0
- package/dist/static/assets/index-BRr3mRH4.js +2 -0
- package/dist/static/assets/index-BRr3mRH4.js.map +1 -0
- package/dist/static/assets/index-B_hEIVV3.js +2 -0
- package/dist/static/assets/index-B_hEIVV3.js.map +1 -0
- package/dist/static/assets/index-Be89YI4R.js +2 -0
- package/dist/static/assets/index-Be89YI4R.js.map +1 -0
- package/dist/static/assets/index-BiZobR_v.js +4 -0
- package/dist/static/assets/index-BiZobR_v.js.map +1 -0
- package/dist/static/assets/index-Brumy5_9.js +8 -0
- package/dist/static/assets/index-Brumy5_9.js.map +1 -0
- package/dist/static/assets/index-BsJm14K9.js +2 -0
- package/dist/static/assets/index-BsJm14K9.js.map +1 -0
- package/dist/static/assets/index-CTGcuUyU.js +2 -0
- package/dist/static/assets/index-CTGcuUyU.js.map +1 -0
- package/dist/static/assets/index-Cvxvsst9.js +2 -0
- package/dist/static/assets/index-Cvxvsst9.js.map +1 -0
- package/dist/static/assets/index-D6ORLFAQ.js +2 -0
- package/dist/static/assets/index-D6ORLFAQ.js.map +1 -0
- package/dist/static/assets/index-DEhB0VAu.js +3 -0
- package/dist/static/assets/index-DEhB0VAu.js.map +1 -0
- package/dist/static/assets/index-DTNng05d.js +2 -0
- package/dist/static/assets/index-DTNng05d.js.map +1 -0
- package/dist/static/assets/index-DUOyyduC.js +2 -0
- package/dist/static/assets/index-DUOyyduC.js.map +1 -0
- package/dist/static/assets/index-DaO1DHpW.js +101 -0
- package/dist/static/assets/index-DaO1DHpW.js.map +1 -0
- package/dist/static/assets/index-DjRybwG9.js +2 -0
- package/dist/static/assets/index-DjRybwG9.js.map +1 -0
- package/dist/static/assets/index-MU4h_pJS.js +2 -0
- package/dist/static/assets/index-MU4h_pJS.js.map +1 -0
- package/dist/static/assets/index-PYTD2O0j.js +2 -0
- package/dist/static/assets/index-PYTD2O0j.js.map +1 -0
- package/dist/static/assets/index-SfxJH5Y4.css +1 -0
- package/dist/static/assets/javascript-qCveANmP.js +2 -0
- package/dist/static/assets/javascript-qCveANmP.js.map +1 -0
- package/dist/static/assets/julia-DuME0IfC.js +2 -0
- package/dist/static/assets/julia-DuME0IfC.js.map +1 -0
- package/dist/static/assets/livescript-BwQOo05w.js +2 -0
- package/dist/static/assets/livescript-BwQOo05w.js.map +1 -0
- package/dist/static/assets/lua-BgMRiT3U.js +2 -0
- package/dist/static/assets/lua-BgMRiT3U.js.map +1 -0
- package/dist/static/assets/mathematica-DTrFuWx2.js +2 -0
- package/dist/static/assets/mathematica-DTrFuWx2.js.map +1 -0
- package/dist/static/assets/mbox-CNhZ1qSd.js +2 -0
- package/dist/static/assets/mbox-CNhZ1qSd.js.map +1 -0
- package/dist/static/assets/mirc-CjQqDB4T.js +2 -0
- package/dist/static/assets/mirc-CjQqDB4T.js.map +1 -0
- package/dist/static/assets/mllike-CXdrOF99.js +2 -0
- package/dist/static/assets/mllike-CXdrOF99.js.map +1 -0
- package/dist/static/assets/modelica-Dc1JOy9r.js +2 -0
- package/dist/static/assets/modelica-Dc1JOy9r.js.map +1 -0
- package/dist/static/assets/mscgen-BA5vi2Kp.js +2 -0
- package/dist/static/assets/mscgen-BA5vi2Kp.js.map +1 -0
- package/dist/static/assets/mumps-BT43cFF4.js +2 -0
- package/dist/static/assets/mumps-BT43cFF4.js.map +1 -0
- package/dist/static/assets/nginx-DdIZxoE0.js +2 -0
- package/dist/static/assets/nginx-DdIZxoE0.js.map +1 -0
- package/dist/static/assets/nsis-LdVXkNf5.js +2 -0
- package/dist/static/assets/nsis-LdVXkNf5.js.map +1 -0
- package/dist/static/assets/ntriples-BfvgReVJ.js +2 -0
- package/dist/static/assets/ntriples-BfvgReVJ.js.map +1 -0
- package/dist/static/assets/octave-Ck1zUtKM.js +2 -0
- package/dist/static/assets/octave-Ck1zUtKM.js.map +1 -0
- package/dist/static/assets/oz-BzwKVEFT.js +2 -0
- package/dist/static/assets/oz-BzwKVEFT.js.map +1 -0
- package/dist/static/assets/pascal--L3eBynH.js +2 -0
- package/dist/static/assets/pascal--L3eBynH.js.map +1 -0
- package/dist/static/assets/perl-CdXCOZ3F.js +2 -0
- package/dist/static/assets/perl-CdXCOZ3F.js.map +1 -0
- package/dist/static/assets/pig-CevX1Tat.js +2 -0
- package/dist/static/assets/pig-CevX1Tat.js.map +1 -0
- package/dist/static/assets/powershell-CFHJl5sT.js +2 -0
- package/dist/static/assets/powershell-CFHJl5sT.js.map +1 -0
- package/dist/static/assets/properties-C78fOPTZ.js +2 -0
- package/dist/static/assets/properties-C78fOPTZ.js.map +1 -0
- package/dist/static/assets/protobuf-ChK-085T.js +2 -0
- package/dist/static/assets/protobuf-ChK-085T.js.map +1 -0
- package/dist/static/assets/pug-DukmZTjD.js +2 -0
- package/dist/static/assets/pug-DukmZTjD.js.map +1 -0
- package/dist/static/assets/puppet-DMA9R1ak.js +2 -0
- package/dist/static/assets/puppet-DMA9R1ak.js.map +1 -0
- package/dist/static/assets/python-BuPzkPfP.js +2 -0
- package/dist/static/assets/python-BuPzkPfP.js.map +1 -0
- package/dist/static/assets/q-pXgVlZs6.js +2 -0
- package/dist/static/assets/q-pXgVlZs6.js.map +1 -0
- package/dist/static/assets/r-DUYO_cvP.js +2 -0
- package/dist/static/assets/r-DUYO_cvP.js.map +1 -0
- package/dist/static/assets/rpm-CTu-6PCP.js +2 -0
- package/dist/static/assets/rpm-CTu-6PCP.js.map +1 -0
- package/dist/static/assets/ruby-B2Rjki9n.js +2 -0
- package/dist/static/assets/ruby-B2Rjki9n.js.map +1 -0
- package/dist/static/assets/sas-B4kiWyti.js +2 -0
- package/dist/static/assets/sas-B4kiWyti.js.map +1 -0
- package/dist/static/assets/scheme-C41bIUwD.js +2 -0
- package/dist/static/assets/scheme-C41bIUwD.js.map +1 -0
- package/dist/static/assets/shell-CjFT_Tl9.js +2 -0
- package/dist/static/assets/shell-CjFT_Tl9.js.map +1 -0
- package/dist/static/assets/sieve-C3Gn_uJK.js +2 -0
- package/dist/static/assets/sieve-C3Gn_uJK.js.map +1 -0
- package/dist/static/assets/simple-mode-GW_nhZxv.js +2 -0
- package/dist/static/assets/simple-mode-GW_nhZxv.js.map +1 -0
- package/dist/static/assets/smalltalk-CnHTOXQT.js +2 -0
- package/dist/static/assets/smalltalk-CnHTOXQT.js.map +1 -0
- package/dist/static/assets/solr-DehyRSwq.js +2 -0
- package/dist/static/assets/solr-DehyRSwq.js.map +1 -0
- package/dist/static/assets/sparql-DkYu6x3z.js +2 -0
- package/dist/static/assets/sparql-DkYu6x3z.js.map +1 -0
- package/dist/static/assets/spreadsheet-BCZA_wO0.js +2 -0
- package/dist/static/assets/spreadsheet-BCZA_wO0.js.map +1 -0
- package/dist/static/assets/sql-D0XecflT.js +2 -0
- package/dist/static/assets/sql-D0XecflT.js.map +1 -0
- package/dist/static/assets/stex-C3f8Ysf7.js +2 -0
- package/dist/static/assets/stex-C3f8Ysf7.js.map +1 -0
- package/dist/static/assets/stylus-B533Al4x.js +2 -0
- package/dist/static/assets/stylus-B533Al4x.js.map +1 -0
- package/dist/static/assets/swift-BzpIVaGY.js +2 -0
- package/dist/static/assets/swift-BzpIVaGY.js.map +1 -0
- package/dist/static/assets/tcl-DVfN8rqt.js +2 -0
- package/dist/static/assets/tcl-DVfN8rqt.js.map +1 -0
- package/dist/static/assets/textile-CnDTJFAw.js +2 -0
- package/dist/static/assets/textile-CnDTJFAw.js.map +1 -0
- package/dist/static/assets/tiddlywiki-DO-Gjzrf.js +2 -0
- package/dist/static/assets/tiddlywiki-DO-Gjzrf.js.map +1 -0
- package/dist/static/assets/tiki-DGYXhP31.js +2 -0
- package/dist/static/assets/tiki-DGYXhP31.js.map +1 -0
- package/dist/static/assets/toml-Bm5Em-hy.js +2 -0
- package/dist/static/assets/toml-Bm5Em-hy.js.map +1 -0
- package/dist/static/assets/troff-wAsdV37c.js +2 -0
- package/dist/static/assets/troff-wAsdV37c.js.map +1 -0
- package/dist/static/assets/ttcn-CfJYG6tj.js +2 -0
- package/dist/static/assets/ttcn-CfJYG6tj.js.map +1 -0
- package/dist/static/assets/ttcn-cfg-B9xdYoR4.js +2 -0
- package/dist/static/assets/ttcn-cfg-B9xdYoR4.js.map +1 -0
- package/dist/static/assets/turtle-B1tBg_DP.js +2 -0
- package/dist/static/assets/turtle-B1tBg_DP.js.map +1 -0
- package/dist/static/assets/vb-CmGdzxic.js +2 -0
- package/dist/static/assets/vb-CmGdzxic.js.map +1 -0
- package/dist/static/assets/vbscript-BuJXcnF6.js +2 -0
- package/dist/static/assets/vbscript-BuJXcnF6.js.map +1 -0
- package/dist/static/assets/velocity-D8B20fx6.js +2 -0
- package/dist/static/assets/velocity-D8B20fx6.js.map +1 -0
- package/dist/static/assets/verilog-C6RDOZhf.js +2 -0
- package/dist/static/assets/verilog-C6RDOZhf.js.map +1 -0
- package/dist/static/assets/vhdl-lSbBsy5d.js +2 -0
- package/dist/static/assets/vhdl-lSbBsy5d.js.map +1 -0
- package/dist/static/assets/webidl-ZXfAyPTL.js +2 -0
- package/dist/static/assets/webidl-ZXfAyPTL.js.map +1 -0
- package/dist/static/assets/xquery-CQfU5ijd.js +2 -0
- package/dist/static/assets/xquery-CQfU5ijd.js.map +1 -0
- package/dist/static/assets/yacas-BJ4BC0dw.js +2 -0
- package/dist/static/assets/yacas-BJ4BC0dw.js.map +1 -0
- package/dist/static/assets/z80-Hz9HOZM7.js +2 -0
- package/dist/static/assets/z80-Hz9HOZM7.js.map +1 -0
- package/dist/static/index.html +14 -0
- package/package.json +89 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ttcn-cfg-B9xdYoR4.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/ttcn-cfg.js"],"sourcesContent":["function words(str) {\n var obj = {}, words = str.split(\" \");\n for (var i = 0; i < words.length; ++i)\n obj[words[i]] = true;\n return obj;\n}\n\nconst parserConfig = {\n name: \"ttcn-cfg\",\n keywords: words(\"Yes No LogFile FileMask ConsoleMask AppendFile\" +\n \" TimeStampFormat LogEventTypes SourceInfoFormat\" +\n \" LogEntityName LogSourceInfo DiskFullAction\" +\n \" LogFileNumber LogFileSize MatchingHints Detailed\" +\n \" Compact SubCategories Stack Single None Seconds\" +\n \" DateTime Time Stop Error Retry Delete TCPPort KillTimer\" +\n \" NumHCs UnixSocketsEnabled LocalAddress\"),\n fileNCtrlMaskOptions: words(\"TTCN_EXECUTOR TTCN_ERROR TTCN_WARNING\" +\n \" TTCN_PORTEVENT TTCN_TIMEROP TTCN_VERDICTOP\" +\n \" TTCN_DEFAULTOP TTCN_TESTCASE TTCN_ACTION\" +\n \" TTCN_USER TTCN_FUNCTION TTCN_STATISTICS\" +\n \" TTCN_PARALLEL TTCN_MATCHING TTCN_DEBUG\" +\n \" EXECUTOR ERROR WARNING PORTEVENT TIMEROP\" +\n \" VERDICTOP DEFAULTOP TESTCASE ACTION USER\" +\n \" FUNCTION STATISTICS PARALLEL MATCHING DEBUG\" +\n \" LOG_ALL LOG_NOTHING ACTION_UNQUALIFIED\" +\n \" DEBUG_ENCDEC DEBUG_TESTPORT\" +\n \" DEBUG_UNQUALIFIED DEFAULTOP_ACTIVATE\" +\n \" DEFAULTOP_DEACTIVATE DEFAULTOP_EXIT\" +\n \" DEFAULTOP_UNQUALIFIED ERROR_UNQUALIFIED\" +\n \" EXECUTOR_COMPONENT EXECUTOR_CONFIGDATA\" +\n \" EXECUTOR_EXTCOMMAND EXECUTOR_LOGOPTIONS\" +\n \" EXECUTOR_RUNTIME EXECUTOR_UNQUALIFIED\" +\n \" FUNCTION_RND FUNCTION_UNQUALIFIED\" +\n \" MATCHING_DONE MATCHING_MCSUCCESS\" +\n \" MATCHING_MCUNSUCC MATCHING_MMSUCCESS\" +\n \" MATCHING_MMUNSUCC MATCHING_PCSUCCESS\" +\n \" MATCHING_PCUNSUCC MATCHING_PMSUCCESS\" +\n \" MATCHING_PMUNSUCC MATCHING_PROBLEM\" +\n \" MATCHING_TIMEOUT MATCHING_UNQUALIFIED\" +\n \" PARALLEL_PORTCONN PARALLEL_PORTMAP\" +\n \" PARALLEL_PTC PARALLEL_UNQUALIFIED\" +\n \" PORTEVENT_DUALRECV PORTEVENT_DUALSEND\" +\n \" PORTEVENT_MCRECV PORTEVENT_MCSEND\" +\n \" PORTEVENT_MMRECV PORTEVENT_MMSEND\" +\n \" PORTEVENT_MQUEUE PORTEVENT_PCIN\" +\n \" PORTEVENT_PCOUT PORTEVENT_PMIN\" +\n \" PORTEVENT_PMOUT PORTEVENT_PQUEUE\" +\n \" PORTEVENT_STATE PORTEVENT_UNQUALIFIED\" +\n \" STATISTICS_UNQUALIFIED STATISTICS_VERDICT\" +\n \" TESTCASE_FINISH TESTCASE_START\" +\n \" TESTCASE_UNQUALIFIED TIMEROP_GUARD\" +\n \" TIMEROP_READ TIMEROP_START TIMEROP_STOP\" +\n \" TIMEROP_TIMEOUT TIMEROP_UNQUALIFIED\" +\n \" USER_UNQUALIFIED VERDICTOP_FINAL\" +\n \" VERDICTOP_GETVERDICT VERDICTOP_SETVERDICT\" +\n \" VERDICTOP_UNQUALIFIED WARNING_UNQUALIFIED\"),\n externalCommands: words(\"BeginControlPart EndControlPart BeginTestCase\" +\n \" EndTestCase\"),\n multiLineStrings: true\n}\n\nvar keywords = parserConfig.keywords,\n fileNCtrlMaskOptions = parserConfig.fileNCtrlMaskOptions,\n externalCommands = parserConfig.externalCommands,\n multiLineStrings = parserConfig.multiLineStrings,\n indentStatements = parserConfig.indentStatements !== false;\nvar isOperatorChar = /[\\|]/;\nvar curPunc;\n\nfunction tokenBase(stream, state) {\n var ch = stream.next();\n if (ch == '\"' || ch == \"'\") {\n state.tokenize = tokenString(ch);\n return state.tokenize(stream, state);\n }\n if (/[:=]/.test(ch)) {\n curPunc = ch;\n return \"punctuation\";\n }\n if (ch == \"#\"){\n stream.skipToEnd();\n return \"comment\";\n }\n if (/\\d/.test(ch)) {\n stream.eatWhile(/[\\w\\.]/);\n return \"number\";\n }\n if (isOperatorChar.test(ch)) {\n stream.eatWhile(isOperatorChar);\n return \"operator\";\n }\n if (ch == \"[\"){\n stream.eatWhile(/[\\w_\\]]/);\n return \"number\";\n }\n\n stream.eatWhile(/[\\w\\$_]/);\n var cur = stream.current();\n if (keywords.propertyIsEnumerable(cur)) return \"keyword\";\n if (fileNCtrlMaskOptions.propertyIsEnumerable(cur))\n return \"atom\";\n if (externalCommands.propertyIsEnumerable(cur)) return \"deleted\";\n\n return \"variable\";\n}\n\nfunction tokenString(quote) {\n return function(stream, state) {\n var escaped = false, next, end = false;\n while ((next = stream.next()) != null) {\n if (next == quote && !escaped){\n var afterNext = stream.peek();\n //look if the character if the quote is like the B in '10100010'B\n if (afterNext){\n afterNext = afterNext.toLowerCase();\n if(afterNext == \"b\" || afterNext == \"h\" || afterNext == \"o\")\n stream.next();\n }\n end = true; break;\n }\n escaped = !escaped && next == \"\\\\\";\n }\n if (end || !(escaped || multiLineStrings))\n state.tokenize = null;\n return \"string\";\n };\n}\n\nfunction Context(indented, column, type, align, prev) {\n this.indented = indented;\n this.column = column;\n this.type = type;\n this.align = align;\n this.prev = prev;\n}\nfunction pushContext(state, col, type) {\n var indent = state.indented;\n if (state.context && state.context.type == \"statement\")\n indent = state.context.indented;\n return state.context = new Context(indent, col, type, null, state.context);\n}\nfunction popContext(state) {\n var t = state.context.type;\n if (t == \")\" || t == \"]\" || t == \"}\")\n state.indented = state.context.indented;\n return state.context = state.context.prev;\n}\n\n//Interface\nexport const ttcnCfg = {\n name: \"ttcn\",\n startState: function() {\n return {\n tokenize: null,\n context: new Context(0, 0, \"top\", false),\n indented: 0,\n startOfLine: true\n };\n },\n\n token: function(stream, state) {\n var ctx = state.context;\n if (stream.sol()) {\n if (ctx.align == null) ctx.align = false;\n state.indented = stream.indentation();\n state.startOfLine = true;\n }\n if (stream.eatSpace()) return null;\n curPunc = null;\n var style = (state.tokenize || tokenBase)(stream, state);\n if (style == \"comment\") return style;\n if (ctx.align == null) ctx.align = true;\n\n if ((curPunc == \";\" || curPunc == \":\" || curPunc == \",\")\n && ctx.type == \"statement\"){\n popContext(state);\n }\n else if (curPunc == \"{\") pushContext(state, stream.column(), \"}\");\n else if (curPunc == \"[\") pushContext(state, stream.column(), \"]\");\n else if (curPunc == \"(\") pushContext(state, stream.column(), \")\");\n else if (curPunc == \"}\") {\n while (ctx.type == \"statement\") ctx = popContext(state);\n if (ctx.type == \"}\") ctx = popContext(state);\n while (ctx.type == \"statement\") ctx = popContext(state);\n }\n else if (curPunc == ctx.type) popContext(state);\n else if (indentStatements && (((ctx.type == \"}\" || ctx.type == \"top\")\n && curPunc != ';') || (ctx.type == \"statement\"\n && curPunc == \"newstatement\")))\n pushContext(state, stream.column(), \"statement\");\n state.startOfLine = false;\n return style;\n },\n\n languageData: {\n indentOnInput: /^\\s*[{}]$/,\n commentTokens: {line: \"#\"}\n }\n};\n"],"names":["words","str","obj","i","parserConfig","keywords","fileNCtrlMaskOptions","externalCommands","indentStatements","isOperatorChar","curPunc","tokenBase","stream","state","ch","tokenString","cur","quote","escaped","next","end","afterNext","Context","indented","column","type","align","prev","pushContext","col","indent","popContext","t","ttcnCfg","ctx","style"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var r;function p(e){return new RegExp("^(?:"+e.join("|")+")$","i")}p([]);var d=p(["@prefix","@base","a"]),f=/[*+\-<>=&|]/;function x(e,n){var t=e.next();if(r=null,t=="<"&&!e.match(/^[\s\u00a0=]/,!1))return e.match(/^[^\s\u00a0>]*>?/),"atom";if(t=='"'||t=="'")return n.tokenize=v(t),n.tokenize(e,n);if(/[{}\(\),\.;\[\]]/.test(t))return r=t,null;if(t=="#")return e.skipToEnd(),"comment";if(f.test(t))return e.eatWhile(f),null;if(t==":")return"operator";if(e.eatWhile(/[_\w\d]/),e.peek()==":")return"variableName.special";var i=e.current();return d.test(i)?"meta":t>="A"&&t<="Z"?"comment":"keyword";var i=e.current()}function v(e){return function(n,t){for(var i=!1,o;(o=n.next())!=null;){if(o==e&&!i){t.tokenize=x;break}i=!i&&o=="\\"}return"string"}}function l(e,n,t){e.context={prev:e.context,indent:e.indent,col:t,type:n}}function c(e){e.indent=e.context.indent,e.context=e.context.prev}const g={name:"turtle",startState:function(){return{tokenize:x,context:null,indent:0,col:0}},token:function(e,n){if(e.sol()&&(n.context&&n.context.align==null&&(n.context.align=!1),n.indent=e.indentation()),e.eatSpace())return null;var t=n.tokenize(e,n);if(t!="comment"&&n.context&&n.context.align==null&&n.context.type!="pattern"&&(n.context.align=!0),r=="(")l(n,")",e.column());else if(r=="[")l(n,"]",e.column());else if(r=="{")l(n,"}",e.column());else if(/[\]\}\)]/.test(r)){for(;n.context&&n.context.type=="pattern";)c(n);n.context&&r==n.context.type&&c(n)}else r=="."&&n.context&&n.context.type=="pattern"?c(n):/atom|string|variable/.test(t)&&n.context&&(/[\}\]]/.test(n.context.type)?l(n,"pattern",e.column()):n.context.type=="pattern"&&!n.context.align&&(n.context.align=!0,n.context.col=e.column()));return t},indent:function(e,n,t){var i=n&&n.charAt(0),o=e.context;if(/[\]\}]/.test(i))for(;o&&o.type=="pattern";)o=o.prev;var u=o&&i==o.type;return o?o.type=="pattern"?o.col:o.align?o.col+(u?0:1):o.indent+(u?0:t.unit):0},languageData:{commentTokens:{line:"#"}}};export{g as turtle};
|
|
2
|
+
//# sourceMappingURL=turtle-B1tBg_DP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turtle-B1tBg_DP.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/turtle.js"],"sourcesContent":["var curPunc;\n\nfunction wordRegexp(words) {\n return new RegExp(\"^(?:\" + words.join(\"|\") + \")$\", \"i\");\n}\nvar ops = wordRegexp([]);\nvar keywords = wordRegexp([\"@prefix\", \"@base\", \"a\"]);\nvar operatorChars = /[*+\\-<>=&|]/;\n\nfunction tokenBase(stream, state) {\n var ch = stream.next();\n curPunc = null;\n if (ch == \"<\" && !stream.match(/^[\\s\\u00a0=]/, false)) {\n stream.match(/^[^\\s\\u00a0>]*>?/);\n return \"atom\";\n }\n else if (ch == \"\\\"\" || ch == \"'\") {\n state.tokenize = tokenLiteral(ch);\n return state.tokenize(stream, state);\n }\n else if (/[{}\\(\\),\\.;\\[\\]]/.test(ch)) {\n curPunc = ch;\n return null;\n }\n else if (ch == \"#\") {\n stream.skipToEnd();\n return \"comment\";\n }\n else if (operatorChars.test(ch)) {\n stream.eatWhile(operatorChars);\n return null;\n }\n else if (ch == \":\") {\n return \"operator\";\n } else {\n stream.eatWhile(/[_\\w\\d]/);\n if(stream.peek() == \":\") {\n return \"variableName.special\";\n } else {\n var word = stream.current();\n\n if(keywords.test(word)) {\n return \"meta\";\n }\n\n if(ch >= \"A\" && ch <= \"Z\") {\n return \"comment\";\n } else {\n return \"keyword\";\n }\n }\n var word = stream.current();\n if (ops.test(word))\n return null;\n else if (keywords.test(word))\n return \"meta\";\n else\n return \"variable\";\n }\n}\n\nfunction tokenLiteral(quote) {\n return function(stream, state) {\n var escaped = false, ch;\n while ((ch = stream.next()) != null) {\n if (ch == quote && !escaped) {\n state.tokenize = tokenBase;\n break;\n }\n escaped = !escaped && ch == \"\\\\\";\n }\n return \"string\";\n };\n}\n\nfunction pushContext(state, type, col) {\n state.context = {prev: state.context, indent: state.indent, col: col, type: type};\n}\nfunction popContext(state) {\n state.indent = state.context.indent;\n state.context = state.context.prev;\n}\n\nexport const turtle = {\n name: \"turtle\",\n startState: function() {\n return {tokenize: tokenBase,\n context: null,\n indent: 0,\n col: 0};\n },\n\n token: function(stream, state) {\n if (stream.sol()) {\n if (state.context && state.context.align == null) state.context.align = false;\n state.indent = stream.indentation();\n }\n if (stream.eatSpace()) return null;\n var style = state.tokenize(stream, state);\n\n if (style != \"comment\" && state.context && state.context.align == null && state.context.type != \"pattern\") {\n state.context.align = true;\n }\n\n if (curPunc == \"(\") pushContext(state, \")\", stream.column());\n else if (curPunc == \"[\") pushContext(state, \"]\", stream.column());\n else if (curPunc == \"{\") pushContext(state, \"}\", stream.column());\n else if (/[\\]\\}\\)]/.test(curPunc)) {\n while (state.context && state.context.type == \"pattern\") popContext(state);\n if (state.context && curPunc == state.context.type) popContext(state);\n }\n else if (curPunc == \".\" && state.context && state.context.type == \"pattern\") popContext(state);\n else if (/atom|string|variable/.test(style) && state.context) {\n if (/[\\}\\]]/.test(state.context.type))\n pushContext(state, \"pattern\", stream.column());\n else if (state.context.type == \"pattern\" && !state.context.align) {\n state.context.align = true;\n state.context.col = stream.column();\n }\n }\n\n return style;\n },\n\n indent: function(state, textAfter, cx) {\n var firstChar = textAfter && textAfter.charAt(0);\n var context = state.context;\n if (/[\\]\\}]/.test(firstChar))\n while (context && context.type == \"pattern\") context = context.prev;\n\n var closing = context && firstChar == context.type;\n if (!context)\n return 0;\n else if (context.type == \"pattern\")\n return context.col;\n else if (context.align)\n return context.col + (closing ? 0 : 1);\n else\n return context.indent + (closing ? 0 : cx.unit);\n },\n\n languageData: {\n commentTokens: {line: \"#\"}\n }\n};\n"],"names":["curPunc","wordRegexp","words","keywords","operatorChars","tokenBase","stream","state","ch","tokenLiteral","word","quote","escaped","pushContext","type","col","popContext","turtle","style","textAfter","cx","firstChar","context","closing"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var u="error";function o(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var b=new RegExp("^[\\+\\-\\*/%&\\\\|\\^~<>!]"),k=new RegExp("^[\\(\\)\\[\\]\\{\\}@,:`=;\\.]"),x=new RegExp("^((==)|(<>)|(<=)|(>=)|(<>)|(<<)|(>>)|(//)|(\\*\\*))"),m=new RegExp("^((\\+=)|(\\-=)|(\\*=)|(%=)|(/=)|(&=)|(\\|=)|(\\^=))"),I=new RegExp("^((//=)|(>>=)|(<<=)|(\\*\\*=))"),R=new RegExp("^[_A-Za-z][_A-Za-z0-9]*"),a=["class","module","sub","enum","select","while","if","function","get","set","property","try","structure","synclock","using","with"],f=["else","elseif","case","catch","finally"],h=["next","loop"],s=["and","andalso","or","orelse","xor","in","not","is","isnot","like"],O=o(s),v=["#const","#else","#elseif","#end","#if","#region","addhandler","addressof","alias","as","byref","byval","cbool","cbyte","cchar","cdate","cdbl","cdec","cint","clng","cobj","compare","const","continue","csbyte","cshort","csng","cstr","cuint","culng","cushort","declare","default","delegate","dim","directcast","each","erase","error","event","exit","explicit","false","for","friend","gettype","goto","handles","implements","imports","infer","inherits","interface","isfalse","istrue","lib","me","mod","mustinherit","mustoverride","my","mybase","myclass","namespace","narrowing","new","nothing","notinheritable","notoverridable","of","off","on","operator","option","optional","out","overloads","overridable","overrides","paramarray","partial","private","protected","public","raiseevent","readonly","redim","removehandler","resume","return","shadows","shared","static","step","stop","strict","then","throw","to","true","trycast","typeof","until","until","when","widening","withevents","writeonly"],p=["object","boolean","char","string","byte","sbyte","short","ushort","int16","uint16","integer","uinteger","int32","uint32","long","ulong","int64","uint64","decimal","single","double","float","date","datetime","intptr","uintptr"],z=o(v),E=o(p),C='"',S=o(a),g=o(f),y=o(h),w=o(["end"]),T=o(["do"]);function l(e,n){n.currentIndent++}function c(e,n){n.currentIndent--}function d(e,n){if(e.eatSpace())return null;var i=e.peek();if(i==="'")return e.skipToEnd(),"comment";if(e.match(/^((&H)|(&O))?[0-9\.a-f]/i,!1)){var r=!1;if((e.match(/^\d*\.\d+F?/i)||e.match(/^\d+\.\d*F?/)||e.match(/^\.\d+F?/))&&(r=!0),r)return e.eat(/J/i),"number";var t=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?t=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),t=!0):e.match(/^0(?![\dx])/i)&&(t=!0),t)return e.eat(/L/i),"number"}return e.match(C)?(n.tokenize=F(e.current()),n.tokenize(e,n)):e.match(I)||e.match(m)?null:e.match(x)||e.match(b)||e.match(O)?"operator":e.match(k)?null:e.match(T)?(l(e,n),n.doInCurrentLine=!0,"keyword"):e.match(S)?(n.doInCurrentLine?n.doInCurrentLine=!1:l(e,n),"keyword"):e.match(g)?"keyword":e.match(w)?(c(e,n),c(e,n),"keyword"):e.match(y)?(c(e,n),"keyword"):e.match(E)||e.match(z)?"keyword":e.match(R)?"variable":(e.next(),u)}function F(e){var n=e.length==1,i="string";return function(r,t){for(;!r.eol();){if(r.eatWhile(/[^'"]/),r.match(e))return t.tokenize=d,i;r.eat(/['"]/)}return n&&(t.tokenize=d),i}}function K(e,n){var i=n.tokenize(e,n),r=e.current();if(r===".")return i=n.tokenize(e,n),i==="variable"?"variable":u;var t="[({".indexOf(r);return t!==-1&&l(e,n),t="])}".indexOf(r),t!==-1&&c(e,n)?u:i}const L={name:"vb",startState:function(){return{tokenize:d,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1}},token:function(e,n){e.sol()&&(n.currentIndent+=n.nextLineIndent,n.nextLineIndent=0,n.doInCurrentLine=0);var i=K(e,n);return n.lastToken={style:i,content:e.current()},i},indent:function(e,n,i){var r=n.replace(/^\s+|\s+$/g,"");return r.match(y)||r.match(w)||r.match(g)?i.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*i.unit},languageData:{closeBrackets:{brackets:["(","[","{",'"']},commentTokens:{line:"'"},autocomplete:a.concat(f).concat(h).concat(s).concat(v).concat(p)}};export{L as vb};
|
|
2
|
+
//# sourceMappingURL=vb-CmGdzxic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vb-CmGdzxic.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/vb.js"],"sourcesContent":["var ERRORCLASS = 'error';\n\nfunction wordRegexp(words) {\n return new RegExp(\"^((\" + words.join(\")|(\") + \"))\\\\b\", \"i\");\n}\n\nvar singleOperators = new RegExp(\"^[\\\\+\\\\-\\\\*/%&\\\\\\\\|\\\\^~<>!]\");\nvar singleDelimiters = new RegExp('^[\\\\(\\\\)\\\\[\\\\]\\\\{\\\\}@,:`=;\\\\.]');\nvar doubleOperators = new RegExp(\"^((==)|(<>)|(<=)|(>=)|(<>)|(<<)|(>>)|(//)|(\\\\*\\\\*))\");\nvar doubleDelimiters = new RegExp(\"^((\\\\+=)|(\\\\-=)|(\\\\*=)|(%=)|(/=)|(&=)|(\\\\|=)|(\\\\^=))\");\nvar tripleDelimiters = new RegExp(\"^((//=)|(>>=)|(<<=)|(\\\\*\\\\*=))\");\nvar identifiers = new RegExp(\"^[_A-Za-z][_A-Za-z0-9]*\");\n\nvar openingKeywords = ['class','module', 'sub','enum','select','while','if','function', 'get','set','property', 'try', 'structure', 'synclock', 'using', 'with'];\nvar middleKeywords = ['else','elseif','case', 'catch', 'finally'];\nvar endKeywords = ['next','loop'];\n\nvar operatorKeywords = ['and', \"andalso\", 'or', 'orelse', 'xor', 'in', 'not', 'is', 'isnot', 'like'];\nvar wordOperators = wordRegexp(operatorKeywords);\n\nvar commonKeywords = [\"#const\", \"#else\", \"#elseif\", \"#end\", \"#if\", \"#region\", \"addhandler\", \"addressof\", \"alias\", \"as\", \"byref\", \"byval\", \"cbool\", \"cbyte\", \"cchar\", \"cdate\", \"cdbl\", \"cdec\", \"cint\", \"clng\", \"cobj\", \"compare\", \"const\", \"continue\", \"csbyte\", \"cshort\", \"csng\", \"cstr\", \"cuint\", \"culng\", \"cushort\", \"declare\", \"default\", \"delegate\", \"dim\", \"directcast\", \"each\", \"erase\", \"error\", \"event\", \"exit\", \"explicit\", \"false\", \"for\", \"friend\", \"gettype\", \"goto\", \"handles\", \"implements\", \"imports\", \"infer\", \"inherits\", \"interface\", \"isfalse\", \"istrue\", \"lib\", \"me\", \"mod\", \"mustinherit\", \"mustoverride\", \"my\", \"mybase\", \"myclass\", \"namespace\", \"narrowing\", \"new\", \"nothing\", \"notinheritable\", \"notoverridable\", \"of\", \"off\", \"on\", \"operator\", \"option\", \"optional\", \"out\", \"overloads\", \"overridable\", \"overrides\", \"paramarray\", \"partial\", \"private\", \"protected\", \"public\", \"raiseevent\", \"readonly\", \"redim\", \"removehandler\", \"resume\", \"return\", \"shadows\", \"shared\", \"static\", \"step\", \"stop\", \"strict\", \"then\", \"throw\", \"to\", \"true\", \"trycast\", \"typeof\", \"until\", \"until\", \"when\", \"widening\", \"withevents\", \"writeonly\"];\n\nvar commontypes = ['object', 'boolean', 'char', 'string', 'byte', 'sbyte', 'short', 'ushort', 'int16', 'uint16', 'integer', 'uinteger', 'int32', 'uint32', 'long', 'ulong', 'int64', 'uint64', 'decimal', 'single', 'double', 'float', 'date', 'datetime', 'intptr', 'uintptr'];\n\nvar keywords = wordRegexp(commonKeywords);\nvar types = wordRegexp(commontypes);\nvar stringPrefixes = '\"';\n\nvar opening = wordRegexp(openingKeywords);\nvar middle = wordRegexp(middleKeywords);\nvar closing = wordRegexp(endKeywords);\nvar doubleClosing = wordRegexp(['end']);\nvar doOpening = wordRegexp(['do']);\n\nvar indentInfo = null;\n\nfunction indent(_stream, state) {\n state.currentIndent++;\n}\n\nfunction dedent(_stream, state) {\n state.currentIndent--;\n}\n// tokenizers\nfunction tokenBase(stream, state) {\n if (stream.eatSpace()) {\n return null;\n }\n\n var ch = stream.peek();\n\n // Handle Comments\n if (ch === \"'\") {\n stream.skipToEnd();\n return 'comment';\n }\n\n\n // Handle Number Literals\n if (stream.match(/^((&H)|(&O))?[0-9\\.a-f]/i, false)) {\n var floatLiteral = false;\n // Floats\n if (stream.match(/^\\d*\\.\\d+F?/i)) { floatLiteral = true; }\n else if (stream.match(/^\\d+\\.\\d*F?/)) { floatLiteral = true; }\n else if (stream.match(/^\\.\\d+F?/)) { floatLiteral = true; }\n\n if (floatLiteral) {\n // Float literals may be \"imaginary\"\n stream.eat(/J/i);\n return 'number';\n }\n // Integers\n var intLiteral = false;\n // Hex\n if (stream.match(/^&H[0-9a-f]+/i)) { intLiteral = true; }\n // Octal\n else if (stream.match(/^&O[0-7]+/i)) { intLiteral = true; }\n // Decimal\n else if (stream.match(/^[1-9]\\d*F?/)) {\n // Decimal literals may be \"imaginary\"\n stream.eat(/J/i);\n // TODO - Can you have imaginary longs?\n intLiteral = true;\n }\n // Zero by itself with no other piece of number.\n else if (stream.match(/^0(?![\\dx])/i)) { intLiteral = true; }\n if (intLiteral) {\n // Integer literals may be \"long\"\n stream.eat(/L/i);\n return 'number';\n }\n }\n\n // Handle Strings\n if (stream.match(stringPrefixes)) {\n state.tokenize = tokenStringFactory(stream.current());\n return state.tokenize(stream, state);\n }\n\n // Handle operators and Delimiters\n if (stream.match(tripleDelimiters) || stream.match(doubleDelimiters)) {\n return null;\n }\n if (stream.match(doubleOperators)\n || stream.match(singleOperators)\n || stream.match(wordOperators)) {\n return 'operator';\n }\n if (stream.match(singleDelimiters)) {\n return null;\n }\n if (stream.match(doOpening)) {\n indent(stream,state);\n state.doInCurrentLine = true;\n return 'keyword';\n }\n if (stream.match(opening)) {\n if (! state.doInCurrentLine)\n indent(stream,state);\n else\n state.doInCurrentLine = false;\n return 'keyword';\n }\n if (stream.match(middle)) {\n return 'keyword';\n }\n\n if (stream.match(doubleClosing)) {\n dedent(stream,state);\n dedent(stream,state);\n return 'keyword';\n }\n if (stream.match(closing)) {\n dedent(stream,state);\n return 'keyword';\n }\n\n if (stream.match(types)) {\n return 'keyword';\n }\n\n if (stream.match(keywords)) {\n return 'keyword';\n }\n\n if (stream.match(identifiers)) {\n return 'variable';\n }\n\n // Handle non-detected items\n stream.next();\n return ERRORCLASS;\n}\n\nfunction tokenStringFactory(delimiter) {\n var singleline = delimiter.length == 1;\n var OUTCLASS = 'string';\n\n return function(stream, state) {\n while (!stream.eol()) {\n stream.eatWhile(/[^'\"]/);\n if (stream.match(delimiter)) {\n state.tokenize = tokenBase;\n return OUTCLASS;\n } else {\n stream.eat(/['\"]/);\n }\n }\n if (singleline) {\n state.tokenize = tokenBase;\n }\n return OUTCLASS;\n };\n}\n\n\nfunction tokenLexer(stream, state) {\n var style = state.tokenize(stream, state);\n var current = stream.current();\n\n // Handle '.' connected identifiers\n if (current === '.') {\n style = state.tokenize(stream, state);\n if (style === 'variable') {\n return 'variable';\n } else {\n return ERRORCLASS;\n }\n }\n\n\n var delimiter_index = '[({'.indexOf(current);\n if (delimiter_index !== -1) {\n indent(stream, state );\n }\n if (indentInfo === 'dedent') {\n if (dedent(stream, state)) {\n return ERRORCLASS;\n }\n }\n delimiter_index = '])}'.indexOf(current);\n if (delimiter_index !== -1) {\n if (dedent(stream, state)) {\n return ERRORCLASS;\n }\n }\n\n return style;\n}\n\nexport const vb = {\n name: \"vb\",\n\n startState: function() {\n return {\n tokenize: tokenBase,\n lastToken: null,\n currentIndent: 0,\n nextLineIndent: 0,\n doInCurrentLine: false\n\n\n };\n },\n\n token: function(stream, state) {\n if (stream.sol()) {\n state.currentIndent += state.nextLineIndent;\n state.nextLineIndent = 0;\n state.doInCurrentLine = 0;\n }\n var style = tokenLexer(stream, state);\n\n state.lastToken = {style:style, content: stream.current()};\n\n\n\n return style;\n },\n\n indent: function(state, textAfter, cx) {\n var trueText = textAfter.replace(/^\\s+|\\s+$/g, '') ;\n if (trueText.match(closing) || trueText.match(doubleClosing) || trueText.match(middle)) return cx.unit*(state.currentIndent-1);\n if(state.currentIndent < 0) return 0;\n return state.currentIndent * cx.unit;\n },\n\n languageData: {\n closeBrackets: {brackets: [\"(\", \"[\", \"{\", '\"']},\n commentTokens: {line: \"'\"},\n autocomplete: openingKeywords.concat(middleKeywords).concat(endKeywords)\n .concat(operatorKeywords).concat(commonKeywords).concat(commontypes)\n }\n};\n"],"names":["ERRORCLASS","wordRegexp","words","singleOperators","singleDelimiters","doubleOperators","doubleDelimiters","tripleDelimiters","identifiers","openingKeywords","middleKeywords","endKeywords","operatorKeywords","wordOperators","commonKeywords","commontypes","keywords","types","stringPrefixes","opening","middle","closing","doubleClosing","doOpening","indent","_stream","state","dedent","tokenBase","stream","ch","floatLiteral","intLiteral","tokenStringFactory","delimiter","singleline","OUTCLASS","tokenLexer","style","current","delimiter_index","vb","textAfter","cx","trueText"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function p(h){var v="error";function i(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var y=new RegExp("^[\\+\\-\\*/&\\\\\\^<>=]"),g=new RegExp("^((<>)|(<=)|(>=))"),m=new RegExp("^[\\.,]"),w=new RegExp("^[\\(\\)]"),k=new RegExp("^[A-Za-z][_A-Za-z0-9]*"),x=["class","sub","select","while","if","function","property","with","for"],C=["else","elseif","case"],I=["next","loop","wend"],S=i(["and","or","not","xor","is","mod","eqv","imp"]),O=["dim","redim","then","until","randomize","byval","byref","new","property","exit","in","const","private","public","get","set","let","stop","on error resume next","on error goto 0","option explicit","call","me"],D=["true","false","nothing","empty","null"],R=["abs","array","asc","atn","cbool","cbyte","ccur","cdate","cdbl","chr","cint","clng","cos","csng","cstr","date","dateadd","datediff","datepart","dateserial","datevalue","day","escape","eval","execute","exp","filter","formatcurrency","formatdatetime","formatnumber","formatpercent","getlocale","getobject","getref","hex","hour","inputbox","instr","instrrev","int","fix","isarray","isdate","isempty","isnull","isnumeric","isobject","join","lbound","lcase","left","len","loadpicture","log","ltrim","rtrim","trim","maths","mid","minute","month","monthname","msgbox","now","oct","replace","rgb","right","rnd","round","scriptengine","scriptenginebuildversion","scriptenginemajorversion","scriptengineminorversion","second","setlocale","sgn","sin","space","split","sqr","strcomp","string","strreverse","tan","time","timer","timeserial","timevalue","typename","ubound","ucase","unescape","vartype","weekday","weekdayname","year"],E=["vbBlack","vbRed","vbGreen","vbYellow","vbBlue","vbMagenta","vbCyan","vbWhite","vbBinaryCompare","vbTextCompare","vbSunday","vbMonday","vbTuesday","vbWednesday","vbThursday","vbFriday","vbSaturday","vbUseSystemDayOfWeek","vbFirstJan1","vbFirstFourDays","vbFirstFullWeek","vbGeneralDate","vbLongDate","vbShortDate","vbLongTime","vbShortTime","vbObjectError","vbOKOnly","vbOKCancel","vbAbortRetryIgnore","vbYesNoCancel","vbYesNo","vbRetryCancel","vbCritical","vbQuestion","vbExclamation","vbInformation","vbDefaultButton1","vbDefaultButton2","vbDefaultButton3","vbDefaultButton4","vbApplicationModal","vbSystemModal","vbOK","vbCancel","vbAbort","vbRetry","vbIgnore","vbYes","vbNo","vbCr","VbCrLf","vbFormFeed","vbLf","vbNewLine","vbNullChar","vbNullString","vbTab","vbVerticalTab","vbUseDefault","vbTrue","vbFalse","vbEmpty","vbNull","vbInteger","vbLong","vbSingle","vbDouble","vbCurrency","vbDate","vbString","vbObject","vbError","vbBoolean","vbVariant","vbDataObject","vbDecimal","vbByte","vbArray"],a=["WScript","err","debug","RegExp"],L=["description","firstindex","global","helpcontext","helpfile","ignorecase","length","number","pattern","source","value","count"],T=["clear","execute","raise","replace","test","write","writeline","close","open","state","eof","update","addnew","end","createobject","quit"],j=["server","response","request","session","application"],F=["buffer","cachecontrol","charset","contenttype","expires","expiresabsolute","isclientconnected","pics","status","clientcertificate","cookies","form","querystring","servervariables","totalbytes","contents","staticobjects","codepage","lcid","sessionid","timeout","scripttimeout"],B=["addheader","appendtolog","binarywrite","end","flush","redirect","binaryread","remove","removeall","lock","unlock","abandon","getlasterror","htmlencode","mappath","transfer","urlencode"],c=T.concat(L);a=a.concat(E),h.isASP&&(a=a.concat(j),c=c.concat(B,F));var W=i(O),z=i(D),A=i(R),K=i(a),N=i(c),M='"',P=i(x),b=i(C),d=i(I),s=i(["end"]),q=i(["do"]),V=i(["on error resume next","exit"]),Y=i(["rem"]);function f(e,n){n.currentIndent++}function u(e,n){n.currentIndent--}function l(e,n){if(e.eatSpace())return null;var r=e.peek();if(r==="'"||e.match(Y))return e.skipToEnd(),"comment";if(e.match(/^((&H)|(&O))?[0-9\.]/i,!1)&&!e.match(/^((&H)|(&O))?[0-9\.]+[a-z_]/i,!1)){var t=!1;if((e.match(/^\d*\.\d+/i)||e.match(/^\d+\.\d*/)||e.match(/^\.\d+/))&&(t=!0),t)return e.eat(/J/i),"number";var o=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?o=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),o=!0):e.match(/^0(?![\dx])/i)&&(o=!0),o)return e.eat(/L/i),"number"}return e.match(M)?(n.tokenize=_(e.current()),n.tokenize(e,n)):e.match(g)||e.match(y)||e.match(S)?"operator":e.match(m)?null:e.match(w)?"bracket":e.match(V)?(n.doInCurrentLine=!0,"keyword"):e.match(q)?(f(e,n),n.doInCurrentLine=!0,"keyword"):e.match(P)?(n.doInCurrentLine?n.doInCurrentLine=!1:f(e,n),"keyword"):e.match(b)?"keyword":e.match(s)?(u(e,n),u(e,n),"keyword"):e.match(d)?(n.doInCurrentLine?n.doInCurrentLine=!1:u(e,n),"keyword"):e.match(W)?"keyword":e.match(z)?"atom":e.match(N)?"variableName.special":e.match(A)||e.match(K)?"builtin":e.match(k)?"variable":(e.next(),v)}function _(e){var n=e.length==1,r="string";return function(t,o){for(;!t.eol();){if(t.eatWhile(/[^'"]/),t.match(e))return o.tokenize=l,r;t.eat(/['"]/)}return n&&(o.tokenize=l),r}}function H(e,n){var r=n.tokenize(e,n),t=e.current();return t==="."?(r=n.tokenize(e,n),t=e.current(),r&&(r.substr(0,8)==="variable"||r==="builtin"||r==="keyword")?((r==="builtin"||r==="keyword")&&(r="variable"),c.indexOf(t.substr(1))>-1&&(r="keyword"),r):v):r}return{name:"vbscript",startState:function(){return{tokenize:l,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1,ignoreKeyword:!1}},token:function(e,n){e.sol()&&(n.currentIndent+=n.nextLineIndent,n.nextLineIndent=0,n.doInCurrentLine=0);var r=H(e,n);return n.lastToken={style:r,content:e.current()},r===null&&(r=null),r},indent:function(e,n,r){var t=n.replace(/^\s+|\s+$/g,"");return t.match(d)||t.match(s)||t.match(b)?r.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*r.unit}}}const J=p({}),U=p({isASP:!0});export{J as vbScript,U as vbScriptASP};
|
|
2
|
+
//# sourceMappingURL=vbscript-BuJXcnF6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vbscript-BuJXcnF6.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/vbscript.js"],"sourcesContent":["function mkVBScript(parserConf) {\n var ERRORCLASS = 'error';\n\n function wordRegexp(words) {\n return new RegExp(\"^((\" + words.join(\")|(\") + \"))\\\\b\", \"i\");\n }\n\n var singleOperators = new RegExp(\"^[\\\\+\\\\-\\\\*/&\\\\\\\\\\\\^<>=]\");\n var doubleOperators = new RegExp(\"^((<>)|(<=)|(>=))\");\n var singleDelimiters = new RegExp('^[\\\\.,]');\n var brackets = new RegExp('^[\\\\(\\\\)]');\n var identifiers = new RegExp(\"^[A-Za-z][_A-Za-z0-9]*\");\n\n var openingKeywords = ['class','sub','select','while','if','function', 'property', 'with', 'for'];\n var middleKeywords = ['else','elseif','case'];\n var endKeywords = ['next','loop','wend'];\n\n var wordOperators = wordRegexp(['and', 'or', 'not', 'xor', 'is', 'mod', 'eqv', 'imp']);\n var commonkeywords = ['dim', 'redim', 'then', 'until', 'randomize',\n 'byval','byref','new','property', 'exit', 'in',\n 'const','private', 'public',\n 'get','set','let', 'stop', 'on error resume next', 'on error goto 0', 'option explicit', 'call', 'me'];\n\n //This list was from: http://msdn.microsoft.com/en-us/library/f8tbc79x(v=vs.84).aspx\n var atomWords = ['true', 'false', 'nothing', 'empty', 'null'];\n //This list was from: http://msdn.microsoft.com/en-us/library/3ca8tfek(v=vs.84).aspx\n var builtinFuncsWords = ['abs', 'array', 'asc', 'atn', 'cbool', 'cbyte', 'ccur', 'cdate', 'cdbl', 'chr', 'cint', 'clng', 'cos', 'csng', 'cstr', 'date', 'dateadd', 'datediff', 'datepart',\n 'dateserial', 'datevalue', 'day', 'escape', 'eval', 'execute', 'exp', 'filter', 'formatcurrency', 'formatdatetime', 'formatnumber', 'formatpercent', 'getlocale', 'getobject',\n 'getref', 'hex', 'hour', 'inputbox', 'instr', 'instrrev', 'int', 'fix', 'isarray', 'isdate', 'isempty', 'isnull', 'isnumeric', 'isobject', 'join', 'lbound', 'lcase', 'left',\n 'len', 'loadpicture', 'log', 'ltrim', 'rtrim', 'trim', 'maths', 'mid', 'minute', 'month', 'monthname', 'msgbox', 'now', 'oct', 'replace', 'rgb', 'right', 'rnd', 'round',\n 'scriptengine', 'scriptenginebuildversion', 'scriptenginemajorversion', 'scriptengineminorversion', 'second', 'setlocale', 'sgn', 'sin', 'space', 'split', 'sqr', 'strcomp',\n 'string', 'strreverse', 'tan', 'time', 'timer', 'timeserial', 'timevalue', 'typename', 'ubound', 'ucase', 'unescape', 'vartype', 'weekday', 'weekdayname', 'year'];\n\n //This list was from: http://msdn.microsoft.com/en-us/library/ydz4cfk3(v=vs.84).aspx\n var builtinConsts = ['vbBlack', 'vbRed', 'vbGreen', 'vbYellow', 'vbBlue', 'vbMagenta', 'vbCyan', 'vbWhite', 'vbBinaryCompare', 'vbTextCompare',\n 'vbSunday', 'vbMonday', 'vbTuesday', 'vbWednesday', 'vbThursday', 'vbFriday', 'vbSaturday', 'vbUseSystemDayOfWeek', 'vbFirstJan1', 'vbFirstFourDays', 'vbFirstFullWeek',\n 'vbGeneralDate', 'vbLongDate', 'vbShortDate', 'vbLongTime', 'vbShortTime', 'vbObjectError',\n 'vbOKOnly', 'vbOKCancel', 'vbAbortRetryIgnore', 'vbYesNoCancel', 'vbYesNo', 'vbRetryCancel', 'vbCritical', 'vbQuestion', 'vbExclamation', 'vbInformation', 'vbDefaultButton1', 'vbDefaultButton2',\n 'vbDefaultButton3', 'vbDefaultButton4', 'vbApplicationModal', 'vbSystemModal', 'vbOK', 'vbCancel', 'vbAbort', 'vbRetry', 'vbIgnore', 'vbYes', 'vbNo',\n 'vbCr', 'VbCrLf', 'vbFormFeed', 'vbLf', 'vbNewLine', 'vbNullChar', 'vbNullString', 'vbTab', 'vbVerticalTab', 'vbUseDefault', 'vbTrue', 'vbFalse',\n 'vbEmpty', 'vbNull', 'vbInteger', 'vbLong', 'vbSingle', 'vbDouble', 'vbCurrency', 'vbDate', 'vbString', 'vbObject', 'vbError', 'vbBoolean', 'vbVariant', 'vbDataObject', 'vbDecimal', 'vbByte', 'vbArray'];\n //This list was from: http://msdn.microsoft.com/en-us/library/hkc375ea(v=vs.84).aspx\n var builtinObjsWords = ['WScript', 'err', 'debug', 'RegExp'];\n var knownProperties = ['description', 'firstindex', 'global', 'helpcontext', 'helpfile', 'ignorecase', 'length', 'number', 'pattern', 'source', 'value', 'count'];\n var knownMethods = ['clear', 'execute', 'raise', 'replace', 'test', 'write', 'writeline', 'close', 'open', 'state', 'eof', 'update', 'addnew', 'end', 'createobject', 'quit'];\n\n var aspBuiltinObjsWords = ['server', 'response', 'request', 'session', 'application'];\n var aspKnownProperties = ['buffer', 'cachecontrol', 'charset', 'contenttype', 'expires', 'expiresabsolute', 'isclientconnected', 'pics', 'status', //response\n 'clientcertificate', 'cookies', 'form', 'querystring', 'servervariables', 'totalbytes', //request\n 'contents', 'staticobjects', //application\n 'codepage', 'lcid', 'sessionid', 'timeout', //session\n 'scripttimeout']; //server\n var aspKnownMethods = ['addheader', 'appendtolog', 'binarywrite', 'end', 'flush', 'redirect', //response\n 'binaryread', //request\n 'remove', 'removeall', 'lock', 'unlock', //application\n 'abandon', //session\n 'getlasterror', 'htmlencode', 'mappath', 'transfer', 'urlencode']; //server\n\n var knownWords = knownMethods.concat(knownProperties);\n\n builtinObjsWords = builtinObjsWords.concat(builtinConsts);\n\n if (parserConf.isASP){\n builtinObjsWords = builtinObjsWords.concat(aspBuiltinObjsWords);\n knownWords = knownWords.concat(aspKnownMethods, aspKnownProperties);\n };\n\n var keywords = wordRegexp(commonkeywords);\n var atoms = wordRegexp(atomWords);\n var builtinFuncs = wordRegexp(builtinFuncsWords);\n var builtinObjs = wordRegexp(builtinObjsWords);\n var known = wordRegexp(knownWords);\n var stringPrefixes = '\"';\n\n var opening = wordRegexp(openingKeywords);\n var middle = wordRegexp(middleKeywords);\n var closing = wordRegexp(endKeywords);\n var doubleClosing = wordRegexp(['end']);\n var doOpening = wordRegexp(['do']);\n var noIndentWords = wordRegexp(['on error resume next', 'exit']);\n var comment = wordRegexp(['rem']);\n\n\n function indent(_stream, state) {\n state.currentIndent++;\n }\n\n function dedent(_stream, state) {\n state.currentIndent--;\n }\n // tokenizers\n function tokenBase(stream, state) {\n if (stream.eatSpace()) {\n return null\n //return null;\n }\n\n var ch = stream.peek();\n\n // Handle Comments\n if (ch === \"'\") {\n stream.skipToEnd();\n return 'comment';\n }\n if (stream.match(comment)){\n stream.skipToEnd();\n return 'comment';\n }\n\n\n // Handle Number Literals\n if (stream.match(/^((&H)|(&O))?[0-9\\.]/i, false) && !stream.match(/^((&H)|(&O))?[0-9\\.]+[a-z_]/i, false)) {\n var floatLiteral = false;\n // Floats\n if (stream.match(/^\\d*\\.\\d+/i)) { floatLiteral = true; }\n else if (stream.match(/^\\d+\\.\\d*/)) { floatLiteral = true; }\n else if (stream.match(/^\\.\\d+/)) { floatLiteral = true; }\n\n if (floatLiteral) {\n // Float literals may be \"imaginary\"\n stream.eat(/J/i);\n return 'number';\n }\n // Integers\n var intLiteral = false;\n // Hex\n if (stream.match(/^&H[0-9a-f]+/i)) { intLiteral = true; }\n // Octal\n else if (stream.match(/^&O[0-7]+/i)) { intLiteral = true; }\n // Decimal\n else if (stream.match(/^[1-9]\\d*F?/)) {\n // Decimal literals may be \"imaginary\"\n stream.eat(/J/i);\n // TODO - Can you have imaginary longs?\n intLiteral = true;\n }\n // Zero by itself with no other piece of number.\n else if (stream.match(/^0(?![\\dx])/i)) { intLiteral = true; }\n if (intLiteral) {\n // Integer literals may be \"long\"\n stream.eat(/L/i);\n return 'number';\n }\n }\n\n // Handle Strings\n if (stream.match(stringPrefixes)) {\n state.tokenize = tokenStringFactory(stream.current());\n return state.tokenize(stream, state);\n }\n\n // Handle operators and Delimiters\n if (stream.match(doubleOperators)\n || stream.match(singleOperators)\n || stream.match(wordOperators)) {\n return 'operator';\n }\n if (stream.match(singleDelimiters)) {\n return null;\n }\n\n if (stream.match(brackets)) {\n return \"bracket\";\n }\n\n if (stream.match(noIndentWords)) {\n state.doInCurrentLine = true;\n\n return 'keyword';\n }\n\n if (stream.match(doOpening)) {\n indent(stream,state);\n state.doInCurrentLine = true;\n\n return 'keyword';\n }\n if (stream.match(opening)) {\n if (! state.doInCurrentLine)\n indent(stream,state);\n else\n state.doInCurrentLine = false;\n\n return 'keyword';\n }\n if (stream.match(middle)) {\n return 'keyword';\n }\n\n\n if (stream.match(doubleClosing)) {\n dedent(stream,state);\n dedent(stream,state);\n\n return 'keyword';\n }\n if (stream.match(closing)) {\n if (! state.doInCurrentLine)\n dedent(stream,state);\n else\n state.doInCurrentLine = false;\n\n return 'keyword';\n }\n\n if (stream.match(keywords)) {\n return 'keyword';\n }\n\n if (stream.match(atoms)) {\n return 'atom';\n }\n\n if (stream.match(known)) {\n return 'variableName.special';\n }\n\n if (stream.match(builtinFuncs)) {\n return 'builtin';\n }\n\n if (stream.match(builtinObjs)){\n return 'builtin';\n }\n\n if (stream.match(identifiers)) {\n return 'variable';\n }\n\n // Handle non-detected items\n stream.next();\n return ERRORCLASS;\n }\n\n function tokenStringFactory(delimiter) {\n var singleline = delimiter.length == 1;\n var OUTCLASS = 'string';\n\n return function(stream, state) {\n while (!stream.eol()) {\n stream.eatWhile(/[^'\"]/);\n if (stream.match(delimiter)) {\n state.tokenize = tokenBase;\n return OUTCLASS;\n } else {\n stream.eat(/['\"]/);\n }\n }\n if (singleline) {\n state.tokenize = tokenBase;\n }\n return OUTCLASS;\n };\n }\n\n\n function tokenLexer(stream, state) {\n var style = state.tokenize(stream, state);\n var current = stream.current();\n\n // Handle '.' connected identifiers\n if (current === '.') {\n style = state.tokenize(stream, state);\n\n current = stream.current();\n if (style && (style.substr(0, 8) === 'variable' || style==='builtin' || style==='keyword')){//|| knownWords.indexOf(current.substring(1)) > -1) {\n if (style === 'builtin' || style === 'keyword') style='variable';\n if (knownWords.indexOf(current.substr(1)) > -1) style='keyword';\n\n return style;\n } else {\n return ERRORCLASS;\n }\n }\n\n return style;\n }\n\n return {\n name: \"vbscript\",\n startState: function() {\n return {\n tokenize: tokenBase,\n lastToken: null,\n currentIndent: 0,\n nextLineIndent: 0,\n doInCurrentLine: false,\n ignoreKeyword: false\n\n\n };\n },\n\n token: function(stream, state) {\n if (stream.sol()) {\n state.currentIndent += state.nextLineIndent;\n state.nextLineIndent = 0;\n state.doInCurrentLine = 0;\n }\n var style = tokenLexer(stream, state);\n\n state.lastToken = {style:style, content: stream.current()};\n\n if (style===null) style=null;\n\n return style;\n },\n\n indent: function(state, textAfter, cx) {\n var trueText = textAfter.replace(/^\\s+|\\s+$/g, '') ;\n if (trueText.match(closing) || trueText.match(doubleClosing) || trueText.match(middle)) return cx.unit*(state.currentIndent-1);\n if(state.currentIndent < 0) return 0;\n return state.currentIndent * cx.unit\n }\n\n };\n};\n\nexport const vbScript = mkVBScript({})\nexport const vbScriptASP = mkVBScript({isASP: true})\n"],"names":["mkVBScript","parserConf","ERRORCLASS","wordRegexp","words","singleOperators","doubleOperators","singleDelimiters","brackets","identifiers","openingKeywords","middleKeywords","endKeywords","wordOperators","commonkeywords","atomWords","builtinFuncsWords","builtinConsts","builtinObjsWords","knownProperties","knownMethods","aspBuiltinObjsWords","aspKnownProperties","aspKnownMethods","knownWords","keywords","atoms","builtinFuncs","builtinObjs","known","stringPrefixes","opening","middle","closing","doubleClosing","doOpening","noIndentWords","comment","indent","_stream","state","dedent","tokenBase","stream","ch","floatLiteral","intLiteral","tokenStringFactory","delimiter","singleline","OUTCLASS","tokenLexer","style","current","textAfter","cx","trueText","vbScript","vbScriptASP"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function u(n){for(var e={},i=n.split(" "),r=0;r<i.length;++r)e[i[r]]=!0;return e}var s=u("#end #else #break #stop #[[ #]] #{end} #{else} #{break} #{stop}"),a=u("#if #elseif #foreach #set #include #parse #macro #define #evaluate #{if} #{elseif} #{foreach} #{set} #{include} #{parse} #{macro} #{define} #{evaluate}"),c=u("$foreach.count $foreach.hasNext $foreach.first $foreach.last $foreach.topmost $foreach.parent.count $foreach.parent.hasNext $foreach.parent.first $foreach.parent.last $foreach.parent $velocityCount $!bodyContent $bodyContent"),k=/[+\-*&%=<>!?:\/|]/;function o(n,e,i){return e.tokenize=i,i(n,e)}function t(n,e){var i=e.beforeParams;e.beforeParams=!1;var r=n.next();if(r=="'"&&!e.inString&&e.inParams)return e.lastTokenWasBuiltin=!1,o(n,e,p(r));if(r=='"'){if(e.lastTokenWasBuiltin=!1,e.inString)return e.inString=!1,"string";if(e.inParams)return o(n,e,p(r))}else{if(/[\[\]{}\(\),;\.]/.test(r))return r=="("&&i?e.inParams=!0:r==")"&&(e.inParams=!1,e.lastTokenWasBuiltin=!0),null;if(/\d/.test(r))return e.lastTokenWasBuiltin=!1,n.eatWhile(/[\w\.]/),"number";if(r=="#"&&n.eat("*"))return e.lastTokenWasBuiltin=!1,o(n,e,h);if(r=="#"&&n.match(/ *\[ *\[/))return e.lastTokenWasBuiltin=!1,o(n,e,b);if(r=="#"&&n.eat("#"))return e.lastTokenWasBuiltin=!1,n.skipToEnd(),"comment";if(r=="$")return n.eat("!"),n.eatWhile(/[\w\d\$_\.{}-]/),c&&c.propertyIsEnumerable(n.current())?"keyword":(e.lastTokenWasBuiltin=!0,e.beforeParams=!0,"builtin");if(k.test(r))return e.lastTokenWasBuiltin=!1,n.eatWhile(k),"operator";n.eatWhile(/[\w\$_{}@]/);var l=n.current();return s&&s.propertyIsEnumerable(l)?"keyword":a&&a.propertyIsEnumerable(l)||n.current().match(/^#@?[a-z0-9_]+ *$/i)&&n.peek()=="("&&!(a&&a.propertyIsEnumerable(l.toLowerCase()))?(e.beforeParams=!0,e.lastTokenWasBuiltin=!1,"keyword"):e.inString?(e.lastTokenWasBuiltin=!1,"string"):n.pos>l.length&&n.string.charAt(n.pos-l.length-1)=="."&&e.lastTokenWasBuiltin?"builtin":(e.lastTokenWasBuiltin=!1,null)}}function p(n){return function(e,i){for(var r=!1,l,f=!1;(l=e.next())!=null;){if(l==n&&!r){f=!0;break}if(n=='"'&&e.peek()=="$"&&!r){i.inString=!0,f=!0;break}r=!r&&l=="\\"}return f&&(i.tokenize=t),"string"}}function h(n,e){for(var i=!1,r;r=n.next();){if(r=="#"&&i){e.tokenize=t;break}i=r=="*"}return"comment"}function b(n,e){for(var i=0,r;r=n.next();){if(r=="#"&&i==2){e.tokenize=t;break}r=="]"?i++:r!=" "&&(i=0)}return"meta"}const W={name:"velocity",startState:function(){return{tokenize:t,beforeParams:!1,inParams:!1,inString:!1,lastTokenWasBuiltin:!1}},token:function(n,e){return n.eatSpace()?null:e.tokenize(n,e)},languageData:{commentTokens:{line:"##",block:{open:"#*",close:"*#"}}}};export{W as velocity};
|
|
2
|
+
//# sourceMappingURL=velocity-D8B20fx6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"velocity-D8B20fx6.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/velocity.js"],"sourcesContent":["function parseWords(str) {\n var obj = {}, words = str.split(\" \");\n for (var i = 0; i < words.length; ++i) obj[words[i]] = true;\n return obj;\n}\n\nvar keywords = parseWords(\"#end #else #break #stop #[[ #]] \" +\n \"#{end} #{else} #{break} #{stop}\");\nvar functions = parseWords(\"#if #elseif #foreach #set #include #parse #macro #define #evaluate \" +\n \"#{if} #{elseif} #{foreach} #{set} #{include} #{parse} #{macro} #{define} #{evaluate}\");\nvar specials = parseWords(\"$foreach.count $foreach.hasNext $foreach.first $foreach.last $foreach.topmost $foreach.parent.count $foreach.parent.hasNext $foreach.parent.first $foreach.parent.last $foreach.parent $velocityCount $!bodyContent $bodyContent\");\nvar isOperatorChar = /[+\\-*&%=<>!?:\\/|]/;\n\nfunction chain(stream, state, f) {\n state.tokenize = f;\n return f(stream, state);\n}\nfunction tokenBase(stream, state) {\n var beforeParams = state.beforeParams;\n state.beforeParams = false;\n var ch = stream.next();\n // start of unparsed string?\n if ((ch == \"'\") && !state.inString && state.inParams) {\n state.lastTokenWasBuiltin = false;\n return chain(stream, state, tokenString(ch));\n }\n // start of parsed string?\n else if ((ch == '\"')) {\n state.lastTokenWasBuiltin = false;\n if (state.inString) {\n state.inString = false;\n return \"string\";\n }\n else if (state.inParams)\n return chain(stream, state, tokenString(ch));\n }\n // is it one of the special signs []{}().,;? Separator?\n else if (/[\\[\\]{}\\(\\),;\\.]/.test(ch)) {\n if (ch == \"(\" && beforeParams)\n state.inParams = true;\n else if (ch == \")\") {\n state.inParams = false;\n state.lastTokenWasBuiltin = true;\n }\n return null;\n }\n // start of a number value?\n else if (/\\d/.test(ch)) {\n state.lastTokenWasBuiltin = false;\n stream.eatWhile(/[\\w\\.]/);\n return \"number\";\n }\n // multi line comment?\n else if (ch == \"#\" && stream.eat(\"*\")) {\n state.lastTokenWasBuiltin = false;\n return chain(stream, state, tokenComment);\n }\n // unparsed content?\n else if (ch == \"#\" && stream.match(/ *\\[ *\\[/)) {\n state.lastTokenWasBuiltin = false;\n return chain(stream, state, tokenUnparsed);\n }\n // single line comment?\n else if (ch == \"#\" && stream.eat(\"#\")) {\n state.lastTokenWasBuiltin = false;\n stream.skipToEnd();\n return \"comment\";\n }\n // variable?\n else if (ch == \"$\") {\n stream.eat(\"!\");\n stream.eatWhile(/[\\w\\d\\$_\\.{}-]/);\n // is it one of the specials?\n if (specials && specials.propertyIsEnumerable(stream.current())) {\n return \"keyword\";\n }\n else {\n state.lastTokenWasBuiltin = true;\n state.beforeParams = true;\n return \"builtin\";\n }\n }\n // is it a operator?\n else if (isOperatorChar.test(ch)) {\n state.lastTokenWasBuiltin = false;\n stream.eatWhile(isOperatorChar);\n return \"operator\";\n }\n else {\n // get the whole word\n stream.eatWhile(/[\\w\\$_{}@]/);\n var word = stream.current();\n // is it one of the listed keywords?\n if (keywords && keywords.propertyIsEnumerable(word))\n return \"keyword\";\n // is it one of the listed functions?\n if (functions && functions.propertyIsEnumerable(word) ||\n (stream.current().match(/^#@?[a-z0-9_]+ *$/i) && stream.peek()==\"(\") &&\n !(functions && functions.propertyIsEnumerable(word.toLowerCase()))) {\n state.beforeParams = true;\n state.lastTokenWasBuiltin = false;\n return \"keyword\";\n }\n if (state.inString) {\n state.lastTokenWasBuiltin = false;\n return \"string\";\n }\n if (stream.pos > word.length && stream.string.charAt(stream.pos-word.length-1)==\".\" && state.lastTokenWasBuiltin)\n return \"builtin\";\n // default: just a \"word\"\n state.lastTokenWasBuiltin = false;\n return null;\n }\n}\n\nfunction tokenString(quote) {\n return function(stream, state) {\n var escaped = false, next, end = false;\n while ((next = stream.next()) != null) {\n if ((next == quote) && !escaped) {\n end = true;\n break;\n }\n if (quote=='\"' && stream.peek() == '$' && !escaped) {\n state.inString = true;\n end = true;\n break;\n }\n escaped = !escaped && next == \"\\\\\";\n }\n if (end) state.tokenize = tokenBase;\n return \"string\";\n };\n}\n\nfunction tokenComment(stream, state) {\n var maybeEnd = false, ch;\n while (ch = stream.next()) {\n if (ch == \"#\" && maybeEnd) {\n state.tokenize = tokenBase;\n break;\n }\n maybeEnd = (ch == \"*\");\n }\n return \"comment\";\n}\n\nfunction tokenUnparsed(stream, state) {\n var maybeEnd = 0, ch;\n while (ch = stream.next()) {\n if (ch == \"#\" && maybeEnd == 2) {\n state.tokenize = tokenBase;\n break;\n }\n if (ch == \"]\")\n maybeEnd++;\n else if (ch != \" \")\n maybeEnd = 0;\n }\n return \"meta\";\n}\n// Interface\n\nexport const velocity = {\n name: \"velocity\",\n\n startState: function() {\n return {\n tokenize: tokenBase,\n beforeParams: false,\n inParams: false,\n inString: false,\n lastTokenWasBuiltin: false\n };\n },\n\n token: function(stream, state) {\n if (stream.eatSpace()) return null;\n return state.tokenize(stream, state);\n },\n languageData: {\n commentTokens: {line: \"##\", block: {open: \"#*\", close: \"*#\"}}\n }\n};\n"],"names":["parseWords","str","obj","words","i","keywords","functions","specials","isOperatorChar","chain","stream","state","f","tokenBase","beforeParams","ch","tokenString","tokenComment","tokenUnparsed","word","quote","escaped","next","end","maybeEnd","velocity"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function A(i){var o=i.statementIndentUnit,u=i.dontAlignCalls,c=i.noIndentKeywords||[],s=i.multiLineStrings,a=i.hooks||{};function g(e){for(var n={},t=e.split(" "),r=0;r<t.length;++r)n[t[r]]=!0;return n}var h=g("accept_on alias always always_comb always_ff always_latch and assert assign assume automatic before begin bind bins binsof bit break buf bufif0 bufif1 byte case casex casez cell chandle checker class clocking cmos config const constraint context continue cover covergroup coverpoint cross deassign default defparam design disable dist do edge else end endcase endchecker endclass endclocking endconfig endfunction endgenerate endgroup endinterface endmodule endpackage endprimitive endprogram endproperty endspecify endsequence endtable endtask enum event eventually expect export extends extern final first_match for force foreach forever fork forkjoin function generate genvar global highz0 highz1 if iff ifnone ignore_bins illegal_bins implements implies import incdir include initial inout input inside instance int integer interconnect interface intersect join join_any join_none large let liblist library local localparam logic longint macromodule matches medium modport module nand negedge nettype new nexttime nmos nor noshowcancelled not notif0 notif1 null or output package packed parameter pmos posedge primitive priority program property protected pull0 pull1 pulldown pullup pulsestyle_ondetect pulsestyle_onevent pure rand randc randcase randsequence rcmos real realtime ref reg reject_on release repeat restrict return rnmos rpmos rtran rtranif0 rtranif1 s_always s_eventually s_nexttime s_until s_until_with scalared sequence shortint shortreal showcancelled signed small soft solve specify specparam static string strong strong0 strong1 struct super supply0 supply1 sync_accept_on sync_reject_on table tagged task this throughout time timeprecision timeunit tran tranif0 tranif1 tri tri0 tri1 triand trior trireg type typedef union unique unique0 unsigned until until_with untyped use uwire var vectored virtual void wait wait_order wand weak weak0 weak1 while wildcard wire with within wor xnor xor"),w=/[\+\-\*\/!~&|^%=?:]/,k=/[\[\]{}()]/,b=/\d[0-9_]*/,I=/\d*\s*'s?d\s*\d[0-9_]*/i,O=/\d*\s*'s?b\s*[xz01][xz01_]*/i,T=/\d*\s*'s?o\s*[xz0-7][xz0-7_]*/i,W=/\d*\s*'s?h\s*[0-9a-fxz?][0-9a-fxz?_]*/i,B=/(\d[\d_]*(\.\d[\d_]*)?E-?[\d_]+)|(\d[\d_]*\.\d[\d_]*)/i,M=/^((\w+)|[)}\]])/,U=/[)}\]]/,d,v,K=g("case checker class clocking config function generate interface module package primitive program property specify sequence table task"),f={};for(var m in K)f[m]="end"+m;f.begin="end",f.casex="endcase",f.casez="endcase",f.do="while",f.fork="join;join_any;join_none",f.covergroup="endgroup";for(var V in c){var m=c[V];f[m]&&(f[m]=void 0)}var R=g("always always_comb always_ff always_latch assert assign assume else export for foreach forever if import initial repeat while");function _(e,n){var t=e.peek(),r;if(a[t]&&(r=a[t](e,n))!=!1||a.tokenBase&&(r=a.tokenBase(e,n))!=!1)return r;if(/[,;:\.]/.test(t))return d=e.next(),null;if(k.test(t))return d=e.next(),"bracket";if(t=="`")return e.next(),e.eatWhile(/[\w\$_]/)?"def":null;if(t=="$")return e.next(),e.eatWhile(/[\w\$_]/)?"meta":null;if(t=="#")return e.next(),e.eatWhile(/[\d_.]/),"def";if(t=='"')return e.next(),n.tokenize=D(t),n.tokenize(e,n);if(t=="/"){if(e.next(),e.eat("*"))return n.tokenize=L,L(e,n);if(e.eat("/"))return e.skipToEnd(),"comment";e.backUp(1)}if(e.match(B)||e.match(I)||e.match(O)||e.match(T)||e.match(W)||e.match(b)||e.match(B))return"number";if(e.eatWhile(w))return"meta";if(e.eatWhile(/[\w\$_]/)){var l=e.current();return h[l]?(f[l]&&(d="newblock"),R[l]&&(d="newstatement"),v=l,"keyword"):"variable"}return e.next(),null}function D(e){return function(n,t){for(var r=!1,l,y=!1;(l=n.next())!=null;){if(l==e&&!r){y=!0;break}r=!r&&l=="\\"}return(y||!(r||s))&&(t.tokenize=_),"string"}}function L(e,n){for(var t=!1,r;r=e.next();){if(r=="/"&&t){n.tokenize=_;break}t=r=="*"}return"comment"}function j(e,n,t,r,l){this.indented=e,this.column=n,this.type=t,this.align=r,this.prev=l}function p(e,n,t){var r=e.indented,l=new j(r,n,t,null,e.context);return e.context=l}function C(e){var n=e.context.type;return(n==")"||n=="]"||n=="}")&&(e.indented=e.context.indented),e.context=e.context.prev}function N(e,n){if(e==n)return!0;var t=n.split(";");for(var r in t)if(e==t[r])return!0;return!1}function P(){var e=[];for(var n in f)if(f[n]){var t=f[n].split(";");for(var r in t)e.push(t[r])}var l=new RegExp("[{}()\\[\\]]|("+e.join("|")+")$");return l}return{name:"verilog",startState:function(e){var n={tokenize:null,context:new j(-e,0,"top",!1),indented:0,startOfLine:!0};return a.startState&&a.startState(n),n},token:function(e,n){var t=n.context;if(e.sol()&&(t.align==null&&(t.align=!1),n.indented=e.indentation(),n.startOfLine=!0),a.token){var r=a.token(e,n);if(r!==void 0)return r}if(e.eatSpace())return null;d=null,v=null;var r=(n.tokenize||_)(e,n);if(r=="comment"||r=="meta"||r=="variable")return r;if(t.align==null&&(t.align=!0),d==t.type)C(n);else if(d==";"&&t.type=="statement"||t.type&&N(v,t.type))for(t=C(n);t&&t.type=="statement";)t=C(n);else if(d=="{")p(n,e.column(),"}");else if(d=="[")p(n,e.column(),"]");else if(d=="(")p(n,e.column(),")");else if(t&&t.type=="endcase"&&d==":")p(n,e.column(),"statement");else if(d=="newstatement")p(n,e.column(),"statement");else if(d=="newblock"&&!(v=="function"&&t&&(t.type=="statement"||t.type=="endgroup"))){if(!(v=="task"&&t&&t.type=="statement")){var l=f[v];p(n,e.column(),l)}}return n.startOfLine=!1,r},indent:function(e,n,t){if(e.tokenize!=_&&e.tokenize!=null)return null;if(a.indent){var r=a.indent(e);if(r>=0)return r}var l=e.context,y=n&&n.charAt(0);l.type=="statement"&&y=="}"&&(l=l.prev);var x=!1,$=n.match(M);return $&&(x=N($[0],l.type)),l.type=="statement"?l.indented+(y=="{"?0:o||t.unit):U.test(l.type)&&l.align&&!u?l.column+(x?0:1):l.type==")"&&!x?l.indented+(o||t.unit):l.indented+(x?0:t.unit)},languageData:{indentOnInput:P(),commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}}}const J=A({});var z={"|":"link",">":"property",$:"variable",$$:"variable","?$":"qualifier","?*":"qualifier","-":"contentSeparator","/":"property","/-":"property","@":"variableName.special","@-":"variableName.special","@++":"variableName.special","@+=":"variableName.special","@+=-":"variableName.special","@--":"variableName.special","@-=":"variableName.special","%+":"tag","%-":"tag","%":"tag",">>":"tag","<<":"tag","<>":"tag","#":"tag","^":"attribute","^^":"attribute","^!":"attribute","*":"variable","**":"variable","\\":"keyword",'"':"comment"},E={"/":"beh-hier",">":"beh-hier","-":"phys-hier","|":"pipe","?":"when","@":"stage","\\":"keyword"},S=3,q=/^([~!@#\$%\^&\*-\+=\?\/\\\|'"<>]+)([\d\w_]*)/,F=/^[! ] */,G=/^\/[\/\*]/;const Q=A({hooks:{electricInput:!1,token:function(i,o){var u=void 0,c;if(i.sol()&&!o.tlvInBlockComment){i.peek()=="\\"&&(u="def",i.skipToEnd(),i.string.match(/\\SV/)?o.tlvCodeActive=!1:i.string.match(/\\TLV/)&&(o.tlvCodeActive=!0)),o.tlvCodeActive&&i.pos==0&&o.indented==0&&(c=i.match(F,!1))&&(o.indented=c[0].length);var s=o.indented,a=s/S;if(a<=o.tlvIndentationStyle.length){var g=i.string.length==s,h=a*S;if(h<i.string.length){var w=i.string.slice(h),k=w[0];E[k]&&(c=w.match(q))&&z[c[1]]&&(s+=S,k=="\\"&&h>0||(o.tlvIndentationStyle[a]=E[k],a++))}if(!g)for(;o.tlvIndentationStyle.length>a;)o.tlvIndentationStyle.pop()}o.tlvNextIndent=s}if(o.tlvCodeActive){var c;if(u===void 0)if(o.tlvInBlockComment)i.match(/^.*?\*\//)?o.tlvInBlockComment=!1:i.skipToEnd(),u="comment";else if((c=i.match(G))&&!o.tlvInBlockComment)c[0]=="//"?i.skipToEnd():o.tlvInBlockComment=!0,u="comment";else if(c=i.match(q)){var b=c[1],I=c[2];z.hasOwnProperty(b)&&(I.length>0||i.eol())?u=z[b]:i.backUp(i.current().length-1)}else i.match(/^\t+/)?u="invalid":i.match(/^[\[\]{}\(\);\:]+/)?u="meta":(c=i.match(/^[mM]4([\+_])?[\w\d_]*/))?u=c[1]=="+"?"keyword.special":"keyword":i.match(/^ +/)?i.eol()&&(u="error"):i.match(/^[\w\d_]+/)?u="number":i.next()}else i.match(/^[mM]4([\w\d_]*)/)&&(u="keyword");return u},indent:function(i){return i.tlvCodeActive==!0?i.tlvNextIndent:-1},startState:function(i){i.tlvIndentationStyle=[],i.tlvCodeActive=!0,i.tlvNextIndent=-1,i.tlvInBlockComment=!1}}});export{Q as tlv,J as verilog};
|
|
2
|
+
//# sourceMappingURL=verilog-C6RDOZhf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verilog-C6RDOZhf.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/verilog.js"],"sourcesContent":["function mkVerilog(parserConfig) {\n\n var statementIndentUnit = parserConfig.statementIndentUnit,\n dontAlignCalls = parserConfig.dontAlignCalls,\n noIndentKeywords = parserConfig.noIndentKeywords || [],\n multiLineStrings = parserConfig.multiLineStrings,\n hooks = parserConfig.hooks || {};\n\n function words(str) {\n var obj = {}, words = str.split(\" \");\n for (var i = 0; i < words.length; ++i) obj[words[i]] = true;\n return obj;\n }\n\n /**\n * Keywords from IEEE 1800-2012\n */\n var keywords = words(\n \"accept_on alias always always_comb always_ff always_latch and assert assign assume automatic before begin bind \" +\n \"bins binsof bit break buf bufif0 bufif1 byte case casex casez cell chandle checker class clocking cmos config \" +\n \"const constraint context continue cover covergroup coverpoint cross deassign default defparam design disable \" +\n \"dist do edge else end endcase endchecker endclass endclocking endconfig endfunction endgenerate endgroup \" +\n \"endinterface endmodule endpackage endprimitive endprogram endproperty endspecify endsequence endtable endtask \" +\n \"enum event eventually expect export extends extern final first_match for force foreach forever fork forkjoin \" +\n \"function generate genvar global highz0 highz1 if iff ifnone ignore_bins illegal_bins implements implies import \" +\n \"incdir include initial inout input inside instance int integer interconnect interface intersect join join_any \" +\n \"join_none large let liblist library local localparam logic longint macromodule matches medium modport module \" +\n \"nand negedge nettype new nexttime nmos nor noshowcancelled not notif0 notif1 null or output package packed \" +\n \"parameter pmos posedge primitive priority program property protected pull0 pull1 pulldown pullup \" +\n \"pulsestyle_ondetect pulsestyle_onevent pure rand randc randcase randsequence rcmos real realtime ref reg \" +\n \"reject_on release repeat restrict return rnmos rpmos rtran rtranif0 rtranif1 s_always s_eventually s_nexttime \" +\n \"s_until s_until_with scalared sequence shortint shortreal showcancelled signed small soft solve specify \" +\n \"specparam static string strong strong0 strong1 struct super supply0 supply1 sync_accept_on sync_reject_on \" +\n \"table tagged task this throughout time timeprecision timeunit tran tranif0 tranif1 tri tri0 tri1 triand trior \" +\n \"trireg type typedef union unique unique0 unsigned until until_with untyped use uwire var vectored virtual void \" +\n \"wait wait_order wand weak weak0 weak1 while wildcard wire with within wor xnor xor\");\n\n /** Operators from IEEE 1800-2012\n unary_operator ::=\n + | - | ! | ~ | & | ~& | | | ~| | ^ | ~^ | ^~\n binary_operator ::=\n + | - | * | / | % | == | != | === | !== | ==? | !=? | && | || | **\n | < | <= | > | >= | & | | | ^ | ^~ | ~^ | >> | << | >>> | <<<\n | -> | <->\n inc_or_dec_operator ::= ++ | --\n unary_module_path_operator ::=\n ! | ~ | & | ~& | | | ~| | ^ | ~^ | ^~\n binary_module_path_operator ::=\n == | != | && | || | & | | | ^ | ^~ | ~^\n */\n var isOperatorChar = /[\\+\\-\\*\\/!~&|^%=?:]/;\n var isBracketChar = /[\\[\\]{}()]/;\n\n var unsignedNumber = /\\d[0-9_]*/;\n var decimalLiteral = /\\d*\\s*'s?d\\s*\\d[0-9_]*/i;\n var binaryLiteral = /\\d*\\s*'s?b\\s*[xz01][xz01_]*/i;\n var octLiteral = /\\d*\\s*'s?o\\s*[xz0-7][xz0-7_]*/i;\n var hexLiteral = /\\d*\\s*'s?h\\s*[0-9a-fxz?][0-9a-fxz?_]*/i;\n var realLiteral = /(\\d[\\d_]*(\\.\\d[\\d_]*)?E-?[\\d_]+)|(\\d[\\d_]*\\.\\d[\\d_]*)/i;\n\n var closingBracketOrWord = /^((\\w+)|[)}\\]])/;\n var closingBracket = /[)}\\]]/;\n\n var curPunc;\n var curKeyword;\n\n // Block openings which are closed by a matching keyword in the form of (\"end\" + keyword)\n // E.g. \"task\" => \"endtask\"\n var blockKeywords = words(\n \"case checker class clocking config function generate interface module package \" +\n \"primitive program property specify sequence table task\"\n );\n\n // Opening/closing pairs\n var openClose = {};\n for (var keyword in blockKeywords) {\n openClose[keyword] = \"end\" + keyword;\n }\n openClose[\"begin\"] = \"end\";\n openClose[\"casex\"] = \"endcase\";\n openClose[\"casez\"] = \"endcase\";\n openClose[\"do\" ] = \"while\";\n openClose[\"fork\" ] = \"join;join_any;join_none\";\n openClose[\"covergroup\"] = \"endgroup\";\n\n for (var i in noIndentKeywords) {\n var keyword = noIndentKeywords[i];\n if (openClose[keyword]) {\n openClose[keyword] = undefined;\n }\n }\n\n // Keywords which open statements that are ended with a semi-colon\n var statementKeywords = words(\"always always_comb always_ff always_latch assert assign assume else export for foreach forever if import initial repeat while\");\n\n function tokenBase(stream, state) {\n var ch = stream.peek(), style;\n if (hooks[ch] && (style = hooks[ch](stream, state)) != false) return style;\n if (hooks.tokenBase && (style = hooks.tokenBase(stream, state)) != false)\n return style;\n\n if (/[,;:\\.]/.test(ch)) {\n curPunc = stream.next();\n return null;\n }\n if (isBracketChar.test(ch)) {\n curPunc = stream.next();\n return \"bracket\";\n }\n // Macros (tick-defines)\n if (ch == '`') {\n stream.next();\n if (stream.eatWhile(/[\\w\\$_]/)) {\n return \"def\";\n } else {\n return null;\n }\n }\n // System calls\n if (ch == '$') {\n stream.next();\n if (stream.eatWhile(/[\\w\\$_]/)) {\n return \"meta\";\n } else {\n return null;\n }\n }\n // Time literals\n if (ch == '#') {\n stream.next();\n stream.eatWhile(/[\\d_.]/);\n return \"def\";\n }\n // Strings\n if (ch == '\"') {\n stream.next();\n state.tokenize = tokenString(ch);\n return state.tokenize(stream, state);\n }\n // Comments\n if (ch == \"/\") {\n stream.next();\n if (stream.eat(\"*\")) {\n state.tokenize = tokenComment;\n return tokenComment(stream, state);\n }\n if (stream.eat(\"/\")) {\n stream.skipToEnd();\n return \"comment\";\n }\n stream.backUp(1);\n }\n\n // Numeric literals\n if (stream.match(realLiteral) ||\n stream.match(decimalLiteral) ||\n stream.match(binaryLiteral) ||\n stream.match(octLiteral) ||\n stream.match(hexLiteral) ||\n stream.match(unsignedNumber) ||\n stream.match(realLiteral)) {\n return \"number\";\n }\n\n // Operators\n if (stream.eatWhile(isOperatorChar)) {\n return \"meta\";\n }\n\n // Keywords / plain variables\n if (stream.eatWhile(/[\\w\\$_]/)) {\n var cur = stream.current();\n if (keywords[cur]) {\n if (openClose[cur]) {\n curPunc = \"newblock\";\n }\n if (statementKeywords[cur]) {\n curPunc = \"newstatement\";\n }\n curKeyword = cur;\n return \"keyword\";\n }\n return \"variable\";\n }\n\n stream.next();\n return null;\n }\n\n function tokenString(quote) {\n return function(stream, state) {\n var escaped = false, next, end = false;\n while ((next = stream.next()) != null) {\n if (next == quote && !escaped) {end = true; break;}\n escaped = !escaped && next == \"\\\\\";\n }\n if (end || !(escaped || multiLineStrings))\n state.tokenize = tokenBase;\n return \"string\";\n };\n }\n\n function tokenComment(stream, state) {\n var maybeEnd = false, ch;\n while (ch = stream.next()) {\n if (ch == \"/\" && maybeEnd) {\n state.tokenize = tokenBase;\n break;\n }\n maybeEnd = (ch == \"*\");\n }\n return \"comment\";\n }\n\n function Context(indented, column, type, align, prev) {\n this.indented = indented;\n this.column = column;\n this.type = type;\n this.align = align;\n this.prev = prev;\n }\n function pushContext(state, col, type) {\n var indent = state.indented;\n var c = new Context(indent, col, type, null, state.context);\n return state.context = c;\n }\n function popContext(state) {\n var t = state.context.type;\n if (t == \")\" || t == \"]\" || t == \"}\") {\n state.indented = state.context.indented;\n }\n return state.context = state.context.prev;\n }\n\n function isClosing(text, contextClosing) {\n if (text == contextClosing) {\n return true;\n } else {\n // contextClosing may be multiple keywords separated by ;\n var closingKeywords = contextClosing.split(\";\");\n for (var i in closingKeywords) {\n if (text == closingKeywords[i]) {\n return true;\n }\n }\n return false;\n }\n }\n\n function buildElectricInputRegEx() {\n // Reindentation should occur on any bracket char: {}()[]\n // or on a match of any of the block closing keywords, at\n // the end of a line\n var allClosings = [];\n for (var i in openClose) {\n if (openClose[i]) {\n var closings = openClose[i].split(\";\");\n for (var j in closings) {\n allClosings.push(closings[j]);\n }\n }\n }\n var re = new RegExp(\"[{}()\\\\[\\\\]]|(\" + allClosings.join(\"|\") + \")$\");\n return re;\n }\n\n // Interface\n return {\n name: \"verilog\",\n\n startState: function(indentUnit) {\n var state = {\n tokenize: null,\n context: new Context(-indentUnit, 0, \"top\", false),\n indented: 0,\n startOfLine: true\n };\n if (hooks.startState) hooks.startState(state);\n return state;\n },\n\n token: function(stream, state) {\n var ctx = state.context;\n if (stream.sol()) {\n if (ctx.align == null) ctx.align = false;\n state.indented = stream.indentation();\n state.startOfLine = true;\n }\n if (hooks.token) {\n // Call hook, with an optional return value of a style to override verilog styling.\n var style = hooks.token(stream, state);\n if (style !== undefined) {\n return style;\n }\n }\n if (stream.eatSpace()) return null;\n curPunc = null;\n curKeyword = null;\n var style = (state.tokenize || tokenBase)(stream, state);\n if (style == \"comment\" || style == \"meta\" || style == \"variable\") return style;\n if (ctx.align == null) ctx.align = true;\n\n if (curPunc == ctx.type) {\n popContext(state);\n } else if ((curPunc == \";\" && ctx.type == \"statement\") ||\n (ctx.type && isClosing(curKeyword, ctx.type))) {\n ctx = popContext(state);\n while (ctx && ctx.type == \"statement\") ctx = popContext(state);\n } else if (curPunc == \"{\") {\n pushContext(state, stream.column(), \"}\");\n } else if (curPunc == \"[\") {\n pushContext(state, stream.column(), \"]\");\n } else if (curPunc == \"(\") {\n pushContext(state, stream.column(), \")\");\n } else if (ctx && ctx.type == \"endcase\" && curPunc == \":\") {\n pushContext(state, stream.column(), \"statement\");\n } else if (curPunc == \"newstatement\") {\n pushContext(state, stream.column(), \"statement\");\n } else if (curPunc == \"newblock\") {\n if (curKeyword == \"function\" && ctx && (ctx.type == \"statement\" || ctx.type == \"endgroup\")) {\n // The 'function' keyword can appear in some other contexts where it actually does not\n // indicate a function (import/export DPI and covergroup definitions).\n // Do nothing in this case\n } else if (curKeyword == \"task\" && ctx && ctx.type == \"statement\") {\n // Same thing for task\n } else {\n var close = openClose[curKeyword];\n pushContext(state, stream.column(), close);\n }\n }\n\n state.startOfLine = false;\n return style;\n },\n\n indent: function(state, textAfter, cx) {\n if (state.tokenize != tokenBase && state.tokenize != null) return null;\n if (hooks.indent) {\n var fromHook = hooks.indent(state);\n if (fromHook >= 0) return fromHook;\n }\n var ctx = state.context, firstChar = textAfter && textAfter.charAt(0);\n if (ctx.type == \"statement\" && firstChar == \"}\") ctx = ctx.prev;\n var closing = false;\n var possibleClosing = textAfter.match(closingBracketOrWord);\n if (possibleClosing)\n closing = isClosing(possibleClosing[0], ctx.type);\n if (ctx.type == \"statement\") return ctx.indented + (firstChar == \"{\" ? 0 : statementIndentUnit || cx.unit);\n else if (closingBracket.test(ctx.type) && ctx.align && !dontAlignCalls) return ctx.column + (closing ? 0 : 1);\n else if (ctx.type == \")\" && !closing) return ctx.indented + (statementIndentUnit || cx.unit);\n else return ctx.indented + (closing ? 0 : cx.unit);\n },\n\n languageData: {\n indentOnInput: buildElectricInputRegEx(),\n commentTokens: {line: \"//\", block: {open: \"/*\", close: \"*/\"}}\n }\n };\n};\n\nexport const verilog = mkVerilog({})\n\n// TL-Verilog mode.\n// See tl-x.org for language spec.\n// See the mode in action at makerchip.com.\n// Contact: steve.hoover@redwoodeda.com\n\n// TLV Identifier prefixes.\n// Note that sign is not treated separately, so \"+/-\" versions of numeric identifiers\n// are included.\nvar tlvIdentifierStyle = {\n \"|\": \"link\",\n \">\": \"property\", // Should condition this off for > TLV 1c.\n \"$\": \"variable\",\n \"$$\": \"variable\",\n \"?$\": \"qualifier\",\n \"?*\": \"qualifier\",\n \"-\": \"contentSeparator\",\n \"/\": \"property\",\n \"/-\": \"property\",\n \"@\": \"variableName.special\",\n \"@-\": \"variableName.special\",\n \"@++\": \"variableName.special\",\n \"@+=\": \"variableName.special\",\n \"@+=-\": \"variableName.special\",\n \"@--\": \"variableName.special\",\n \"@-=\": \"variableName.special\",\n \"%+\": \"tag\",\n \"%-\": \"tag\",\n \"%\": \"tag\",\n \">>\": \"tag\",\n \"<<\": \"tag\",\n \"<>\": \"tag\",\n \"#\": \"tag\", // Need to choose a style for this.\n \"^\": \"attribute\",\n \"^^\": \"attribute\",\n \"^!\": \"attribute\",\n \"*\": \"variable\",\n \"**\": \"variable\",\n \"\\\\\": \"keyword\",\n \"\\\"\": \"comment\"\n};\n\n// Lines starting with these characters define scope (result in indentation).\nvar tlvScopePrefixChars = {\n \"/\": \"beh-hier\",\n \">\": \"beh-hier\",\n \"-\": \"phys-hier\",\n \"|\": \"pipe\",\n \"?\": \"when\",\n \"@\": \"stage\",\n \"\\\\\": \"keyword\"\n};\nvar tlvIndentUnit = 3;\nvar tlvTrackStatements = false;\nvar tlvIdentMatch = /^([~!@#\\$%\\^&\\*-\\+=\\?\\/\\\\\\|'\"<>]+)([\\d\\w_]*)/; // Matches an identifier.\n// Note that ':' is excluded, because of it's use in [:].\nvar tlvLineIndentationMatch = /^[! ] */;\nvar tlvCommentMatch = /^\\/[\\/\\*]/;\n\nexport const tlv = mkVerilog({\n hooks: {\n electricInput: false,\n\n // Return undefined for verilog tokenizing, or style for TLV token (null not used).\n // Standard CM styles are used for most formatting, but some TL-Verilog-specific highlighting\n // can be enabled with the definition of cm-tlv-* styles, including highlighting for:\n // - M4 tokens\n // - TLV scope indentation\n // - Statement delimitation (enabled by tlvTrackStatements)\n token: function(stream, state) {\n var style = undefined;\n var match; // Return value of pattern matches.\n\n // Set highlighting mode based on code region (TLV or SV).\n if (stream.sol() && ! state.tlvInBlockComment) {\n // Process region.\n if (stream.peek() == '\\\\') {\n style = \"def\";\n stream.skipToEnd();\n if (stream.string.match(/\\\\SV/)) {\n state.tlvCodeActive = false;\n } else if (stream.string.match(/\\\\TLV/)){\n state.tlvCodeActive = true;\n }\n }\n // Correct indentation in the face of a line prefix char.\n if (state.tlvCodeActive && stream.pos == 0 &&\n (state.indented == 0) && (match = stream.match(tlvLineIndentationMatch, false))) {\n state.indented = match[0].length;\n }\n\n // Compute indentation state:\n // o Auto indentation on next line\n // o Indentation scope styles\n var indented = state.indented;\n var depth = indented / tlvIndentUnit;\n if (depth <= state.tlvIndentationStyle.length) {\n // not deeper than current scope\n\n var blankline = stream.string.length == indented;\n var chPos = depth * tlvIndentUnit;\n if (chPos < stream.string.length) {\n var bodyString = stream.string.slice(chPos);\n var ch = bodyString[0];\n if (tlvScopePrefixChars[ch] && ((match = bodyString.match(tlvIdentMatch)) &&\n tlvIdentifierStyle[match[1]])) {\n // This line begins scope.\n // Next line gets indented one level.\n indented += tlvIndentUnit;\n // Style the next level of indentation (except non-region keyword identifiers,\n // which are statements themselves)\n if (!(ch == \"\\\\\" && chPos > 0)) {\n state.tlvIndentationStyle[depth] = tlvScopePrefixChars[ch];\n if (tlvTrackStatements) {state.statementComment = false;}\n depth++;\n }\n }\n }\n // Clear out deeper indentation levels unless line is blank.\n if (!blankline) {\n while (state.tlvIndentationStyle.length > depth) {\n state.tlvIndentationStyle.pop();\n }\n }\n }\n // Set next level of indentation.\n state.tlvNextIndent = indented;\n }\n\n if (state.tlvCodeActive) {\n // Highlight as TLV.\n\n var beginStatement = false;\n if (tlvTrackStatements) {\n // This starts a statement if the position is at the scope level\n // and we're not within a statement leading comment.\n beginStatement =\n (stream.peek() != \" \") && // not a space\n (style === undefined) && // not a region identifier\n !state.tlvInBlockComment && // not in block comment\n //!stream.match(tlvCommentMatch, false) && // not comment start\n (stream.column() == state.tlvIndentationStyle.length * tlvIndentUnit); // at scope level\n if (beginStatement) {\n if (state.statementComment) {\n // statement already started by comment\n beginStatement = false;\n }\n state.statementComment =\n stream.match(tlvCommentMatch, false); // comment start\n }\n }\n\n var match;\n if (style !== undefined) {\n } else if (state.tlvInBlockComment) {\n // In a block comment.\n if (stream.match(/^.*?\\*\\//)) {\n // Exit block comment.\n state.tlvInBlockComment = false;\n if (tlvTrackStatements && !stream.eol()) {\n // Anything after comment is assumed to be real statement content.\n state.statementComment = false;\n }\n } else {\n stream.skipToEnd();\n }\n style = \"comment\";\n } else if ((match = stream.match(tlvCommentMatch)) && !state.tlvInBlockComment) {\n // Start comment.\n if (match[0] == \"//\") {\n // Line comment.\n stream.skipToEnd();\n } else {\n // Block comment.\n state.tlvInBlockComment = true;\n }\n style = \"comment\";\n } else if (match = stream.match(tlvIdentMatch)) {\n // looks like an identifier (or identifier prefix)\n var prefix = match[1];\n var mnemonic = match[2];\n if (// is identifier prefix\n tlvIdentifierStyle.hasOwnProperty(prefix) &&\n // has mnemonic or we're at the end of the line (maybe it hasn't been typed yet)\n (mnemonic.length > 0 || stream.eol())) {\n style = tlvIdentifierStyle[prefix];\n } else {\n // Just swallow one character and try again.\n // This enables subsequent identifier match with preceding symbol character, which\n // is legal within a statement. (Eg, !$reset). It also enables detection of\n // comment start with preceding symbols.\n stream.backUp(stream.current().length - 1);\n }\n } else if (stream.match(/^\\t+/)) {\n // Highlight tabs, which are illegal.\n style = \"invalid\";\n } else if (stream.match(/^[\\[\\]{}\\(\\);\\:]+/)) {\n // [:], (), {}, ;.\n style = \"meta\";\n } else if (match = stream.match(/^[mM]4([\\+_])?[\\w\\d_]*/)) {\n // m4 pre proc\n style = (match[1] == \"+\") ? \"keyword.special\" : \"keyword\";\n } else if (stream.match(/^ +/)){\n // Skip over spaces.\n if (stream.eol()) {\n // Trailing spaces.\n style = \"error\";\n }\n } else if (stream.match(/^[\\w\\d_]+/)) {\n // alpha-numeric token.\n style = \"number\";\n } else {\n // Eat the next char w/ no formatting.\n stream.next();\n }\n } else {\n if (stream.match(/^[mM]4([\\w\\d_]*)/)) {\n // m4 pre proc\n style = \"keyword\";\n }\n }\n return style;\n },\n\n indent: function(state) {\n return (state.tlvCodeActive == true) ? state.tlvNextIndent : -1;\n },\n\n startState: function(state) {\n state.tlvIndentationStyle = []; // Styles to use for each level of indentation.\n state.tlvCodeActive = true; // True when we're in a TLV region (and at beginning of file).\n state.tlvNextIndent = -1; // The number of spaces to autoindent the next line if tlvCodeActive.\n state.tlvInBlockComment = false; // True inside /**/ comment.\n if (tlvTrackStatements) {\n state.statementComment = false; // True inside a statement's header comment.\n }\n }\n\n }\n});\n"],"names":["mkVerilog","parserConfig","statementIndentUnit","dontAlignCalls","noIndentKeywords","multiLineStrings","hooks","words","str","obj","i","keywords","isOperatorChar","isBracketChar","unsignedNumber","decimalLiteral","binaryLiteral","octLiteral","hexLiteral","realLiteral","closingBracketOrWord","closingBracket","curPunc","curKeyword","blockKeywords","openClose","keyword","statementKeywords","tokenBase","stream","state","ch","style","tokenString","tokenComment","cur","quote","escaped","next","end","maybeEnd","Context","indented","column","type","align","prev","pushContext","col","indent","c","popContext","t","isClosing","text","contextClosing","closingKeywords","buildElectricInputRegEx","allClosings","closings","j","re","indentUnit","ctx","close","textAfter","cx","fromHook","firstChar","closing","possibleClosing","verilog","tlvIdentifierStyle","tlvScopePrefixChars","tlvIndentUnit","tlvIdentMatch","tlvLineIndentationMatch","tlvCommentMatch","tlv","match","depth","blankline","chPos","bodyString","prefix","mnemonic"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function f(e){for(var t={},n=e.split(","),r=0;r<n.length;++r){var i=n[r].toUpperCase(),l=n[r].charAt(0).toUpperCase()+n[r].slice(1);t[n[r]]=!0,t[i]=!0,t[l]=!0}return t}function p(e){return e.eatWhile(/[\w\$_]/),"meta"}var k=f("null"),s={"`":p,$:p},g=!1,y=f("abs,access,after,alias,all,and,architecture,array,assert,attribute,begin,block,body,buffer,bus,case,component,configuration,constant,disconnect,downto,else,elsif,end,end block,end case,end component,end for,end generate,end if,end loop,end process,end record,end units,entity,exit,file,for,function,generate,generic,generic map,group,guarded,if,impure,in,inertial,inout,is,label,library,linkage,literal,loop,map,mod,nand,new,next,nor,null,of,on,open,or,others,out,package,package body,port,port map,postponed,procedure,process,pure,range,record,register,reject,rem,report,return,rol,ror,select,severity,signal,sla,sll,sra,srl,subtype,then,to,transport,type,unaffected,units,until,use,variable,wait,when,while,with,xnor,xor"),v=f("architecture,entity,begin,case,port,else,elsif,end,for,function,if"),d=/[&|~><!\)\(*#%@+\/=?\:;}{,\.\^\-\[\]]/,o;function c(e,t){var n=e.next();if(s[n]){var r=s[n](e,t);if(r!==!1)return r}if(n=='"')return t.tokenize=m(n),t.tokenize(e,t);if(n=="'")return t.tokenize=b(n),t.tokenize(e,t);if(/[\[\]{}\(\),;\:\.]/.test(n))return o=n,null;if(/[\d']/.test(n))return e.eatWhile(/[\w\.']/),"number";if(n=="-"&&e.eat("-"))return e.skipToEnd(),"comment";if(d.test(n))return e.eatWhile(d),"operator";e.eatWhile(/[\w\$_]/);var i=e.current();return y.propertyIsEnumerable(i.toLowerCase())?(v.propertyIsEnumerable(i)&&(o="newstatement"),"keyword"):k.propertyIsEnumerable(i)?"atom":"variable"}function b(e){return function(t,n){for(var r=!1,i,l=!1;(i=t.next())!=null;){if(i==e&&!r){l=!0;break}r=!r&&i=="--"}return(l||!(r||g))&&(n.tokenize=c),"string"}}function m(e){return function(t,n){for(var r=!1,i,l=!1;(i=t.next())!=null;){if(i==e&&!r){l=!0;break}r=!r&&i=="--"}return(l||!(r||g))&&(n.tokenize=c),"string.special"}}function h(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function a(e,t,n){return e.context=new h(e.indented,t,n,null,e.context)}function u(e){var t=e.context.type;return(t==")"||t=="]"||t=="}")&&(e.indented=e.context.indented),e.context=e.context.prev}const w={name:"vhdl",startState:function(e){return{tokenize:null,context:new h(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(n.align==null&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;o=null;var r=(t.tokenize||c)(e,t);if(r=="comment"||r=="meta")return r;if(n.align==null&&(n.align=!0),(o==";"||o==":")&&n.type=="statement")u(t);else if(o=="{")a(t,e.column(),"}");else if(o=="[")a(t,e.column(),"]");else if(o=="(")a(t,e.column(),")");else if(o=="}"){for(;n.type=="statement";)n=u(t);for(n.type=="}"&&(n=u(t));n.type=="statement";)n=u(t)}else o==n.type?u(t):(n.type=="}"||n.type=="top"||n.type=="statement"&&o=="newstatement")&&a(t,e.column(),"statement");return t.startOfLine=!1,r},indent:function(e,t,n){if(e.tokenize!=c&&e.tokenize!=null)return 0;var r=t&&t.charAt(0),i=e.context,l=r==i.type;return i.type=="statement"?i.indented+(r=="{"?0:n.unit):i.align?i.column+(l?0:1):i.indented+(l?0:n.unit)},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"--"}}};export{w as vhdl};
|
|
2
|
+
//# sourceMappingURL=vhdl-lSbBsy5d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vhdl-lSbBsy5d.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/vhdl.js"],"sourcesContent":["function words(str) {\n var obj = {}, words = str.split(\",\");\n for (var i = 0; i < words.length; ++i) {\n var allCaps = words[i].toUpperCase();\n var firstCap = words[i].charAt(0).toUpperCase() + words[i].slice(1);\n obj[words[i]] = true;\n obj[allCaps] = true;\n obj[firstCap] = true;\n }\n return obj;\n}\n\nfunction metaHook(stream) {\n stream.eatWhile(/[\\w\\$_]/);\n return \"meta\";\n}\n\nvar atoms = words(\"null\"),\n hooks = {\"`\": metaHook, \"$\": metaHook},\n multiLineStrings = false;\n\nvar keywords = words(\"abs,access,after,alias,all,and,architecture,array,assert,attribute,begin,block,\" +\n \"body,buffer,bus,case,component,configuration,constant,disconnect,downto,else,elsif,end,end block,end case,\" +\n \"end component,end for,end generate,end if,end loop,end process,end record,end units,entity,exit,file,for,\" +\n \"function,generate,generic,generic map,group,guarded,if,impure,in,inertial,inout,is,label,library,linkage,\" +\n \"literal,loop,map,mod,nand,new,next,nor,null,of,on,open,or,others,out,package,package body,port,port map,\" +\n \"postponed,procedure,process,pure,range,record,register,reject,rem,report,return,rol,ror,select,severity,signal,\" +\n \"sla,sll,sra,srl,subtype,then,to,transport,type,unaffected,units,until,use,variable,wait,when,while,with,xnor,xor\");\n\nvar blockKeywords = words(\"architecture,entity,begin,case,port,else,elsif,end,for,function,if\");\n\nvar isOperatorChar = /[&|~><!\\)\\(*#%@+\\/=?\\:;}{,\\.\\^\\-\\[\\]]/;\nvar curPunc;\n\nfunction tokenBase(stream, state) {\n var ch = stream.next();\n if (hooks[ch]) {\n var result = hooks[ch](stream, state);\n if (result !== false) return result;\n }\n if (ch == '\"') {\n state.tokenize = tokenString2(ch);\n return state.tokenize(stream, state);\n }\n if (ch == \"'\") {\n state.tokenize = tokenString(ch);\n return state.tokenize(stream, state);\n }\n if (/[\\[\\]{}\\(\\),;\\:\\.]/.test(ch)) {\n curPunc = ch;\n return null;\n }\n if (/[\\d']/.test(ch)) {\n stream.eatWhile(/[\\w\\.']/);\n return \"number\";\n }\n if (ch == \"-\") {\n if (stream.eat(\"-\")) {\n stream.skipToEnd();\n return \"comment\";\n }\n }\n if (isOperatorChar.test(ch)) {\n stream.eatWhile(isOperatorChar);\n return \"operator\";\n }\n stream.eatWhile(/[\\w\\$_]/);\n var cur = stream.current();\n if (keywords.propertyIsEnumerable(cur.toLowerCase())) {\n if (blockKeywords.propertyIsEnumerable(cur)) curPunc = \"newstatement\";\n return \"keyword\";\n }\n if (atoms.propertyIsEnumerable(cur)) return \"atom\";\n return \"variable\";\n}\n\nfunction tokenString(quote) {\n return function(stream, state) {\n var escaped = false, next, end = false;\n while ((next = stream.next()) != null) {\n if (next == quote && !escaped) {end = true; break;}\n escaped = !escaped && next == \"--\";\n }\n if (end || !(escaped || multiLineStrings))\n state.tokenize = tokenBase;\n return \"string\";\n };\n}\nfunction tokenString2(quote) {\n return function(stream, state) {\n var escaped = false, next, end = false;\n while ((next = stream.next()) != null) {\n if (next == quote && !escaped) {end = true; break;}\n escaped = !escaped && next == \"--\";\n }\n if (end || !(escaped || multiLineStrings))\n state.tokenize = tokenBase;\n return \"string.special\";\n };\n}\n\nfunction Context(indented, column, type, align, prev) {\n this.indented = indented;\n this.column = column;\n this.type = type;\n this.align = align;\n this.prev = prev;\n}\nfunction pushContext(state, col, type) {\n return state.context = new Context(state.indented, col, type, null, state.context);\n}\nfunction popContext(state) {\n var t = state.context.type;\n if (t == \")\" || t == \"]\" || t == \"}\")\n state.indented = state.context.indented;\n return state.context = state.context.prev;\n}\n\n// Interface\nexport const vhdl = {\n name: \"vhdl\",\n startState: function(indentUnit) {\n return {\n tokenize: null,\n context: new Context(-indentUnit, 0, \"top\", false),\n indented: 0,\n startOfLine: true\n };\n },\n\n token: function(stream, state) {\n var ctx = state.context;\n if (stream.sol()) {\n if (ctx.align == null) ctx.align = false;\n state.indented = stream.indentation();\n state.startOfLine = true;\n }\n if (stream.eatSpace()) return null;\n curPunc = null;\n var style = (state.tokenize || tokenBase)(stream, state);\n if (style == \"comment\" || style == \"meta\") return style;\n if (ctx.align == null) ctx.align = true;\n\n if ((curPunc == \";\" || curPunc == \":\") && ctx.type == \"statement\") popContext(state);\n else if (curPunc == \"{\") pushContext(state, stream.column(), \"}\");\n else if (curPunc == \"[\") pushContext(state, stream.column(), \"]\");\n else if (curPunc == \"(\") pushContext(state, stream.column(), \")\");\n else if (curPunc == \"}\") {\n while (ctx.type == \"statement\") ctx = popContext(state);\n if (ctx.type == \"}\") ctx = popContext(state);\n while (ctx.type == \"statement\") ctx = popContext(state);\n }\n else if (curPunc == ctx.type) popContext(state);\n else if (ctx.type == \"}\" || ctx.type == \"top\" || (ctx.type == \"statement\" && curPunc == \"newstatement\"))\n pushContext(state, stream.column(), \"statement\");\n state.startOfLine = false;\n return style;\n },\n\n indent: function(state, textAfter, cx) {\n if (state.tokenize != tokenBase && state.tokenize != null) return 0;\n var firstChar = textAfter && textAfter.charAt(0), ctx = state.context, closing = firstChar == ctx.type;\n if (ctx.type == \"statement\") return ctx.indented + (firstChar == \"{\" ? 0 : cx.unit);\n else if (ctx.align) return ctx.column + (closing ? 0 : 1);\n else return ctx.indented + (closing ? 0 : cx.unit);\n },\n\n languageData: {\n indentOnInput: /^\\s*[{}]$/,\n commentTokens: {line: \"--\"}\n }\n}\n"],"names":["words","str","obj","i","allCaps","firstCap","metaHook","stream","atoms","hooks","multiLineStrings","keywords","blockKeywords","isOperatorChar","curPunc","tokenBase","state","ch","result","tokenString2","tokenString","cur","quote","escaped","next","end","Context","indented","column","type","align","prev","pushContext","col","popContext","vhdl","indentUnit","ctx","style","textAfter","cx","firstChar","closing"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function a(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var l=["Clamp","Constructor","EnforceRange","Exposed","ImplicitThis","Global","PrimaryGlobal","LegacyArrayClass","LegacyUnenumerableNamedProperties","LenientThis","NamedConstructor","NewObject","NoInterfaceObject","OverrideBuiltins","PutForwards","Replaceable","SameObject","TreatNonObjectAsNull","TreatNullAs","EmptyString","Unforgeable","Unscopeable"],u=a(l),o=["unsigned","short","long","unrestricted","float","double","boolean","byte","octet","Promise","ArrayBuffer","DataView","Int8Array","Int16Array","Int32Array","Uint8Array","Uint16Array","Uint32Array","Uint8ClampedArray","Float32Array","Float64Array","ByteString","DOMString","USVString","sequence","object","RegExp","Error","DOMException","FrozenArray","any","void"],m=a(o),c=["attribute","callback","const","deleter","dictionary","enum","getter","implements","inherit","interface","iterable","legacycaller","maplike","partial","required","serializer","setlike","setter","static","stringifier","typedef","optional","readonly","or"],s=a(c),f=["true","false","Infinity","NaN","null"],y=a(f),d=["callback","dictionary","enum","interface"],p=a(d),b=["typedef"],v=a(b),A=/^[:<=>?]/,g=/^-?([1-9][0-9]*|0[Xx][0-9A-Fa-f]+|0[0-7]*)/,h=/^-?(([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([Ee][+-]?[0-9]+)?|[0-9]+[Ee][+-]?[0-9]+)/,i=/^_?[A-Za-z][0-9A-Z_a-z-]*/,D=/^_?[A-Za-z][0-9A-Z_a-z-]*(?=\s*;)/,k=/^"[^"]*"/,E=/^\/\*.*?\*\//,C=/^\/\*.*/,w=/^.*?\*\//;function N(e,r){if(e.eatSpace())return null;if(r.inComment)return e.match(w)?(r.inComment=!1,"comment"):(e.skipToEnd(),"comment");if(e.match("//"))return e.skipToEnd(),"comment";if(e.match(E))return"comment";if(e.match(C))return r.inComment=!0,"comment";if(e.match(/^-?[0-9\.]/,!1)&&(e.match(g)||e.match(h)))return"number";if(e.match(k))return"string";if(r.startDef&&e.match(i))return"def";if(r.endDef&&e.match(D))return r.endDef=!1,"def";if(e.match(s))return"keyword";if(e.match(m)){var t=r.lastToken,n=(e.match(/^\s*(.+?)\b/,!1)||[])[1];return t===":"||t==="implements"||n==="implements"||n==="="?"builtin":"type"}return e.match(u)?"builtin":e.match(y)?"atom":e.match(i)?"variable":e.match(A)?"operator":(e.next(),null)}const S={name:"webidl",startState:function(){return{inComment:!1,lastToken:"",startDef:!1,endDef:!1}},token:function(e,r){var t=N(e,r);if(t){var n=e.current();r.lastToken=n,t==="keyword"?(r.startDef=p.test(n),r.endDef=r.endDef||v.test(n)):r.startDef=!1}return t},languageData:{autocomplete:l.concat(o).concat(c).concat(f)}};export{S as webIDL};
|
|
2
|
+
//# sourceMappingURL=webidl-ZXfAyPTL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webidl-ZXfAyPTL.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/webidl.js"],"sourcesContent":["function wordRegexp(words) {\n return new RegExp(\"^((\" + words.join(\")|(\") + \"))\\\\b\");\n};\n\nvar builtinArray = [\n \"Clamp\",\n \"Constructor\",\n \"EnforceRange\",\n \"Exposed\",\n \"ImplicitThis\",\n \"Global\", \"PrimaryGlobal\",\n \"LegacyArrayClass\",\n \"LegacyUnenumerableNamedProperties\",\n \"LenientThis\",\n \"NamedConstructor\",\n \"NewObject\",\n \"NoInterfaceObject\",\n \"OverrideBuiltins\",\n \"PutForwards\",\n \"Replaceable\",\n \"SameObject\",\n \"TreatNonObjectAsNull\",\n \"TreatNullAs\",\n \"EmptyString\",\n \"Unforgeable\",\n \"Unscopeable\"\n];\nvar builtins = wordRegexp(builtinArray);\n\nvar typeArray = [\n \"unsigned\", \"short\", \"long\", // UnsignedIntegerType\n \"unrestricted\", \"float\", \"double\", // UnrestrictedFloatType\n \"boolean\", \"byte\", \"octet\", // Rest of PrimitiveType\n \"Promise\", // PromiseType\n \"ArrayBuffer\", \"DataView\", \"Int8Array\", \"Int16Array\", \"Int32Array\",\n \"Uint8Array\", \"Uint16Array\", \"Uint32Array\", \"Uint8ClampedArray\",\n \"Float32Array\", \"Float64Array\", // BufferRelatedType\n \"ByteString\", \"DOMString\", \"USVString\", \"sequence\", \"object\", \"RegExp\",\n \"Error\", \"DOMException\", \"FrozenArray\", // Rest of NonAnyType\n \"any\", // Rest of SingleType\n \"void\" // Rest of ReturnType\n];\nvar types = wordRegexp(typeArray);\n\nvar keywordArray = [\n \"attribute\", \"callback\", \"const\", \"deleter\", \"dictionary\", \"enum\", \"getter\",\n \"implements\", \"inherit\", \"interface\", \"iterable\", \"legacycaller\", \"maplike\",\n \"partial\", \"required\", \"serializer\", \"setlike\", \"setter\", \"static\",\n \"stringifier\", \"typedef\", // ArgumentNameKeyword except\n // \"unrestricted\"\n \"optional\", \"readonly\", \"or\"\n];\nvar keywords = wordRegexp(keywordArray);\n\nvar atomArray = [\n \"true\", \"false\", // BooleanLiteral\n \"Infinity\", \"NaN\", // FloatLiteral\n \"null\" // Rest of ConstValue\n];\nvar atoms = wordRegexp(atomArray);\n\nvar startDefArray = [\"callback\", \"dictionary\", \"enum\", \"interface\"];\nvar startDefs = wordRegexp(startDefArray);\n\nvar endDefArray = [\"typedef\"];\nvar endDefs = wordRegexp(endDefArray);\n\nvar singleOperators = /^[:<=>?]/;\nvar integers = /^-?([1-9][0-9]*|0[Xx][0-9A-Fa-f]+|0[0-7]*)/;\nvar floats = /^-?(([0-9]+\\.[0-9]*|[0-9]*\\.[0-9]+)([Ee][+-]?[0-9]+)?|[0-9]+[Ee][+-]?[0-9]+)/;\nvar identifiers = /^_?[A-Za-z][0-9A-Z_a-z-]*/;\nvar identifiersEnd = /^_?[A-Za-z][0-9A-Z_a-z-]*(?=\\s*;)/;\nvar strings = /^\"[^\"]*\"/;\nvar multilineComments = /^\\/\\*.*?\\*\\//;\nvar multilineCommentsStart = /^\\/\\*.*/;\nvar multilineCommentsEnd = /^.*?\\*\\//;\n\nfunction readToken(stream, state) {\n // whitespace\n if (stream.eatSpace()) return null;\n\n // comment\n if (state.inComment) {\n if (stream.match(multilineCommentsEnd)) {\n state.inComment = false;\n return \"comment\";\n }\n stream.skipToEnd();\n return \"comment\";\n }\n if (stream.match(\"//\")) {\n stream.skipToEnd();\n return \"comment\";\n }\n if (stream.match(multilineComments)) return \"comment\";\n if (stream.match(multilineCommentsStart)) {\n state.inComment = true;\n return \"comment\";\n }\n\n // integer and float\n if (stream.match(/^-?[0-9\\.]/, false)) {\n if (stream.match(integers) || stream.match(floats)) return \"number\";\n }\n\n // string\n if (stream.match(strings)) return \"string\";\n\n // identifier\n if (state.startDef && stream.match(identifiers)) return \"def\";\n\n if (state.endDef && stream.match(identifiersEnd)) {\n state.endDef = false;\n return \"def\";\n }\n\n if (stream.match(keywords)) return \"keyword\";\n\n if (stream.match(types)) {\n var lastToken = state.lastToken;\n var nextToken = (stream.match(/^\\s*(.+?)\\b/, false) || [])[1];\n\n if (lastToken === \":\" || lastToken === \"implements\" ||\n nextToken === \"implements\" || nextToken === \"=\") {\n // Used as identifier\n return \"builtin\";\n } else {\n // Used as type\n return \"type\";\n }\n }\n\n if (stream.match(builtins)) return \"builtin\";\n if (stream.match(atoms)) return \"atom\";\n if (stream.match(identifiers)) return \"variable\";\n\n // other\n if (stream.match(singleOperators)) return \"operator\";\n\n // unrecognized\n stream.next();\n return null;\n};\n\nexport const webIDL = {\n name: \"webidl\",\n startState: function() {\n return {\n // Is in multiline comment\n inComment: false,\n // Last non-whitespace, matched token\n lastToken: \"\",\n // Next token is a definition\n startDef: false,\n // Last token of the statement is a definition\n endDef: false\n };\n },\n token: function(stream, state) {\n var style = readToken(stream, state);\n\n if (style) {\n var cur = stream.current();\n state.lastToken = cur;\n if (style === \"keyword\") {\n state.startDef = startDefs.test(cur);\n state.endDef = state.endDef || endDefs.test(cur);\n } else {\n state.startDef = false;\n }\n }\n\n return style;\n },\n\n languageData: {\n autocomplete: builtinArray.concat(typeArray).concat(keywordArray).concat(atomArray)\n }\n};\n"],"names":["wordRegexp","words","builtinArray","builtins","typeArray","types","keywordArray","keywords","atomArray","atoms","startDefArray","startDefs","endDefArray","endDefs","singleOperators","integers","floats","identifiers","identifiersEnd","strings","multilineComments","multilineCommentsStart","multilineCommentsEnd","readToken","stream","state","lastToken","nextToken","webIDL","style","cur"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var d=function(){function e(w){return{type:w,style:"keyword"}}for(var n=e("operator"),t={type:"atom",style:"atom"},i={type:"punctuation",style:null},o={type:"axis_specifier",style:"qualifier"},l={",":i},p=["after","all","allowing","ancestor","ancestor-or-self","any","array","as","ascending","at","attribute","base-uri","before","boundary-space","by","case","cast","castable","catch","child","collation","comment","construction","contains","content","context","copy","copy-namespaces","count","decimal-format","declare","default","delete","descendant","descendant-or-self","descending","diacritics","different","distance","document","document-node","element","else","empty","empty-sequence","encoding","end","entire","every","exactly","except","external","first","following","following-sibling","for","from","ftand","ftnot","ft-option","ftor","function","fuzzy","greatest","group","if","import","in","inherit","insensitive","insert","instance","intersect","into","invoke","is","item","language","last","lax","least","let","levels","lowercase","map","modify","module","most","namespace","next","no","node","nodes","no-inherit","no-preserve","not","occurs","of","only","option","order","ordered","ordering","paragraph","paragraphs","parent","phrase","preceding","preceding-sibling","preserve","previous","processing-instruction","relationship","rename","replace","return","revalidation","same","satisfies","schema","schema-attribute","schema-element","score","self","sensitive","sentence","sentences","sequence","skip","sliding","some","stable","start","stemming","stop","strict","strip","switch","text","then","thesaurus","times","to","transform","treat","try","tumbling","type","typeswitch","union","unordered","update","updating","uppercase","using","validate","value","variable","version","weight","when","where","wildcards","window","with","without","word","words","xquery"],r=0,a=p.length;r<a;r++)l[p[r]]=e(p[r]);for(var g=["xs:anyAtomicType","xs:anySimpleType","xs:anyType","xs:anyURI","xs:base64Binary","xs:boolean","xs:byte","xs:date","xs:dateTime","xs:dateTimeStamp","xs:dayTimeDuration","xs:decimal","xs:double","xs:duration","xs:ENTITIES","xs:ENTITY","xs:float","xs:gDay","xs:gMonth","xs:gMonthDay","xs:gYear","xs:gYearMonth","xs:hexBinary","xs:ID","xs:IDREF","xs:IDREFS","xs:int","xs:integer","xs:item","xs:java","xs:language","xs:long","xs:Name","xs:NCName","xs:negativeInteger","xs:NMTOKEN","xs:NMTOKENS","xs:nonNegativeInteger","xs:nonPositiveInteger","xs:normalizedString","xs:NOTATION","xs:numeric","xs:positiveInteger","xs:precisionDecimal","xs:QName","xs:short","xs:string","xs:time","xs:token","xs:unsignedByte","xs:unsignedInt","xs:unsignedLong","xs:unsignedShort","xs:untyped","xs:untypedAtomic","xs:yearMonthDuration"],r=0,a=g.length;r<a;r++)l[g[r]]=t;for(var f=["eq","ne","lt","le","gt","ge",":=","=",">",">=","<","<=",".","|","?","and","or","div","idiv","mod","*","/","+","-"],r=0,a=f.length;r<a;r++)l[f[r]]=n;for(var v=["self::","attribute::","child::","descendant::","descendant-or-self::","parent::","ancestor::","ancestor-or-self::","following::","preceding::","following-sibling::","preceding-sibling::"],r=0,a=v.length;r<a;r++)l[v[r]]=o;return l}();function x(e,n,t){return n.tokenize=t,t(e,n)}function u(e,n){var t=e.next(),i=!1,o=_(e);if(t=="<"){if(e.match("!--",!0))return x(e,n,N);if(e.match("![CDATA",!1))return n.tokenize=E,"tag";if(e.match("?",!1))return x(e,n,A);var l=e.eat("/");e.eatSpace();for(var p="",r;r=e.eat(/[^\s\u00a0=<>\"\'\/?]/);)p+=r;return x(e,n,S(p,l))}else{if(t=="{")return s(n,{type:"codeblock"}),null;if(t=="}")return c(n),null;if(b(n))return t==">"?"tag":t=="/"&&e.eat(">")?(c(n),"tag"):"variable";if(/\d/.test(t))return e.match(/^\d*(?:\.\d*)?(?:E[+\-]?\d+)?/),"atom";if(t==="("&&e.eat(":"))return s(n,{type:"comment"}),x(e,n,z);if(!o&&(t==='"'||t==="'"))return m(e,n,t);if(t==="$")return x(e,n,T);if(t===":"&&e.eat("="))return"keyword";if(t==="(")return s(n,{type:"paren"}),null;if(t===")")return c(n),null;if(t==="[")return s(n,{type:"bracket"}),null;if(t==="]")return c(n),null;var a=d.propertyIsEnumerable(t)&&d[t];if(o&&t==='"')for(;e.next()!=='"';);if(o&&t==="'")for(;e.next()!=="'";);a||e.eatWhile(/[\w\$_-]/);var g=e.eat(":");!e.eat(":")&&g&&e.eatWhile(/[\w\$_-]/),e.match(/^[ \t]*\(/,!1)&&(i=!0);var f=e.current();return a=d.propertyIsEnumerable(f)&&d[f],i&&!a&&(a={type:"function_call",style:"def"}),D(n)?(c(n),"variable"):((f=="element"||f=="attribute"||a.type=="axis_specifier")&&s(n,{type:"xmlconstructor"}),a?a.style:"variable")}}function z(e,n){for(var t=!1,i=!1,o=0,l;l=e.next();){if(l==")"&&t)if(o>0)o--;else{c(n);break}else l==":"&&i&&o++;t=l==":",i=l=="("}return"comment"}function I(e,n){return function(t,i){for(var o;o=t.next();)if(o==e){c(i),n&&(i.tokenize=n);break}else if(t.match("{",!1)&&h(i))return s(i,{type:"codeblock"}),i.tokenize=u,"string";return"string"}}function m(e,n,t,i){let o=I(t,i);return s(n,{type:"string",name:t,tokenize:o}),x(e,n,o)}function T(e,n){var t=/[\w\$_-]/;if(e.eat('"')){for(;e.next()!=='"';);e.eat(":")}else e.eatWhile(t),e.match(":=",!1)||e.eat(":");return e.eatWhile(t),n.tokenize=u,"variable"}function S(e,n){return function(t,i){if(t.eatSpace(),n&&t.eat(">"))return c(i),i.tokenize=u,"tag";if(t.eat("/")||s(i,{type:"tag",name:e,tokenize:u}),t.eat(">"))i.tokenize=u;else return i.tokenize=y,"tag";return"tag"}}function y(e,n){var t=e.next();return t=="/"&&e.eat(">")?(h(n)&&c(n),b(n)&&c(n),"tag"):t==">"?(h(n)&&c(n),"tag"):t=="="?null:t=='"'||t=="'"?m(e,n,t,y):(h(n)||s(n,{type:"attribute",tokenize:y}),e.eat(/[a-zA-Z_:]/),e.eatWhile(/[-a-zA-Z0-9_:.]/),e.eatSpace(),(e.match(">",!1)||e.match("/",!1))&&(c(n),n.tokenize=u),"attribute")}function N(e,n){for(var t;t=e.next();)if(t=="-"&&e.match("->",!0))return n.tokenize=u,"comment"}function E(e,n){for(var t;t=e.next();)if(t=="]"&&e.match("]",!0))return n.tokenize=u,"comment"}function A(e,n){for(var t;t=e.next();)if(t=="?"&&e.match(">",!0))return n.tokenize=u,"processingInstruction"}function b(e){return k(e,"tag")}function h(e){return k(e,"attribute")}function D(e){return k(e,"xmlconstructor")}function _(e){return e.current()==='"'?e.match(/^[^\"]+\"\:/,!1):e.current()==="'"?e.match(/^[^\"]+\'\:/,!1):!1}function k(e,n){return e.stack.length&&e.stack[e.stack.length-1].type==n}function s(e,n){e.stack.push(n)}function c(e){e.stack.pop();var n=e.stack.length&&e.stack[e.stack.length-1].tokenize;e.tokenize=n||u}const C={name:"xquery",startState:function(){return{tokenize:u,cc:[],stack:[]}},token:function(e,n){if(e.eatSpace())return null;var t=n.tokenize(e,n);return t},languageData:{commentTokens:{block:{open:"(:",close:":)"}}}};export{C as xQuery};
|
|
2
|
+
//# sourceMappingURL=xquery-CQfU5ijd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xquery-CQfU5ijd.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/xquery.js"],"sourcesContent":["// The keywords object is set to the result of this self executing\n// function. Each keyword is a property of the keywords object whose\n// value is {type: atype, style: astyle}\nvar keywords = function(){\n // convenience functions used to build keywords object\n function kw(type) {return {type: type, style: \"keyword\"};}\n var operator = kw(\"operator\")\n , atom = {type: \"atom\", style: \"atom\"}\n , punctuation = {type: \"punctuation\", style: null}\n , qualifier = {type: \"axis_specifier\", style: \"qualifier\"};\n\n // kwObj is what is return from this function at the end\n var kwObj = {\n ',': punctuation\n };\n\n // a list of 'basic' keywords. For each add a property to kwObj with the value of\n // {type: basic[i], style: \"keyword\"} e.g. 'after' --> {type: \"after\", style: \"keyword\"}\n var basic = ['after', 'all', 'allowing', 'ancestor', 'ancestor-or-self', 'any', 'array', 'as',\n 'ascending', 'at', 'attribute', 'base-uri', 'before', 'boundary-space', 'by', 'case', 'cast',\n 'castable', 'catch', 'child', 'collation', 'comment', 'construction', 'contains', 'content',\n 'context', 'copy', 'copy-namespaces', 'count', 'decimal-format', 'declare', 'default', 'delete',\n 'descendant', 'descendant-or-self', 'descending', 'diacritics', 'different', 'distance',\n 'document', 'document-node', 'element', 'else', 'empty', 'empty-sequence', 'encoding', 'end',\n 'entire', 'every', 'exactly', 'except', 'external', 'first', 'following', 'following-sibling',\n 'for', 'from', 'ftand', 'ftnot', 'ft-option', 'ftor', 'function', 'fuzzy', 'greatest', 'group',\n 'if', 'import', 'in', 'inherit', 'insensitive', 'insert', 'instance', 'intersect', 'into',\n 'invoke', 'is', 'item', 'language', 'last', 'lax', 'least', 'let', 'levels', 'lowercase', 'map',\n 'modify', 'module', 'most', 'namespace', 'next', 'no', 'node', 'nodes', 'no-inherit',\n 'no-preserve', 'not', 'occurs', 'of', 'only', 'option', 'order', 'ordered', 'ordering',\n 'paragraph', 'paragraphs', 'parent', 'phrase', 'preceding', 'preceding-sibling', 'preserve',\n 'previous', 'processing-instruction', 'relationship', 'rename', 'replace', 'return',\n 'revalidation', 'same', 'satisfies', 'schema', 'schema-attribute', 'schema-element', 'score',\n 'self', 'sensitive', 'sentence', 'sentences', 'sequence', 'skip', 'sliding', 'some', 'stable',\n 'start', 'stemming', 'stop', 'strict', 'strip', 'switch', 'text', 'then', 'thesaurus', 'times',\n 'to', 'transform', 'treat', 'try', 'tumbling', 'type', 'typeswitch', 'union', 'unordered',\n 'update', 'updating', 'uppercase', 'using', 'validate', 'value', 'variable', 'version',\n 'weight', 'when', 'where', 'wildcards', 'window', 'with', 'without', 'word', 'words', 'xquery'];\n for(var i=0, l=basic.length; i < l; i++) { kwObj[basic[i]] = kw(basic[i]);};\n\n // a list of types. For each add a property to kwObj with the value of\n // {type: \"atom\", style: \"atom\"}\n var types = ['xs:anyAtomicType', 'xs:anySimpleType', 'xs:anyType', 'xs:anyURI',\n 'xs:base64Binary', 'xs:boolean', 'xs:byte', 'xs:date', 'xs:dateTime', 'xs:dateTimeStamp',\n 'xs:dayTimeDuration', 'xs:decimal', 'xs:double', 'xs:duration', 'xs:ENTITIES', 'xs:ENTITY',\n 'xs:float', 'xs:gDay', 'xs:gMonth', 'xs:gMonthDay', 'xs:gYear', 'xs:gYearMonth', 'xs:hexBinary',\n 'xs:ID', 'xs:IDREF', 'xs:IDREFS', 'xs:int', 'xs:integer', 'xs:item', 'xs:java', 'xs:language',\n 'xs:long', 'xs:Name', 'xs:NCName', 'xs:negativeInteger', 'xs:NMTOKEN', 'xs:NMTOKENS',\n 'xs:nonNegativeInteger', 'xs:nonPositiveInteger', 'xs:normalizedString', 'xs:NOTATION',\n 'xs:numeric', 'xs:positiveInteger', 'xs:precisionDecimal', 'xs:QName', 'xs:short', 'xs:string',\n 'xs:time', 'xs:token', 'xs:unsignedByte', 'xs:unsignedInt', 'xs:unsignedLong',\n 'xs:unsignedShort', 'xs:untyped', 'xs:untypedAtomic', 'xs:yearMonthDuration'];\n for(var i=0, l=types.length; i < l; i++) { kwObj[types[i]] = atom;};\n\n // each operator will add a property to kwObj with value of {type: \"operator\", style: \"keyword\"}\n var operators = ['eq', 'ne', 'lt', 'le', 'gt', 'ge', ':=', '=', '>', '>=', '<', '<=', '.', '|', '?', 'and', 'or', 'div', 'idiv', 'mod', '*', '/', '+', '-'];\n for(var i=0, l=operators.length; i < l; i++) { kwObj[operators[i]] = operator;};\n\n // each axis_specifiers will add a property to kwObj with value of {type: \"axis_specifier\", style: \"qualifier\"}\n var axis_specifiers = [\"self::\", \"attribute::\", \"child::\", \"descendant::\", \"descendant-or-self::\", \"parent::\",\n \"ancestor::\", \"ancestor-or-self::\", \"following::\", \"preceding::\", \"following-sibling::\", \"preceding-sibling::\"];\n for(var i=0, l=axis_specifiers.length; i < l; i++) { kwObj[axis_specifiers[i]] = qualifier; };\n\n return kwObj;\n}();\n\nfunction chain(stream, state, f) {\n state.tokenize = f;\n return f(stream, state);\n}\n\n// the primary mode tokenizer\nfunction tokenBase(stream, state) {\n var ch = stream.next(),\n mightBeFunction = false,\n isEQName = isEQNameAhead(stream);\n\n // an XML tag (if not in some sub, chained tokenizer)\n if (ch == \"<\") {\n if(stream.match(\"!--\", true))\n return chain(stream, state, tokenXMLComment);\n\n if(stream.match(\"![CDATA\", false)) {\n state.tokenize = tokenCDATA;\n return \"tag\";\n }\n\n if(stream.match(\"?\", false)) {\n return chain(stream, state, tokenPreProcessing);\n }\n\n var isclose = stream.eat(\"/\");\n stream.eatSpace();\n var tagName = \"\", c;\n while ((c = stream.eat(/[^\\s\\u00a0=<>\\\"\\'\\/?]/))) tagName += c;\n\n return chain(stream, state, tokenTag(tagName, isclose));\n }\n // start code block\n else if(ch == \"{\") {\n pushStateStack(state, { type: \"codeblock\"});\n return null;\n }\n // end code block\n else if(ch == \"}\") {\n popStateStack(state);\n return null;\n }\n // if we're in an XML block\n else if(isInXmlBlock(state)) {\n if(ch == \">\")\n return \"tag\";\n else if(ch == \"/\" && stream.eat(\">\")) {\n popStateStack(state);\n return \"tag\";\n }\n else\n return \"variable\";\n }\n // if a number\n else if (/\\d/.test(ch)) {\n stream.match(/^\\d*(?:\\.\\d*)?(?:E[+\\-]?\\d+)?/);\n return \"atom\";\n }\n // comment start\n else if (ch === \"(\" && stream.eat(\":\")) {\n pushStateStack(state, { type: \"comment\"});\n return chain(stream, state, tokenComment);\n }\n // quoted string\n else if (!isEQName && (ch === '\"' || ch === \"'\"))\n return startString(stream, state, ch);\n // variable\n else if(ch === \"$\") {\n return chain(stream, state, tokenVariable);\n }\n // assignment\n else if(ch ===\":\" && stream.eat(\"=\")) {\n return \"keyword\";\n }\n // open paren\n else if(ch === \"(\") {\n pushStateStack(state, { type: \"paren\"});\n return null;\n }\n // close paren\n else if(ch === \")\") {\n popStateStack(state);\n return null;\n }\n // open paren\n else if(ch === \"[\") {\n pushStateStack(state, { type: \"bracket\"});\n return null;\n }\n // close paren\n else if(ch === \"]\") {\n popStateStack(state);\n return null;\n }\n else {\n var known = keywords.propertyIsEnumerable(ch) && keywords[ch];\n\n // if there's a EQName ahead, consume the rest of the string portion, it's likely a function\n if(isEQName && ch === '\\\"') while(stream.next() !== '\"'){}\n if(isEQName && ch === '\\'') while(stream.next() !== '\\''){}\n\n // gobble up a word if the character is not known\n if(!known) stream.eatWhile(/[\\w\\$_-]/);\n\n // gobble a colon in the case that is a lib func type call fn:doc\n var foundColon = stream.eat(\":\");\n\n // if there's not a second colon, gobble another word. Otherwise, it's probably an axis specifier\n // which should get matched as a keyword\n if(!stream.eat(\":\") && foundColon) {\n stream.eatWhile(/[\\w\\$_-]/);\n }\n // if the next non whitespace character is an open paren, this is probably a function (if not a keyword of other sort)\n if(stream.match(/^[ \\t]*\\(/, false)) {\n mightBeFunction = true;\n }\n // is the word a keyword?\n var word = stream.current();\n known = keywords.propertyIsEnumerable(word) && keywords[word];\n\n // if we think it's a function call but not yet known,\n // set style to variable for now for lack of something better\n if(mightBeFunction && !known) known = {type: \"function_call\", style: \"def\"};\n\n // if the previous word was element, attribute, axis specifier, this word should be the name of that\n if(isInXmlConstructor(state)) {\n popStateStack(state);\n return \"variable\";\n }\n // as previously checked, if the word is element,attribute, axis specifier, call it an \"xmlconstructor\" and\n // push the stack so we know to look for it on the next word\n if(word == \"element\" || word == \"attribute\" || known.type == \"axis_specifier\") pushStateStack(state, {type: \"xmlconstructor\"});\n\n // if the word is known, return the details of that else just call this a generic 'word'\n return known ? known.style : \"variable\";\n }\n}\n\n// handle comments, including nested\nfunction tokenComment(stream, state) {\n var maybeEnd = false, maybeNested = false, nestedCount = 0, ch;\n while (ch = stream.next()) {\n if (ch == \")\" && maybeEnd) {\n if(nestedCount > 0)\n nestedCount--;\n else {\n popStateStack(state);\n break;\n }\n }\n else if(ch == \":\" && maybeNested) {\n nestedCount++;\n }\n maybeEnd = (ch == \":\");\n maybeNested = (ch == \"(\");\n }\n\n return \"comment\";\n}\n\n// tokenizer for string literals\n// optionally pass a tokenizer function to set state.tokenize back to when finished\nfunction tokenString(quote, f) {\n return function(stream, state) {\n var ch;\n while (ch = stream.next()) {\n if (ch == quote) {\n popStateStack(state);\n if (f) state.tokenize = f;\n break;\n } else if (stream.match(\"{\", false) && isInXmlAttributeBlock(state)) {\n // if we're in a string and in an XML block, allow an embedded code block in an attribute\n pushStateStack(state, { type: \"codeblock\"});\n state.tokenize = tokenBase;\n return \"string\";\n }\n }\n\n return \"string\";\n };\n}\n\nfunction startString(stream, state, quote, f) {\n let tokenize = tokenString(quote, f);\n pushStateStack(state, { type: \"string\", name: quote, tokenize });\n return chain(stream, state, tokenize);\n}\n\n// tokenizer for variables\nfunction tokenVariable(stream, state) {\n var isVariableChar = /[\\w\\$_-]/;\n\n // a variable may start with a quoted EQName so if the next character is quote, consume to the next quote\n if(stream.eat(\"\\\"\")) {\n while(stream.next() !== '\\\"'){};\n stream.eat(\":\");\n } else {\n stream.eatWhile(isVariableChar);\n if(!stream.match(\":=\", false)) stream.eat(\":\");\n }\n stream.eatWhile(isVariableChar);\n state.tokenize = tokenBase;\n return \"variable\";\n}\n\n// tokenizer for XML tags\nfunction tokenTag(name, isclose) {\n return function(stream, state) {\n stream.eatSpace();\n if(isclose && stream.eat(\">\")) {\n popStateStack(state);\n state.tokenize = tokenBase;\n return \"tag\";\n }\n // self closing tag without attributes?\n if(!stream.eat(\"/\"))\n pushStateStack(state, { type: \"tag\", name: name, tokenize: tokenBase});\n if(!stream.eat(\">\")) {\n state.tokenize = tokenAttribute;\n return \"tag\";\n }\n else {\n state.tokenize = tokenBase;\n }\n return \"tag\";\n };\n}\n\n// tokenizer for XML attributes\nfunction tokenAttribute(stream, state) {\n var ch = stream.next();\n\n if(ch == \"/\" && stream.eat(\">\")) {\n if(isInXmlAttributeBlock(state)) popStateStack(state);\n if(isInXmlBlock(state)) popStateStack(state);\n return \"tag\";\n }\n if(ch == \">\") {\n if(isInXmlAttributeBlock(state)) popStateStack(state);\n return \"tag\";\n }\n if(ch == \"=\")\n return null;\n // quoted string\n if (ch == '\"' || ch == \"'\")\n return startString(stream, state, ch, tokenAttribute);\n\n if(!isInXmlAttributeBlock(state))\n pushStateStack(state, { type: \"attribute\", tokenize: tokenAttribute});\n\n stream.eat(/[a-zA-Z_:]/);\n stream.eatWhile(/[-a-zA-Z0-9_:.]/);\n stream.eatSpace();\n\n // the case where the attribute has not value and the tag was closed\n if(stream.match(\">\", false) || stream.match(\"/\", false)) {\n popStateStack(state);\n state.tokenize = tokenBase;\n }\n\n return \"attribute\";\n}\n\n// handle comments, including nested\nfunction tokenXMLComment(stream, state) {\n var ch;\n while (ch = stream.next()) {\n if (ch == \"-\" && stream.match(\"->\", true)) {\n state.tokenize = tokenBase;\n return \"comment\";\n }\n }\n}\n\n\n// handle CDATA\nfunction tokenCDATA(stream, state) {\n var ch;\n while (ch = stream.next()) {\n if (ch == \"]\" && stream.match(\"]\", true)) {\n state.tokenize = tokenBase;\n return \"comment\";\n }\n }\n}\n\n// handle preprocessing instructions\nfunction tokenPreProcessing(stream, state) {\n var ch;\n while (ch = stream.next()) {\n if (ch == \"?\" && stream.match(\">\", true)) {\n state.tokenize = tokenBase;\n return \"processingInstruction\";\n }\n }\n}\n\n\n// functions to test the current context of the state\nfunction isInXmlBlock(state) { return isIn(state, \"tag\"); }\nfunction isInXmlAttributeBlock(state) { return isIn(state, \"attribute\"); }\nfunction isInXmlConstructor(state) { return isIn(state, \"xmlconstructor\"); }\nfunction isInString(state) { return isIn(state, \"string\"); }\n\nfunction isEQNameAhead(stream) {\n // assume we've already eaten a quote (\")\n if(stream.current() === '\"')\n return stream.match(/^[^\\\"]+\\\"\\:/, false);\n else if(stream.current() === '\\'')\n return stream.match(/^[^\\\"]+\\'\\:/, false);\n else\n return false;\n}\n\nfunction isIn(state, type) {\n return (state.stack.length && state.stack[state.stack.length - 1].type == type);\n}\n\nfunction pushStateStack(state, newState) {\n state.stack.push(newState);\n}\n\nfunction popStateStack(state) {\n state.stack.pop();\n var reinstateTokenize = state.stack.length && state.stack[state.stack.length-1].tokenize;\n state.tokenize = reinstateTokenize || tokenBase;\n}\n\n// the interface for the mode API\nexport const xQuery = {\n name: \"xquery\",\n startState: function() {\n return {\n tokenize: tokenBase,\n cc: [],\n stack: []\n };\n },\n\n token: function(stream, state) {\n if (stream.eatSpace()) return null;\n var style = state.tokenize(stream, state);\n return style;\n },\n\n languageData: {\n commentTokens: {block: {open: \"(:\", close: \":)\"}}\n }\n};\n"],"names":["keywords","kw","type","operator","atom","punctuation","qualifier","kwObj","basic","i","l","types","operators","axis_specifiers","chain","stream","state","f","tokenBase","ch","mightBeFunction","isEQName","isEQNameAhead","tokenXMLComment","tokenCDATA","tokenPreProcessing","isclose","tagName","c","tokenTag","pushStateStack","popStateStack","isInXmlBlock","tokenComment","startString","tokenVariable","known","foundColon","word","isInXmlConstructor","maybeEnd","maybeNested","nestedCount","tokenString","quote","isInXmlAttributeBlock","tokenize","isVariableChar","name","tokenAttribute","isIn","newState","reinstateTokenize","xQuery","style"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function t(e){for(var n={},r=e.split(" "),o=0;o<r.length;++o)n[r[o]]=!0;return n}var a=t("Assert BackQuote D Defun Deriv For ForEach FromFile FromString Function Integrate InverseTaylor Limit LocalSymbols Macro MacroRule MacroRulePattern NIntegrate Rule RulePattern Subst TD TExplicitSum TSum Taylor Taylor1 Taylor2 Taylor3 ToFile ToStdout ToString TraceRule Until While"),f="(?:(?:\\.\\d+|\\d+\\.\\d*|\\d+)(?:[eE][+-]?\\d+)?)",u="(?:[a-zA-Z\\$'][a-zA-Z0-9\\$']*)",p=new RegExp(f),d=new RegExp(u),k=new RegExp(u+"?_"+u),s=new RegExp(u+"\\s*\\(");function l(e,n){var r;if(r=e.next(),r==='"')return n.tokenize=v,n.tokenize(e,n);if(r==="/"){if(e.eat("*"))return n.tokenize=h,n.tokenize(e,n);if(e.eat("/"))return e.skipToEnd(),"comment"}e.backUp(1);var o=e.match(/^(\w+)\s*\(/,!1);o!==null&&a.hasOwnProperty(o[1])&&n.scopes.push("bodied");var i=c(n);if(i==="bodied"&&r==="["&&n.scopes.pop(),(r==="["||r==="{"||r==="(")&&n.scopes.push(r),i=c(n),(i==="["&&r==="]"||i==="{"&&r==="}"||i==="("&&r===")")&&n.scopes.pop(),r===";")for(;i==="bodied";)n.scopes.pop(),i=c(n);return e.match(/\d+ *#/,!0,!1)?"qualifier":e.match(p,!0,!1)?"number":e.match(k,!0,!1)?"variableName.special":e.match(/(?:\[|\]|{|}|\(|\))/,!0,!1)?"bracket":e.match(s,!0,!1)?(e.backUp(1),"variableName.function"):e.match(d,!0,!1)?"variable":e.match(/(?:\\|\+|\-|\*|\/|,|;|\.|:|@|~|=|>|<|&|\||_|`|'|\^|\?|!|%|#)/,!0,!1)?"operator":"error"}function v(e,n){for(var r,o=!1,i=!1;(r=e.next())!=null;){if(r==='"'&&!i){o=!0;break}i=!i&&r==="\\"}return o&&!i&&(n.tokenize=l),"string"}function h(e,n){for(var r,o;(o=e.next())!=null;){if(r==="*"&&o==="/"){n.tokenize=l;break}r=o}return"comment"}function c(e){var n=null;return e.scopes.length>0&&(n=e.scopes[e.scopes.length-1]),n}const b={name:"yacas",startState:function(){return{tokenize:l,scopes:[]}},token:function(e,n){return e.eatSpace()?null:n.tokenize(e,n)},indent:function(e,n,r){if(e.tokenize!==l&&e.tokenize!==null)return null;var o=0;return(n==="]"||n==="];"||n==="}"||n==="};"||n===");")&&(o=-1),(e.scopes.length+o)*r.unit},languageData:{electricInput:/[{}\[\]()\;]/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}};export{b as yacas};
|
|
2
|
+
//# sourceMappingURL=yacas-BJ4BC0dw.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yacas-BJ4BC0dw.js","sources":["../../../node_modules/@codemirror/legacy-modes/mode/yacas.js"],"sourcesContent":["function words(str) {\n var obj = {}, words = str.split(\" \");\n for (var i = 0; i < words.length; ++i) obj[words[i]] = true;\n return obj;\n}\n\nvar bodiedOps = words(\"Assert BackQuote D Defun Deriv For ForEach FromFile \" +\n \"FromString Function Integrate InverseTaylor Limit \" +\n \"LocalSymbols Macro MacroRule MacroRulePattern \" +\n \"NIntegrate Rule RulePattern Subst TD TExplicitSum \" +\n \"TSum Taylor Taylor1 Taylor2 Taylor3 ToFile \" +\n \"ToStdout ToString TraceRule Until While\");\n\n// patterns\nvar pFloatForm = \"(?:(?:\\\\.\\\\d+|\\\\d+\\\\.\\\\d*|\\\\d+)(?:[eE][+-]?\\\\d+)?)\";\nvar pIdentifier = \"(?:[a-zA-Z\\\\$'][a-zA-Z0-9\\\\$']*)\";\n\n// regular expressions\nvar reFloatForm = new RegExp(pFloatForm);\nvar reIdentifier = new RegExp(pIdentifier);\nvar rePattern = new RegExp(pIdentifier + \"?_\" + pIdentifier);\nvar reFunctionLike = new RegExp(pIdentifier + \"\\\\s*\\\\(\");\n\nfunction tokenBase(stream, state) {\n var ch;\n\n // get next character\n ch = stream.next();\n\n // string\n if (ch === '\"') {\n state.tokenize = tokenString;\n return state.tokenize(stream, state);\n }\n\n // comment\n if (ch === '/') {\n if (stream.eat('*')) {\n state.tokenize = tokenComment;\n return state.tokenize(stream, state);\n }\n if (stream.eat(\"/\")) {\n stream.skipToEnd();\n return \"comment\";\n }\n }\n\n // go back one character\n stream.backUp(1);\n\n // update scope info\n var m = stream.match(/^(\\w+)\\s*\\(/, false);\n if (m !== null && bodiedOps.hasOwnProperty(m[1]))\n state.scopes.push('bodied');\n\n var scope = currentScope(state);\n\n if (scope === 'bodied' && ch === '[')\n state.scopes.pop();\n\n if (ch === '[' || ch === '{' || ch === '(')\n state.scopes.push(ch);\n\n scope = currentScope(state);\n\n if (scope === '[' && ch === ']' ||\n scope === '{' && ch === '}' ||\n scope === '(' && ch === ')')\n state.scopes.pop();\n\n if (ch === ';') {\n while (scope === 'bodied') {\n state.scopes.pop();\n scope = currentScope(state);\n }\n }\n\n // look for ordered rules\n if (stream.match(/\\d+ *#/, true, false)) {\n return 'qualifier';\n }\n\n // look for numbers\n if (stream.match(reFloatForm, true, false)) {\n return 'number';\n }\n\n // look for placeholders\n if (stream.match(rePattern, true, false)) {\n return 'variableName.special';\n }\n\n // match all braces separately\n if (stream.match(/(?:\\[|\\]|{|}|\\(|\\))/, true, false)) {\n return 'bracket';\n }\n\n // literals looking like function calls\n if (stream.match(reFunctionLike, true, false)) {\n stream.backUp(1);\n return 'variableName.function';\n }\n\n // all other identifiers\n if (stream.match(reIdentifier, true, false)) {\n return 'variable';\n }\n\n // operators; note that operators like @@ or /; are matched separately for each symbol.\n if (stream.match(/(?:\\\\|\\+|\\-|\\*|\\/|,|;|\\.|:|@|~|=|>|<|&|\\||_|`|'|\\^|\\?|!|%|#)/, true, false)) {\n return 'operator';\n }\n\n // everything else is an error\n return 'error';\n}\n\nfunction tokenString(stream, state) {\n var next, end = false, escaped = false;\n while ((next = stream.next()) != null) {\n if (next === '\"' && !escaped) {\n end = true;\n break;\n }\n escaped = !escaped && next === '\\\\';\n }\n if (end && !escaped) {\n state.tokenize = tokenBase;\n }\n return 'string';\n};\n\nfunction tokenComment(stream, state) {\n var prev, next;\n while((next = stream.next()) != null) {\n if (prev === '*' && next === '/') {\n state.tokenize = tokenBase;\n break;\n }\n prev = next;\n }\n return 'comment';\n}\n\nfunction currentScope(state) {\n var scope = null;\n if (state.scopes.length > 0)\n scope = state.scopes[state.scopes.length - 1];\n return scope;\n}\n\nexport const yacas = {\n name: \"yacas\",\n startState: function() {\n return {\n tokenize: tokenBase,\n scopes: []\n };\n },\n token: function(stream, state) {\n if (stream.eatSpace()) return null;\n return state.tokenize(stream, state);\n },\n indent: function(state, textAfter, cx) {\n if (state.tokenize !== tokenBase && state.tokenize !== null)\n return null;\n\n var delta = 0;\n if (textAfter === ']' || textAfter === '];' ||\n textAfter === '}' || textAfter === '};' ||\n textAfter === ');')\n delta = -1;\n\n return (state.scopes.length + delta) * cx.unit;\n },\n\n languageData: {\n electricInput: /[{}\\[\\]()\\;]/,\n commentTokens: {line: \"//\", block: {open: \"/*\", close: \"*/\"}}\n }\n};\n"],"names":["words","str","obj","i","bodiedOps","pFloatForm","pIdentifier","reFloatForm","reIdentifier","rePattern","reFunctionLike","tokenBase","stream","state","ch","tokenString","tokenComment","m","scope","currentScope","next","end","escaped","prev","yacas","textAfter","cx","delta"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function o(t){var n,l;t?(n=/^(exx?|(ld|cp)([di]r?)?|[lp]ea|pop|push|ad[cd]|cpl|daa|dec|inc|neg|sbc|sub|and|bit|[cs]cf|x?or|res|set|r[lr]c?a?|r[lr]d|s[lr]a|srl|djnz|nop|[de]i|halt|im|in([di]mr?|ir?|irx|2r?)|ot(dmr?|[id]rx|imr?)|out(0?|[di]r?|[di]2r?)|tst(io)?|slp)(\.([sl]?i)?[sl])?\b/i,l=/^(((call|j[pr]|rst|ret[in]?)(\.([sl]?i)?[sl])?)|(rs|st)mix)\b/i):(n=/^(exx?|(ld|cp|in)([di]r?)?|pop|push|ad[cd]|cpl|daa|dec|inc|neg|sbc|sub|and|bit|[cs]cf|x?or|res|set|r[lr]c?a?|r[lr]d|s[lr]a|srl|djnz|nop|rst|[de]i|halt|im|ot[di]r|out[di]?)\b/i,l=/^(call|j[pr]|ret[in]?|b_?(call|jump))\b/i);var u=/^(af?|bc?|c|de?|e|hl?|l|i[xy]?|r|sp)\b/i,d=/^(n?[zc]|p[oe]?|m)\b/i,f=/^([hl][xy]|i[xy][hl]|slia|sll)\b/i,c=/^([\da-f]+h|[0-7]+o|[01]+b|\d+d?)\b/i;return{name:"z80",startState:function(){return{context:0}},token:function(e,i){if(e.column()||(i.context=0),e.eatSpace())return null;var r;if(e.eatWhile(/\w/))if(t&&e.eat(".")&&e.eatWhile(/\w/),r=e.current(),e.indentation()){if((i.context==1||i.context==4)&&u.test(r))return i.context=4,"variable";if(i.context==2&&d.test(r))return i.context=4,"variableName.special";if(n.test(r))return i.context=1,"keyword";if(l.test(r))return i.context=2,"keyword";if(i.context==4&&c.test(r))return"number";if(f.test(r))return"error"}else return e.match(c)?"number":null;else{if(e.eat(";"))return e.skipToEnd(),"comment";if(e.eat('"')){for(;(r=e.next())&&r!='"';)r=="\\"&&e.next();return"string"}else if(e.eat("'")){if(e.match(/\\?.'/))return"number"}else if(e.eat(".")||e.sol()&&e.eat("#")){if(i.context=5,e.eatWhile(/\w/))return"def"}else if(e.eat("$")){if(e.eatWhile(/[\da-f]/i))return"number"}else if(e.eat("%")){if(e.eatWhile(/[01]/))return"number"}else e.next()}return null}}}const a=o(!1),s=o(!0);export{s as ez80,a as z80};
|
|
2
|
+
//# sourceMappingURL=z80-Hz9HOZM7.js.map
|