functionalscript 0.43.0 → 0.44.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/README.md +53 -21
- package/fjs/asn.1/module.f.d.mts +123 -0
- package/fjs/asn.1/module.f.mjs +459 -0
- package/fjs/asn.1/proof.f.mjs +309 -0
- package/fjs/asn.1/types.d.ts +37 -0
- package/fjs/asn.1/types.js +6 -0
- package/fjs/asserts/module.f.d.mts +37 -0
- package/fjs/asserts/module.f.mjs +49 -0
- package/fjs/asserts/proof.f.mjs +19 -0
- package/fjs/asserts/types.d.ts +11 -0
- package/fjs/asserts/types.js +6 -0
- package/fjs/basen/base128/module.f.d.mts +22 -0
- package/fjs/basen/base128/module.f.mjs +51 -0
- package/fjs/basen/base128/proof.f.d.mts +2 -0
- package/fjs/basen/base128/proof.f.mjs +30 -0
- package/fjs/basen/base64/module.f.d.mts +14 -0
- package/fjs/basen/base64/module.f.mjs +71 -0
- package/fjs/basen/base64/proof.f.d.mts +17 -0
- package/fjs/basen/base64/proof.f.mjs +147 -0
- package/fjs/basen/cbase32/module.f.d.mts +18 -0
- package/fjs/basen/cbase32/module.f.mjs +61 -0
- package/fjs/basen/cbase32/proof.f.d.mts +8 -0
- package/fjs/basen/cbase32/proof.f.mjs +77 -0
- package/fjs/basen/module.f.d.mts +30 -0
- package/fjs/basen/module.f.mjs +88 -0
- package/fjs/basen/proof.f.mjs +69 -0
- package/fjs/basen/types.d.ts +14 -0
- package/fjs/basen/types.js +6 -0
- package/fjs/bnf/data/module.f.d.mts +47 -0
- package/fjs/bnf/data/module.f.mjs +188 -0
- package/fjs/bnf/data/proof.f.d.mts +13 -0
- package/fjs/bnf/data/proof.f.mjs +160 -0
- package/fjs/bnf/data/types.d.ts +35 -0
- package/fjs/bnf/data/types.js +6 -0
- package/fjs/bnf/descent/module.f.d.mts +33 -0
- package/fjs/bnf/descent/module.f.mjs +212 -0
- package/fjs/bnf/descent/proof.f.d.mts +13 -0
- package/fjs/bnf/descent/proof.f.mjs +351 -0
- package/fjs/bnf/descent/types.d.ts +71 -0
- package/fjs/bnf/descent/types.js +6 -0
- package/fjs/bnf/ll1/module.f.d.mts +41 -0
- package/fjs/bnf/ll1/module.f.mjs +199 -0
- package/fjs/bnf/ll1/proof.f.d.mts +16 -0
- package/fjs/bnf/ll1/proof.f.mjs +352 -0
- package/fjs/bnf/ll1/types.d.ts +59 -0
- package/fjs/bnf/ll1/types.js +6 -0
- package/fjs/bnf/module.f.d.mts +164 -0
- package/fjs/bnf/module.f.mjs +298 -0
- package/fjs/bnf/proof.f.d.mts +17 -0
- package/fjs/bnf/proof.f.mjs +89 -0
- package/fjs/bnf/testlib.f.d.mts +10 -0
- package/fjs/bnf/testlib.f.mjs +196 -0
- package/fjs/bnf/token_symbol/module.f.d.mts +35 -0
- package/fjs/bnf/token_symbol/module.f.mjs +62 -0
- package/fjs/bnf/token_symbol/proof.f.mjs +43 -0
- package/fjs/bnf/token_symbol/types.d.ts +27 -0
- package/fjs/bnf/token_symbol/types.js +6 -0
- package/fjs/bnf/types.d.ts +67 -0
- package/fjs/bnf/types.js +6 -0
- package/fjs/cas/cli/module.f.d.mts +17 -0
- package/fjs/cas/cli/module.f.mjs +73 -0
- package/fjs/cas/cli/proof.f.d.mts +18 -0
- package/fjs/cas/cli/proof.f.mjs +118 -0
- package/fjs/cas/evo/module.f.d.mts +163 -0
- package/fjs/cas/evo/module.f.mjs +556 -0
- package/fjs/cas/evo/proof.f.d.mts +55 -0
- package/fjs/cas/evo/proof.f.mjs +749 -0
- package/fjs/cas/evo/types.d.ts +111 -0
- package/fjs/cas/evo/types.js +7 -0
- package/fjs/cas/module.f.d.mts +68 -0
- package/fjs/cas/module.f.mjs +363 -0
- package/fjs/cas/proof.f.d.mts +29 -0
- package/fjs/cas/proof.f.mjs +371 -0
- package/fjs/cas/types.d.ts +35 -0
- package/fjs/cas/types.js +6 -0
- package/fjs/ci/bun/module.f.d.mts +11 -0
- package/fjs/ci/bun/module.f.mjs +20 -0
- package/fjs/ci/common/module.f.d.mts +80 -0
- package/fjs/ci/common/module.f.mjs +87 -0
- package/fjs/ci/common/types.d.ts +27 -0
- package/fjs/ci/config/module.f.d.mts +45 -0
- package/fjs/ci/config/module.f.mjs +89 -0
- package/fjs/ci/deno/module.f.d.mts +16 -0
- package/fjs/ci/deno/module.f.mjs +29 -0
- package/fjs/ci/deno/proof.f.d.mts +4 -0
- package/fjs/ci/deno/proof.f.mjs +26 -0
- package/fjs/ci/module.f.d.mts +19 -0
- package/fjs/ci/module.f.mjs +89 -0
- package/fjs/ci/nix/module.f.d.mts +69 -0
- package/fjs/ci/nix/module.f.mjs +136 -0
- package/fjs/ci/nix/proof.f.d.mts +28 -0
- package/fjs/ci/nix/proof.f.mjs +146 -0
- package/fjs/ci/nix/types.d.ts +16 -0
- package/fjs/ci/nix/types.js +6 -0
- package/fjs/ci/node/module.f.d.mts +48 -0
- package/fjs/ci/node/module.f.mjs +139 -0
- package/fjs/ci/node/proof.f.mjs +18 -0
- package/fjs/ci/proof.f.d.mts +20 -0
- package/fjs/ci/proof.f.mjs +219 -0
- package/fjs/ci/rust/module.f.d.mts +15 -0
- package/fjs/ci/rust/module.f.mjs +108 -0
- package/fjs/ci/types.d.ts +9 -0
- package/fjs/ci/types.js +6 -0
- package/fjs/cli/module.f.d.mts +16 -0
- package/fjs/cli/module.f.mjs +51 -0
- package/fjs/cli/proof.f.d.mts +16 -0
- package/fjs/cli/proof.f.mjs +130 -0
- package/fjs/cli/types.d.ts +15 -0
- package/fjs/cli/types.js +6 -0
- package/fjs/common/monoid/module.f.d.mts +87 -0
- package/fjs/common/monoid/module.f.mjs +104 -0
- package/fjs/common/monoid/proof.f.d.mts +10 -0
- package/fjs/common/monoid/proof.f.mjs +58 -0
- package/fjs/common/monoid/types.d.ts +50 -0
- package/fjs/common/monoid/types.js +6 -0
- package/fjs/crypto/hmac/module.f.d.mts +32 -0
- package/fjs/crypto/hmac/module.f.mjs +65 -0
- package/fjs/crypto/hmac/proof.f.mjs +34 -0
- package/fjs/crypto/pow/module.f.d.mts +43 -0
- package/fjs/crypto/pow/module.f.mjs +93 -0
- package/fjs/crypto/pow/proof.f.mjs +121 -0
- package/fjs/crypto/pow/types.d.ts +19 -0
- package/fjs/crypto/pow/types.js +6 -0
- package/fjs/crypto/secp/module.f.d.mts +61 -0
- package/fjs/crypto/secp/module.f.mjs +204 -0
- package/fjs/crypto/secp/proof.f.d.mts +9 -0
- package/fjs/crypto/secp/proof.f.mjs +137 -0
- package/fjs/crypto/secp/types.d.ts +36 -0
- package/fjs/crypto/secp/types.js +6 -0
- package/fjs/crypto/sha2/module.f.d.mts +80 -0
- package/fjs/crypto/sha2/module.f.mjs +431 -0
- package/fjs/crypto/sha2/proof.f.d.mts +32 -0
- package/fjs/crypto/sha2/proof.f.mjs +144 -0
- package/fjs/crypto/sha2/types.d.ts +57 -0
- package/fjs/crypto/sha2/types.js +6 -0
- package/fjs/crypto/sign/module.f.d.mts +46 -0
- package/fjs/crypto/sign/module.f.mjs +189 -0
- package/fjs/crypto/sign/proof.f.d.mts +17 -0
- package/fjs/crypto/sign/proof.f.mjs +604 -0
- package/fjs/crypto/sign/types.d.ts +13 -0
- package/fjs/crypto/sign/types.js +6 -0
- package/fjs/crypto/vdf/module.f.d.mts +15 -0
- package/fjs/crypto/vdf/module.f.mjs +84 -0
- package/fjs/crypto/vdf/proof.f.mjs +106 -0
- package/fjs/crypto/vdf/types.d.ts +18 -0
- package/fjs/crypto/vdf/types.js +6 -0
- package/fjs/dev/module.f.d.mts +56 -0
- package/fjs/dev/module.f.mjs +170 -0
- package/fjs/dev/package_json/module.f.d.mts +32 -0
- package/fjs/dev/package_json/module.f.mjs +37 -0
- package/fjs/dev/package_json/proof.f.mjs +32 -0
- package/fjs/dev/proof.f.d.mts +13 -0
- package/fjs/dev/proof.f.mjs +78 -0
- package/fjs/dev/types.d.ts +14 -0
- package/fjs/dev/types.js +6 -0
- package/fjs/dev/update/module.f.d.mts +19 -0
- package/fjs/dev/update/module.f.mjs +36 -0
- package/fjs/dev/update/proof.f.d.mts +7 -0
- package/fjs/dev/update/proof.f.mjs +36 -0
- package/fjs/djs/ast/module.f.d.mts +35 -0
- package/fjs/djs/ast/module.f.mjs +82 -0
- package/fjs/djs/ast/proof.f.mjs +48 -0
- package/fjs/djs/ast/types.d.ts +54 -0
- package/fjs/djs/ast/types.js +8 -0
- package/fjs/djs/examples/input.f.mjs +4 -0
- package/fjs/djs/examples/m.f.mjs +1 -0
- package/fjs/djs/module.f.d.mts +17 -0
- package/fjs/djs/module.f.mjs +47 -0
- package/fjs/djs/parser/module.f.d.mts +75 -0
- package/fjs/djs/parser/module.f.mjs +547 -0
- package/fjs/djs/parser/proof.f.mjs +543 -0
- package/fjs/djs/parser/types.d.ts +11 -0
- package/fjs/djs/parser/types.js +7 -0
- package/fjs/djs/proof.f.mjs +52 -0
- package/fjs/djs/serializer/module.f.d.mts +30 -0
- package/fjs/djs/serializer/module.f.mjs +206 -0
- package/fjs/djs/serializer/proof.f.mjs +116 -0
- package/fjs/djs/tokenizer/module.f.d.mts +65 -0
- package/fjs/djs/tokenizer/module.f.mjs +624 -0
- package/fjs/djs/tokenizer/proof.f.mjs +980 -0
- package/fjs/djs/tokenizer/types.d.ts +20 -0
- package/fjs/djs/tokenizer/types.js +7 -0
- package/fjs/djs/transpiler/module.f.d.mts +44 -0
- package/fjs/djs/transpiler/module.f.mjs +141 -0
- package/fjs/djs/transpiler/proof.f.mjs +76 -0
- package/fjs/djs/types.d.ts +13 -0
- package/fjs/djs/types.js +7 -0
- package/fjs/effects/eff/module.f.d.mts +10 -0
- package/fjs/effects/eff/module.f.mjs +68 -0
- package/fjs/effects/eff/proof.f.d.mts +12 -0
- package/fjs/effects/eff/proof.f.mjs +66 -0
- package/fjs/effects/eff/types.d.ts +71 -0
- package/fjs/effects/eff/types.js +6 -0
- package/fjs/effects/list/module.f.d.mts +24 -0
- package/fjs/effects/list/module.f.mjs +34 -0
- package/fjs/effects/list/types.d.ts +26 -0
- package/fjs/effects/list/types.js +6 -0
- package/fjs/effects/memory/module.f.d.mts +32 -0
- package/fjs/effects/memory/module.f.mjs +44 -0
- package/fjs/effects/memory/proof.f.d.mts +12 -0
- package/fjs/effects/memory/proof.f.mjs +83 -0
- package/fjs/effects/memory/types.d.ts +18 -0
- package/fjs/effects/memory/types.js +6 -0
- package/fjs/effects/mock/module.f.d.mts +6 -0
- package/fjs/effects/mock/module.f.mjs +26 -0
- package/fjs/effects/mock/types.d.ts +15 -0
- package/fjs/effects/mock/types.js +6 -0
- package/fjs/effects/module.d.mts +7 -0
- package/fjs/effects/module.f.d.mts +350 -0
- package/fjs/effects/module.f.mjs +382 -0
- package/fjs/effects/module.mjs +18 -0
- package/fjs/effects/node/memory/module.d.mts +24 -0
- package/fjs/effects/node/memory/module.mjs +59 -0
- package/fjs/effects/node/memory/proof.mjs +43 -0
- package/fjs/effects/node/module.d.mts +54 -0
- package/fjs/effects/node/module.f.d.mts +172 -0
- package/fjs/effects/node/module.f.mjs +354 -0
- package/fjs/effects/node/module.mjs +393 -0
- package/fjs/effects/node/proof.f.d.mts +76 -0
- package/fjs/effects/node/proof.f.mjs +444 -0
- package/fjs/effects/node/types.d.ts +203 -0
- package/fjs/effects/node/types.js +6 -0
- package/fjs/effects/node/virtual/module.f.d.mts +31 -0
- package/fjs/effects/node/virtual/module.f.mjs +434 -0
- package/fjs/effects/node/virtual/proof.f.d.mts +35 -0
- package/fjs/effects/node/virtual/proof.f.mjs +226 -0
- package/fjs/effects/node/virtual/types.d.ts +39 -0
- package/fjs/effects/node/virtual/types.js +7 -0
- package/fjs/effects/proof.f.d.mts +62 -0
- package/fjs/effects/proof.f.mjs +231 -0
- package/fjs/effects/types.d.ts +115 -0
- package/fjs/effects/types.js +6 -0
- package/fjs/emergent_testing/all.test.js +2 -2
- package/fjs/emergent_testing/example.f.d.mts +16 -0
- package/fjs/emergent_testing/example.f.mjs +34 -0
- package/fjs/emergent_testing/module.f.d.mts +150 -0
- package/fjs/emergent_testing/module.f.mjs +414 -0
- package/fjs/emergent_testing/proof.f.d.mts +97 -0
- package/fjs/emergent_testing/proof.f.mjs +518 -0
- package/fjs/emergent_testing/types.d.ts +53 -0
- package/fjs/emergent_testing/types.js +6 -0
- package/fjs/fsc/bnf.f.d.mts +3 -0
- package/fjs/fsc/bnf.f.mjs +77 -0
- package/fjs/fsc/json.f.d.mts +13 -0
- package/fjs/fsc/json.f.mjs +124 -0
- package/fjs/fsc/module.f.d.mts +14 -0
- package/fjs/fsc/module.f.mjs +138 -0
- package/fjs/fsc/proof.f.mjs +119 -0
- package/fjs/fsm/module.f.d.mts +27 -0
- package/fjs/fsm/module.f.mjs +99 -0
- package/fjs/fsm/proof.f.mjs +146 -0
- package/fjs/js/tokenizer/module.f.d.mts +19 -0
- package/fjs/js/tokenizer/module.f.mjs +795 -0
- package/fjs/js/tokenizer/proof.f.d.mts +12 -0
- package/fjs/js/tokenizer/proof.f.mjs +681 -0
- package/fjs/js/tokenizer/types.d.ts +193 -0
- package/fjs/js/tokenizer/types.js +6 -0
- package/fjs/mcp/cas/module.f.d.mts +156 -0
- package/fjs/mcp/cas/module.f.mjs +302 -0
- package/fjs/mcp/evo/module.f.d.mts +88 -0
- package/fjs/mcp/evo/module.f.mjs +153 -0
- package/fjs/mcp/evo/proof.f.d.mts +17 -0
- package/fjs/mcp/evo/proof.f.mjs +166 -0
- package/fjs/mcp/module.f.d.mts +32 -0
- package/fjs/mcp/module.f.mjs +96 -0
- package/fjs/mcp/proof.f.d.mts +46 -0
- package/fjs/mcp/proof.f.mjs +725 -0
- package/fjs/media/html/module.f.d.mts +43 -0
- package/fjs/media/html/module.f.mjs +167 -0
- package/fjs/media/html/proof.f.mjs +77 -0
- package/fjs/media/html/types.d.ts +19 -0
- package/fjs/media/html/types.js +6 -0
- package/fjs/media/json/module.f.d.mts +48 -0
- package/fjs/media/json/module.f.mjs +104 -0
- package/fjs/media/json/parser/module.f.d.mts +30 -0
- package/fjs/media/json/parser/module.f.mjs +219 -0
- package/fjs/media/json/parser/proof.f.d.mts +8 -0
- package/fjs/media/json/parser/proof.f.mjs +314 -0
- package/fjs/media/json/parser/types.d.ts +34 -0
- package/fjs/media/json/parser/types.js +6 -0
- package/fjs/media/json/proof.f.mjs +79 -0
- package/fjs/media/json/rtti/module.f.d.mts +38 -0
- package/fjs/media/json/rtti/module.f.mjs +51 -0
- package/fjs/media/json/rtti/proof.f.d.mts +26 -0
- package/fjs/media/json/rtti/proof.f.mjs +86 -0
- package/fjs/media/json/schema/module.f.d.mts +79 -0
- package/fjs/media/json/schema/module.f.mjs +144 -0
- package/fjs/media/json/schema/proof.f.d.mts +40 -0
- package/fjs/media/json/schema/proof.f.mjs +93 -0
- package/fjs/media/json/serializer/module.f.d.mts +27 -0
- package/fjs/media/json/serializer/module.f.mjs +131 -0
- package/fjs/media/json/serializer/proof.f.mjs +92 -0
- package/fjs/media/json/tokenizer/module.f.d.mts +17 -0
- package/fjs/media/json/tokenizer/module.f.mjs +77 -0
- package/fjs/media/json/tokenizer/proof.f.d.mts +8 -0
- package/fjs/media/json/tokenizer/proof.f.mjs +291 -0
- package/fjs/media/json/tokenizer/types.d.ts +17 -0
- package/fjs/media/json/tokenizer/types.js +6 -0
- package/fjs/media/json/types.d.ts +25 -0
- package/fjs/media/json/types.js +13 -0
- package/fjs/media/module.f.d.mts +116 -0
- package/fjs/media/module.f.mjs +152 -0
- package/fjs/media/nix/module.f.d.mts +14 -0
- package/fjs/media/nix/module.f.mjs +261 -0
- package/fjs/media/nix/proof.f.mjs +181 -0
- package/fjs/media/nix/types.d.ts +22 -0
- package/fjs/media/nix/types.js +6 -0
- package/fjs/media/proof.f.d.mts +19 -0
- package/fjs/media/proof.f.mjs +159 -0
- package/fjs/media/revision/module.f.d.mts +119 -0
- package/fjs/media/revision/module.f.mjs +166 -0
- package/fjs/media/revision/proof.f.d.mts +42 -0
- package/fjs/media/revision/proof.f.mjs +228 -0
- package/fjs/media/revision/types.d.ts +16 -0
- package/fjs/media/revision/types.js +8 -0
- package/fjs/media/rust/module.f.d.mts +61 -0
- package/fjs/media/rust/module.f.mjs +93 -0
- package/fjs/media/rust/proof.f.d.mts +17 -0
- package/fjs/media/rust/proof.f.mjs +50 -0
- package/fjs/media/type/module.f.d.mts +97 -0
- package/fjs/media/type/module.f.mjs +281 -0
- package/fjs/media/type/proof.f.mjs +285 -0
- package/fjs/media/type/types.d.ts +67 -0
- package/fjs/media/type/types.js +6 -0
- package/fjs/media/types.d.ts +26 -0
- package/fjs/media/types.js +7 -0
- package/fjs/module.f.d.mts +3 -0
- package/fjs/module.f.mjs +60 -0
- package/fjs/module.mjs +6 -0
- package/fjs/nanvm/module.f.d.mts +54 -0
- package/fjs/nanvm/module.f.mjs +240 -0
- package/fjs/nanvm/proof.f.d.mts +41 -0
- package/fjs/nanvm/proof.f.mjs +173 -0
- package/fjs/nanvm/rust/module.f.d.mts +54 -0
- package/fjs/nanvm/rust/module.f.mjs +166 -0
- package/fjs/nanvm/rust/proof.f.d.mts +21 -0
- package/fjs/nanvm/rust/proof.f.mjs +119 -0
- package/fjs/nanvm/types.d.ts +105 -0
- package/fjs/nanvm/types.js +11 -0
- package/fjs/nanvm/update/module.f.d.mts +23 -0
- package/fjs/nanvm/update/module.f.mjs +33 -0
- package/fjs/nanvm/update/proof.f.d.mts +9 -0
- package/fjs/nanvm/update/proof.f.mjs +32 -0
- package/fjs/path/module.f.d.mts +55 -0
- package/fjs/path/module.f.mjs +96 -0
- package/fjs/path/proof.f.mjs +125 -0
- package/fjs/proof.f.mjs +48 -0
- package/fjs/protocol/json_rpc/module.f.d.mts +127 -0
- package/fjs/protocol/json_rpc/module.f.mjs +112 -0
- package/fjs/protocol/json_rpc/proof.f.mjs +84 -0
- package/fjs/protocol/json_rpc/types.d.ts +30 -0
- package/fjs/protocol/json_rpc/types.js +8 -0
- package/fjs/protocol/mcp/module.f.d.mts +227 -0
- package/fjs/protocol/mcp/module.f.mjs +369 -0
- package/fjs/protocol/mcp/proof.f.d.mts +53 -0
- package/fjs/protocol/mcp/proof.f.mjs +312 -0
- package/fjs/protocol/mcp/stdio/module.f.d.mts +52 -0
- package/fjs/protocol/mcp/stdio/module.f.mjs +132 -0
- package/fjs/protocol/mcp/stdio/proof.f.d.mts +20 -0
- package/fjs/protocol/mcp/stdio/proof.f.mjs +190 -0
- package/fjs/protocol/mcp/types.d.ts +59 -0
- package/fjs/protocol/mcp/types.js +8 -0
- package/fjs/sul/id/module.f.d.mts +37 -0
- package/fjs/sul/id/module.f.mjs +143 -0
- package/fjs/sul/id/proof.f.mjs +72 -0
- package/fjs/sul/id/types.d.ts +8 -0
- package/fjs/sul/id/types.js +6 -0
- package/fjs/sul/level/hash/module.f.d.mts +37 -0
- package/fjs/sul/level/hash/module.f.mjs +61 -0
- package/fjs/sul/level/hash/proof.f.d.mts +15 -0
- package/fjs/sul/level/hash/proof.f.mjs +131 -0
- package/fjs/sul/level/hash/types.d.ts +20 -0
- package/fjs/sul/level/hash/types.js +6 -0
- package/fjs/sul/level/literal/module.f.d.mts +54 -0
- package/fjs/sul/level/literal/module.f.mjs +120 -0
- package/fjs/sul/level/literal/proof.f.mjs +788 -0
- package/fjs/sul/level/literal/types.d.ts +31 -0
- package/fjs/sul/level/literal/types.js +6 -0
- package/fjs/sul/module.f.d.mts +25 -0
- package/fjs/sul/module.f.mjs +69 -0
- package/fjs/sul/proof.f.d.mts +11 -0
- package/fjs/sul/proof.f.mjs +62 -0
- package/fjs/sul/types.d.ts +19 -0
- package/fjs/sul/types.js +6 -0
- package/fjs/text/ascii/module.f.d.mts +136 -0
- package/fjs/text/ascii/module.f.mjs +224 -0
- package/fjs/text/ascii/proof.f.mjs +16 -0
- package/fjs/text/code_point/module.f.d.mts +74 -0
- package/fjs/text/code_point/module.f.mjs +139 -0
- package/fjs/text/code_point/proof.f.mjs +80 -0
- package/fjs/text/module.f.d.mts +39 -0
- package/fjs/text/module.f.mjs +61 -0
- package/fjs/text/proof.f.mjs +48 -0
- package/fjs/text/sgr/module.f.d.mts +58 -0
- package/fjs/text/sgr/module.f.mjs +99 -0
- package/fjs/text/sgr/proof.f.mjs +39 -0
- package/fjs/text/sgr/types.d.ts +12 -0
- package/fjs/text/sgr/types.js +6 -0
- package/fjs/text/types.d.ts +13 -0
- package/fjs/text/types.js +6 -0
- package/fjs/text/utf16/module.f.d.mts +147 -0
- package/fjs/text/utf16/module.f.mjs +350 -0
- package/fjs/text/utf16/proof.f.d.mts +11 -0
- package/fjs/text/utf16/proof.f.mjs +158 -0
- package/fjs/text/utf16/types.d.ts +19 -0
- package/fjs/text/utf16/types.js +6 -0
- package/fjs/text/utf8/module.f.d.mts +69 -0
- package/fjs/text/utf8/module.f.mjs +280 -0
- package/fjs/text/utf8/proof.f.mjs +217 -0
- package/fjs/text/utf8/types.d.ts +26 -0
- package/fjs/text/utf8/types.js +6 -0
- package/fjs/types/array/module.f.d.mts +68 -0
- package/fjs/types/array/module.f.mjs +101 -0
- package/fjs/types/array/proof.f.mjs +98 -0
- package/fjs/types/array/types.d.ts +13 -0
- package/fjs/types/array/types.js +6 -0
- package/fjs/types/bigfloat/module.f.d.mts +14 -0
- package/fjs/types/bigfloat/module.f.mjs +99 -0
- package/fjs/types/bigfloat/proof.f.mjs +218 -0
- package/fjs/types/bigfloat/types.d.ts +6 -0
- package/fjs/types/bigfloat/types.js +6 -0
- package/fjs/types/bigint/benchmark.d.mts +1 -0
- package/fjs/types/bigint/benchmark.mjs +205 -0
- package/fjs/types/bigint/module.f.d.mts +176 -0
- package/fjs/types/bigint/module.f.mjs +289 -0
- package/fjs/types/bigint/proof.f.d.mts +39 -0
- package/fjs/types/bigint/proof.f.mjs +443 -0
- package/fjs/types/bigint/types.d.ts +14 -0
- package/fjs/types/bigint/types.js +6 -0
- package/fjs/types/bit_vec/module.f.d.mts +199 -0
- package/fjs/types/bit_vec/module.f.mjs +485 -0
- package/fjs/types/bit_vec/proof.f.mjs +495 -0
- package/fjs/types/bit_vec/types.d.ts +51 -0
- package/fjs/types/bit_vec/types.js +6 -0
- package/fjs/types/btree/find/module.f.d.mts +15 -0
- package/fjs/types/btree/find/module.f.mjs +80 -0
- package/fjs/types/btree/find/proof.f.d.mts +4 -0
- package/fjs/types/btree/find/proof.f.mjs +121 -0
- package/fjs/types/btree/find/types.d.ts +22 -0
- package/fjs/types/btree/find/types.js +6 -0
- package/fjs/types/btree/module.f.d.mts +10 -0
- package/fjs/types/btree/module.f.mjs +39 -0
- package/fjs/types/btree/proof.f.d.mts +14 -0
- package/fjs/types/btree/proof.f.mjs +85 -0
- package/fjs/types/btree/remove/module.f.d.mts +21 -0
- package/fjs/types/btree/remove/module.f.mjs +187 -0
- package/fjs/types/btree/remove/proof.f.mjs +472 -0
- package/fjs/types/btree/set/module.f.d.mts +5 -0
- package/fjs/types/btree/set/module.f.mjs +117 -0
- package/fjs/types/btree/set/proof.f.mjs +427 -0
- package/fjs/types/btree/types/module.f.d.mts +19 -0
- package/fjs/types/btree/types/module.f.mjs +19 -0
- package/fjs/types/btree/types/types.d.ts +14 -0
- package/fjs/types/btree/types/types.js +6 -0
- package/fjs/types/byte_set/module.f.d.mts +26 -0
- package/fjs/types/byte_set/module.f.mjs +66 -0
- package/fjs/types/byte_set/proof.f.d.mts +12 -0
- package/fjs/types/byte_set/proof.f.mjs +84 -0
- package/fjs/types/byte_set/types.d.ts +6 -0
- package/fjs/types/byte_set/types.js +6 -0
- package/fjs/types/function/compare/module.f.d.mts +44 -0
- package/fjs/types/function/compare/module.f.mjs +71 -0
- package/fjs/types/function/compare/proof.f.mjs +50 -0
- package/fjs/types/function/compare/types.d.ts +22 -0
- package/fjs/types/function/compare/types.js +6 -0
- package/fjs/types/function/module.f.d.mts +26 -0
- package/fjs/types/function/module.f.mjs +32 -0
- package/fjs/types/function/operator/module.f.d.mts +37 -0
- package/fjs/types/function/operator/module.f.mjs +55 -0
- package/fjs/types/function/operator/proof.f.mjs +76 -0
- package/fjs/types/function/operator/types.d.ts +39 -0
- package/fjs/types/function/operator/types.js +6 -0
- package/fjs/types/function/proof.f.mjs +16 -0
- package/fjs/types/function/types.d.ts +16 -0
- package/fjs/types/function/types.js +6 -0
- package/fjs/types/list/module.f.d.mts +88 -0
- package/fjs/types/list/module.f.mjs +309 -0
- package/fjs/types/list/proof.f.d.mts +32 -0
- package/fjs/types/list/proof.f.mjs +363 -0
- package/fjs/types/list/types.d.ts +36 -0
- package/fjs/types/list/types.js +6 -0
- package/fjs/types/map/module.f.d.mts +13 -0
- package/fjs/types/map/module.f.mjs +42 -0
- package/fjs/types/map/proof.f.mjs +25 -0
- package/fjs/types/nibble_set/module.f.d.mts +30 -0
- package/fjs/types/nibble_set/module.f.mjs +43 -0
- package/fjs/types/nibble_set/proof.f.mjs +59 -0
- package/fjs/types/nibble_set/types.d.ts +9 -0
- package/fjs/types/nibble_set/types.js +6 -0
- package/fjs/types/nominal/module.f.d.mts +9 -0
- package/fjs/types/nominal/module.f.mjs +16 -0
- package/fjs/types/nominal/proof.f.d.mts +7 -0
- package/fjs/types/nominal/proof.f.mjs +79 -0
- package/fjs/types/nominal/types.d.ts +25 -0
- package/fjs/types/nominal/types.js +6 -0
- package/fjs/types/nullable/module.f.d.mts +38 -0
- package/fjs/types/nullable/module.f.mjs +53 -0
- package/fjs/types/nullable/proof.f.mjs +34 -0
- package/fjs/types/nullable/types.d.ts +6 -0
- package/fjs/types/nullable/types.js +6 -0
- package/fjs/types/number/module.f.d.mts +23 -0
- package/fjs/types/number/module.f.mjs +55 -0
- package/fjs/types/number/proof.f.mjs +204 -0
- package/fjs/types/object/module.f.d.mts +33 -0
- package/fjs/types/object/module.f.mjs +58 -0
- package/fjs/types/object/proof.f.d.mts +25 -0
- package/fjs/types/object/proof.f.mjs +26 -0
- package/fjs/types/object/types.d.ts +50 -0
- package/fjs/types/object/types.js +8 -0
- package/fjs/types/ordered_map/module.f.d.mts +21 -0
- package/fjs/types/ordered_map/module.f.mjs +54 -0
- package/fjs/types/ordered_map/proof.f.mjs +88 -0
- package/fjs/types/ordered_map/types.d.ts +8 -0
- package/fjs/types/ordered_map/types.js +6 -0
- package/fjs/types/patricia_trie/module.f.d.mts +19 -0
- package/fjs/types/patricia_trie/module.f.mjs +43 -0
- package/fjs/types/patricia_trie/proof.f.d.mts +14 -0
- package/fjs/types/patricia_trie/proof.f.mjs +148 -0
- package/fjs/types/patricia_trie/types.d.ts +34 -0
- package/fjs/types/patricia_trie/types.js +6 -0
- package/fjs/types/prime_field/module.f.d.mts +42 -0
- package/fjs/types/prime_field/module.f.mjs +136 -0
- package/fjs/types/prime_field/proof.f.mjs +131 -0
- package/fjs/types/prime_field/types.d.ts +38 -0
- package/fjs/types/prime_field/types.js +6 -0
- package/fjs/types/range/module.f.d.mts +11 -0
- package/fjs/types/range/module.f.mjs +13 -0
- package/fjs/types/range/proof.f.mjs +10 -0
- package/fjs/types/range/types.d.ts +6 -0
- package/fjs/types/range/types.js +6 -0
- package/fjs/types/range_map/module.f.d.mts +72 -0
- package/fjs/types/range_map/module.f.mjs +130 -0
- package/fjs/types/range_map/proof.f.d.mts +7 -0
- package/fjs/types/range_map/proof.f.mjs +186 -0
- package/fjs/types/range_map/types.d.ts +56 -0
- package/fjs/types/range_map/types.js +6 -0
- package/fjs/types/range_set/module.f.d.mts +5 -0
- package/fjs/types/range_set/module.f.mjs +19 -0
- package/fjs/types/range_set/proof.f.mjs +26 -0
- package/fjs/types/result/module.d.mts +5 -0
- package/fjs/types/result/module.f.d.mts +59 -0
- package/fjs/types/result/module.f.mjs +67 -0
- package/fjs/types/result/module.mjs +22 -0
- package/fjs/types/result/proof.f.mjs +41 -0
- package/fjs/types/result/types.d.ts +17 -0
- package/fjs/types/result/types.js +6 -0
- package/fjs/types/rtti/common/module.f.d.mts +86 -0
- package/fjs/types/rtti/common/module.f.mjs +183 -0
- package/fjs/types/rtti/common/proof.f.d.mts +9 -0
- package/fjs/types/rtti/common/proof.f.mjs +64 -0
- package/fjs/types/rtti/common/types.d.ts +43 -0
- package/fjs/types/rtti/common/types.js +1 -0
- package/fjs/types/rtti/module.f.d.mts +76 -0
- package/fjs/types/rtti/module.f.mjs +110 -0
- package/fjs/types/rtti/parse/module.f.d.mts +9 -0
- package/fjs/types/rtti/parse/module.f.mjs +196 -0
- package/fjs/types/rtti/parse/proof.f.d.mts +122 -0
- package/fjs/types/rtti/parse/proof.f.mjs +363 -0
- package/fjs/types/rtti/parse/types.d.ts +12 -0
- package/fjs/types/rtti/parse/types.js +1 -0
- package/fjs/types/rtti/proof.f.d.mts +8 -0
- package/fjs/types/rtti/proof.f.mjs +20 -0
- package/fjs/types/rtti/ts/module.f.d.mts +34 -0
- package/fjs/types/rtti/ts/module.f.mjs +64 -0
- package/fjs/types/rtti/ts/proof.f.mjs +88 -0
- package/fjs/types/rtti/ts/types.d.ts +88 -0
- package/fjs/types/rtti/ts/types.js +1 -0
- package/fjs/types/rtti/types.d.ts +43 -0
- package/fjs/types/rtti/types.js +1 -0
- package/fjs/types/rtti/validate/module.f.d.mts +6 -0
- package/fjs/types/rtti/validate/module.f.mjs +169 -0
- package/fjs/types/rtti/validate/proof.f.d.mts +125 -0
- package/fjs/types/rtti/validate/proof.f.mjs +437 -0
- package/fjs/types/rtti/validate/types.d.ts +6 -0
- package/fjs/types/rtti/validate/types.js +1 -0
- package/fjs/types/sorted_list/module.f.d.mts +43 -0
- package/fjs/types/sorted_list/module.f.mjs +110 -0
- package/fjs/types/sorted_list/proof.f.d.mts +5 -0
- package/fjs/types/sorted_list/proof.f.mjs +52 -0
- package/fjs/types/sorted_list/types.d.ts +15 -0
- package/fjs/types/sorted_list/types.js +6 -0
- package/fjs/types/sorted_set/module.f.d.mts +24 -0
- package/fjs/types/sorted_set/module.f.mjs +56 -0
- package/fjs/types/sorted_set/proof.f.d.mts +7 -0
- package/fjs/types/sorted_set/proof.f.mjs +77 -0
- package/fjs/types/sorted_set/types.d.ts +6 -0
- package/fjs/types/sorted_set/types.js +6 -0
- package/fjs/types/string/module.f.d.mts +36 -0
- package/fjs/types/string/module.f.mjs +58 -0
- package/fjs/types/string/proof.f.mjs +76 -0
- package/fjs/types/string_set/module.f.d.mts +37 -0
- package/fjs/types/string_set/module.f.mjs +53 -0
- package/fjs/types/string_set/proof.f.mjs +46 -0
- package/fjs/types/string_set/types.d.ts +7 -0
- package/fjs/types/string_set/types.js +6 -0
- package/fjs/types/ts/module.f.d.mts +20 -0
- package/fjs/types/ts/module.f.mjs +51 -0
- package/fjs/types/ts/proof.f.mjs +97 -0
- package/fjs/types/ts/types.d.ts +16 -0
- package/fjs/types/ts/types.js +8 -0
- package/fjs/types/uint8array/module.f.d.mts +31 -0
- package/fjs/types/uint8array/module.f.mjs +53 -0
- package/fjs/types/uint8array/proof.f.d.mts +17 -0
- package/fjs/types/uint8array/proof.f.mjs +73 -0
- package/fjs/website/module.f.d.mts +8 -0
- package/fjs/website/module.f.mjs +24 -0
- package/fjs/website/proof.f.mjs +14 -0
- package/package.json +12 -10
- package/todo/proof.f.d.mts +22 -0
- package/todo/proof.f.mjs +59 -0
- package/fjs/asn.1/module.f.d.ts +0 -62
- package/fjs/asn.1/module.f.js +0 -278
- package/fjs/asn.1/proof.f.js +0 -285
- package/fjs/asserts/module.f.d.ts +0 -36
- package/fjs/asserts/module.f.js +0 -39
- package/fjs/asserts/proof.f.js +0 -18
- package/fjs/base_n/module.f.d.ts +0 -45
- package/fjs/base_n/module.f.js +0 -72
- package/fjs/base_n/proof.f.js +0 -73
- package/fjs/basen/base128/module.f.d.ts +0 -20
- package/fjs/basen/base128/module.f.js +0 -43
- package/fjs/basen/base128/proof.f.js +0 -26
- package/fjs/basen/base64/module.f.d.ts +0 -9
- package/fjs/basen/base64/module.f.js +0 -71
- package/fjs/basen/base64/proof.f.d.ts +0 -16
- package/fjs/basen/base64/proof.f.js +0 -139
- package/fjs/basen/cbase32/module.f.d.ts +0 -11
- package/fjs/basen/cbase32/module.f.js +0 -55
- package/fjs/basen/cbase32/proof.f.d.ts +0 -7
- package/fjs/basen/cbase32/proof.f.js +0 -62
- package/fjs/bnf/data/module.f.d.ts +0 -52
- package/fjs/bnf/data/module.f.js +0 -143
- package/fjs/bnf/data/proof.f.d.ts +0 -8
- package/fjs/bnf/data/proof.f.js +0 -169
- package/fjs/bnf/descent/module.f.d.ts +0 -87
- package/fjs/bnf/descent/module.f.js +0 -149
- package/fjs/bnf/descent/proof.f.d.ts +0 -7
- package/fjs/bnf/descent/proof.f.js +0 -368
- package/fjs/bnf/ll1/module.f.d.ts +0 -72
- package/fjs/bnf/ll1/module.f.js +0 -155
- package/fjs/bnf/ll1/proof.f.d.ts +0 -10
- package/fjs/bnf/ll1/proof.f.js +0 -375
- package/fjs/bnf/module.f.d.ts +0 -165
- package/fjs/bnf/module.f.js +0 -174
- package/fjs/bnf/proof.f.d.ts +0 -12
- package/fjs/bnf/proof.f.js +0 -69
- package/fjs/bnf/testlib.f.d.ts +0 -3
- package/fjs/bnf/testlib.f.js +0 -138
- package/fjs/bnf/token_symbol/module.f.d.ts +0 -38
- package/fjs/bnf/token_symbol/module.f.js +0 -48
- package/fjs/bnf/token_symbol/proof.f.js +0 -37
- package/fjs/cas/cli/module.f.d.ts +0 -6
- package/fjs/cas/cli/module.f.js +0 -53
- package/fjs/cas/cli/proof.f.d.ts +0 -17
- package/fjs/cas/cli/proof.f.js +0 -112
- package/fjs/cas/evo/module.f.d.ts +0 -222
- package/fjs/cas/evo/module.f.js +0 -454
- package/fjs/cas/evo/proof.f.d.ts +0 -43
- package/fjs/cas/evo/proof.f.js +0 -653
- package/fjs/cas/module.f.d.ts +0 -64
- package/fjs/cas/module.f.js +0 -255
- package/fjs/cas/proof.f.d.ts +0 -18
- package/fjs/cas/proof.f.js +0 -305
- package/fjs/ci/bun/module.f.d.ts +0 -2
- package/fjs/ci/bun/module.f.js +0 -15
- package/fjs/ci/common/module.f.d.ts +0 -88
- package/fjs/ci/common/module.f.js +0 -63
- package/fjs/ci/config/module.f.d.ts +0 -45
- package/fjs/ci/config/module.f.js +0 -80
- package/fjs/ci/deno/module.f.d.ts +0 -10
- package/fjs/ci/deno/module.f.js +0 -28
- package/fjs/ci/deno/proof.f.d.ts +0 -5
- package/fjs/ci/deno/proof.f.js +0 -26
- package/fjs/ci/module.f.d.ts +0 -13
- package/fjs/ci/module.f.js +0 -58
- package/fjs/ci/nix/module.f.d.ts +0 -61
- package/fjs/ci/nix/module.f.js +0 -92
- package/fjs/ci/nix/proof.f.d.ts +0 -23
- package/fjs/ci/nix/proof.f.js +0 -109
- package/fjs/ci/node/module.f.d.ts +0 -28
- package/fjs/ci/node/module.f.js +0 -92
- package/fjs/ci/node/proof.f.js +0 -17
- package/fjs/ci/proof.f.d.ts +0 -18
- package/fjs/ci/proof.f.js +0 -182
- package/fjs/ci/rust/module.f.d.ts +0 -3
- package/fjs/ci/rust/module.f.js +0 -75
- package/fjs/cli/module.f.d.ts +0 -11
- package/fjs/cli/module.f.js +0 -34
- package/fjs/cli/proof.f.d.ts +0 -14
- package/fjs/cli/proof.f.js +0 -111
- package/fjs/common/monoid/module.f.d.ts +0 -126
- package/fjs/common/monoid/module.f.js +0 -88
- package/fjs/common/monoid/proof.f.d.ts +0 -9
- package/fjs/common/monoid/proof.f.js +0 -48
- package/fjs/crypto/hmac/module.f.d.ts +0 -29
- package/fjs/crypto/hmac/module.f.js +0 -56
- package/fjs/crypto/hmac/proof.f.js +0 -32
- package/fjs/crypto/pow/module.f.d.ts +0 -37
- package/fjs/crypto/pow/module.f.js +0 -72
- package/fjs/crypto/pow/proof.f.js +0 -111
- package/fjs/crypto/secp/module.f.d.ts +0 -85
- package/fjs/crypto/secp/module.f.js +0 -176
- package/fjs/crypto/secp/proof.f.d.ts +0 -8
- package/fjs/crypto/secp/proof.f.js +0 -124
- package/fjs/crypto/sha2/module.f.d.ts +0 -102
- package/fjs/crypto/sha2/module.f.js +0 -266
- package/fjs/crypto/sha2/proof.f.d.ts +0 -31
- package/fjs/crypto/sha2/proof.f.js +0 -139
- package/fjs/crypto/sign/module.f.d.ts +0 -33
- package/fjs/crypto/sign/module.f.js +0 -163
- package/fjs/crypto/sign/proof.f.d.ts +0 -11
- package/fjs/crypto/sign/proof.f.js +0 -562
- package/fjs/crypto/vdf/module.f.d.ts +0 -21
- package/fjs/crypto/vdf/module.f.js +0 -57
- package/fjs/crypto/vdf/proof.f.js +0 -94
- package/fjs/dev/module.f.d.ts +0 -57
- package/fjs/dev/module.f.js +0 -135
- package/fjs/dev/package_json/module.f.d.ts +0 -16
- package/fjs/dev/package_json/module.f.js +0 -24
- package/fjs/dev/package_json/proof.f.js +0 -28
- package/fjs/dev/proof.f.d.ts +0 -13
- package/fjs/dev/proof.f.js +0 -77
- package/fjs/dev/update/module.f.d.ts +0 -11
- package/fjs/dev/update/module.f.js +0 -20
- package/fjs/dev/update/proof.f.d.ts +0 -7
- package/fjs/dev/update/proof.f.js +0 -35
- package/fjs/djs/ast/module.f.d.ts +0 -62
- package/fjs/djs/ast/module.f.js +0 -61
- package/fjs/djs/ast/proof.f.js +0 -49
- package/fjs/djs/examples/input.f.js +0 -4
- package/fjs/djs/examples/m.f.js +0 -1
- package/fjs/djs/module.f.d.ts +0 -17
- package/fjs/djs/module.f.js +0 -22
- package/fjs/djs/parser/module.f.d.ts +0 -23
- package/fjs/djs/parser/module.f.js +0 -410
- package/fjs/djs/parser/proof.f.js +0 -556
- package/fjs/djs/proof.f.js +0 -50
- package/fjs/djs/serializer/module.f.d.ts +0 -17
- package/fjs/djs/serializer/module.f.js +0 -173
- package/fjs/djs/serializer/proof.f.js +0 -133
- package/fjs/djs/tokenizer/module.f.d.ts +0 -24
- package/fjs/djs/tokenizer/module.f.js +0 -472
- package/fjs/djs/tokenizer/proof.f.js +0 -1211
- package/fjs/djs/transpiler/module.f.d.ts +0 -41
- package/fjs/djs/transpiler/module.f.js +0 -88
- package/fjs/djs/transpiler/proof.f.js +0 -67
- package/fjs/effects/eff/module.f.d.ts +0 -72
- package/fjs/effects/eff/module.f.js +0 -46
- package/fjs/effects/eff/proof.f.d.ts +0 -11
- package/fjs/effects/eff/proof.f.js +0 -58
- package/fjs/effects/list/module.f.d.ts +0 -37
- package/fjs/effects/list/module.f.js +0 -17
- package/fjs/effects/memory/module.f.d.ts +0 -37
- package/fjs/effects/memory/module.f.js +0 -24
- package/fjs/effects/memory/proof.f.d.ts +0 -6
- package/fjs/effects/memory/proof.f.js +0 -50
- package/fjs/effects/mock/module.f.d.ts +0 -16
- package/fjs/effects/mock/module.f.js +0 -20
- package/fjs/effects/module.d.ts +0 -2
- package/fjs/effects/module.f.d.ts +0 -408
- package/fjs/effects/module.f.js +0 -312
- package/fjs/effects/module.js +0 -11
- package/fjs/effects/node/memory/module.d.ts +0 -20
- package/fjs/effects/node/memory/module.js +0 -44
- package/fjs/effects/node/memory/proof.js +0 -29
- package/fjs/effects/node/module.d.ts +0 -20
- package/fjs/effects/node/module.f.d.ts +0 -300
- package/fjs/effects/node/module.f.js +0 -171
- package/fjs/effects/node/module.js +0 -305
- package/fjs/effects/node/proof.f.d.ts +0 -69
- package/fjs/effects/node/proof.f.js +0 -409
- package/fjs/effects/node/virtual/module.f.d.ts +0 -49
- package/fjs/effects/node/virtual/module.f.js +0 -440
- package/fjs/effects/node/virtual/proof.f.d.ts +0 -33
- package/fjs/effects/node/virtual/proof.f.js +0 -186
- package/fjs/effects/proof.f.d.ts +0 -56
- package/fjs/effects/proof.f.js +0 -200
- package/fjs/emergent_testing/example.f.d.ts +0 -13
- package/fjs/emergent_testing/example.f.js +0 -31
- package/fjs/emergent_testing/module.f.d.ts +0 -140
- package/fjs/emergent_testing/module.f.js +0 -289
- package/fjs/emergent_testing/proof.f.d.ts +0 -67
- package/fjs/emergent_testing/proof.f.js +0 -416
- package/fjs/fsc/bnf.f.d.ts +0 -2
- package/fjs/fsc/bnf.f.js +0 -42
- package/fjs/fsc/json.f.d.ts +0 -7
- package/fjs/fsc/json.f.js +0 -64
- package/fjs/fsc/module.f.d.ts +0 -11
- package/fjs/fsc/module.f.js +0 -73
- package/fjs/fsc/proof.f.js +0 -104
- package/fjs/fsm/module.f.d.ts +0 -17
- package/fjs/fsm/module.f.js +0 -55
- package/fjs/fsm/proof.f.js +0 -126
- package/fjs/js/tokenizer/module.f.d.ts +0 -104
- package/fjs/js/tokenizer/module.f.js +0 -547
- package/fjs/js/tokenizer/proof.f.d.ts +0 -9
- package/fjs/js/tokenizer/proof.f.js +0 -986
- package/fjs/mcp/cas/module.f.d.ts +0 -27
- package/fjs/mcp/cas/module.f.js +0 -232
- package/fjs/mcp/evo/module.f.d.ts +0 -32
- package/fjs/mcp/evo/module.f.js +0 -99
- package/fjs/mcp/evo/proof.f.d.ts +0 -12
- package/fjs/mcp/evo/proof.f.js +0 -147
- package/fjs/mcp/module.f.d.ts +0 -56
- package/fjs/mcp/module.f.js +0 -69
- package/fjs/mcp/proof.f.d.ts +0 -45
- package/fjs/mcp/proof.f.js +0 -535
- package/fjs/media/html/module.f.d.ts +0 -52
- package/fjs/media/html/module.f.js +0 -117
- package/fjs/media/html/proof.f.js +0 -65
- package/fjs/media/json/module.f.d.ts +0 -64
- package/fjs/media/json/module.f.js +0 -109
- package/fjs/media/json/parser/module.f.d.ts +0 -21
- package/fjs/media/json/parser/module.f.js +0 -194
- package/fjs/media/json/parser/proof.f.d.ts +0 -5
- package/fjs/media/json/parser/proof.f.js +0 -314
- package/fjs/media/json/proof.f.js +0 -98
- package/fjs/media/json/schema/module.f.d.ts +0 -78
- package/fjs/media/json/schema/module.f.js +0 -96
- package/fjs/media/json/schema/proof.f.d.ts +0 -36
- package/fjs/media/json/schema/proof.f.js +0 -83
- package/fjs/media/json/serializer/module.f.d.ts +0 -28
- package/fjs/media/json/serializer/module.f.js +0 -73
- package/fjs/media/json/serializer/proof.f.js +0 -94
- package/fjs/media/json/tokenizer/module.f.d.ts +0 -15
- package/fjs/media/json/tokenizer/module.f.js +0 -63
- package/fjs/media/json/tokenizer/proof.f.d.ts +0 -5
- package/fjs/media/json/tokenizer/proof.f.js +0 -417
- package/fjs/media/module.f.d.ts +0 -119
- package/fjs/media/module.f.js +0 -88
- package/fjs/media/nix/module.f.d.ts +0 -30
- package/fjs/media/nix/module.f.js +0 -166
- package/fjs/media/nix/proof.f.js +0 -127
- package/fjs/media/proof.f.d.ts +0 -19
- package/fjs/media/proof.f.js +0 -127
- package/fjs/media/revision/module.f.d.ts +0 -86
- package/fjs/media/revision/module.f.js +0 -131
- package/fjs/media/revision/proof.f.d.ts +0 -31
- package/fjs/media/revision/proof.f.js +0 -140
- package/fjs/media/type/module.f.d.ts +0 -135
- package/fjs/media/type/module.f.js +0 -231
- package/fjs/media/type/proof.f.js +0 -213
- package/fjs/module.f.d.ts +0 -2
- package/fjs/module.f.js +0 -50
- package/fjs/module.js +0 -4
- package/fjs/path/module.f.d.ts +0 -46
- package/fjs/path/module.f.js +0 -71
- package/fjs/path/proof.f.js +0 -119
- package/fjs/proof.f.js +0 -38
- package/fjs/protocol/json_rpc/module.f.d.ts +0 -114
- package/fjs/protocol/json_rpc/module.f.js +0 -89
- package/fjs/protocol/json_rpc/proof.f.js +0 -68
- package/fjs/protocol/mcp/module.f.d.ts +0 -239
- package/fjs/protocol/mcp/module.f.js +0 -272
- package/fjs/protocol/mcp/proof.f.d.ts +0 -34
- package/fjs/protocol/mcp/proof.f.js +0 -208
- package/fjs/protocol/mcp/stdio/module.f.d.ts +0 -47
- package/fjs/protocol/mcp/stdio/module.f.js +0 -78
- package/fjs/protocol/mcp/stdio/proof.f.d.ts +0 -13
- package/fjs/protocol/mcp/stdio/proof.f.js +0 -143
- package/fjs/sul/id/module.f.d.ts +0 -33
- package/fjs/sul/id/module.f.js +0 -93
- package/fjs/sul/id/proof.f.js +0 -61
- package/fjs/sul/level/hash/module.f.d.ts +0 -38
- package/fjs/sul/level/hash/module.f.js +0 -43
- package/fjs/sul/level/hash/proof.f.d.ts +0 -13
- package/fjs/sul/level/hash/proof.f.js +0 -112
- package/fjs/sul/level/literal/module.f.d.ts +0 -64
- package/fjs/sul/level/literal/module.f.js +0 -88
- package/fjs/sul/level/literal/proof.f.js +0 -714
- package/fjs/sul/module.f.d.ts +0 -23
- package/fjs/sul/module.f.js +0 -46
- package/fjs/sul/proof.f.d.ts +0 -9
- package/fjs/sul/proof.f.js +0 -47
- package/fjs/text/ascii/module.f.d.ts +0 -136
- package/fjs/text/ascii/module.f.js +0 -154
- package/fjs/text/ascii/proof.f.js +0 -14
- package/fjs/text/code_point/module.f.d.ts +0 -65
- package/fjs/text/code_point/module.f.js +0 -103
- package/fjs/text/code_point/proof.f.js +0 -72
- package/fjs/text/module.f.d.ts +0 -40
- package/fjs/text/module.f.js +0 -43
- package/fjs/text/proof.f.js +0 -44
- package/fjs/text/sgr/module.f.d.ts +0 -53
- package/fjs/text/sgr/module.f.js +0 -63
- package/fjs/text/sgr/proof.f.js +0 -33
- package/fjs/text/utf16/module.f.d.ts +0 -161
- package/fjs/text/utf16/module.f.js +0 -311
- package/fjs/text/utf16/proof.f.d.ts +0 -10
- package/fjs/text/utf16/proof.f.js +0 -144
- package/fjs/text/utf8/module.f.d.ts +0 -83
- package/fjs/text/utf8/module.f.js +0 -247
- package/fjs/text/utf8/proof.f.js +0 -217
- package/fjs/types/array/module.f.d.ts +0 -49
- package/fjs/types/array/module.f.js +0 -42
- package/fjs/types/array/proof.f.js +0 -92
- package/fjs/types/bigfloat/module.f.d.ts +0 -6
- package/fjs/types/bigfloat/module.f.js +0 -69
- package/fjs/types/bigfloat/proof.f.js +0 -217
- package/fjs/types/bigint/module.f.d.ts +0 -172
- package/fjs/types/bigint/module.f.js +0 -251
- package/fjs/types/bigint/proof.f.d.ts +0 -37
- package/fjs/types/bigint/proof.f.js +0 -400
- package/fjs/types/bit_vec/module.f.d.ts +0 -302
- package/fjs/types/bit_vec/module.f.js +0 -375
- package/fjs/types/bit_vec/proof.f.js +0 -465
- package/fjs/types/btree/find/module.f.d.ts +0 -25
- package/fjs/types/btree/find/module.f.js +0 -80
- package/fjs/types/btree/find/proof.f.d.ts +0 -3
- package/fjs/types/btree/find/proof.f.js +0 -108
- package/fjs/types/btree/module.f.d.ts +0 -9
- package/fjs/types/btree/module.f.js +0 -33
- package/fjs/types/btree/proof.f.d.ts +0 -13
- package/fjs/types/btree/proof.f.js +0 -64
- package/fjs/types/btree/remove/module.f.d.ts +0 -14
- package/fjs/types/btree/remove/module.f.js +0 -186
- package/fjs/types/btree/remove/proof.f.js +0 -484
- package/fjs/types/btree/set/module.f.d.ts +0 -8
- package/fjs/types/btree/set/module.f.js +0 -128
- package/fjs/types/btree/set/proof.f.js +0 -368
- package/fjs/types/btree/types/module.f.d.ts +0 -23
- package/fjs/types/btree/types/module.f.js +0 -9
- package/fjs/types/byte_set/module.f.d.ts +0 -16
- package/fjs/types/byte_set/module.f.js +0 -30
- package/fjs/types/byte_set/proof.f.d.ts +0 -11
- package/fjs/types/byte_set/proof.f.js +0 -79
- package/fjs/types/function/compare/module.f.d.ts +0 -49
- package/fjs/types/function/compare/module.f.js +0 -51
- package/fjs/types/function/compare/proof.f.js +0 -47
- package/fjs/types/function/module.f.d.ts +0 -28
- package/fjs/types/function/module.f.js +0 -19
- package/fjs/types/function/operator/module.f.d.ts +0 -48
- package/fjs/types/function/operator/module.f.js +0 -16
- package/fjs/types/function/operator/proof.f.js +0 -53
- package/fjs/types/function/proof.f.js +0 -10
- package/fjs/types/list/module.f.d.ts +0 -75
- package/fjs/types/list/module.f.js +0 -190
- package/fjs/types/list/proof.f.d.ts +0 -31
- package/fjs/types/list/proof.f.js +0 -330
- package/fjs/types/map/module.f.d.ts +0 -2
- package/fjs/types/map/module.f.js +0 -22
- package/fjs/types/map/proof.f.js +0 -22
- package/fjs/types/nibble_set/module.f.d.ts +0 -27
- package/fjs/types/nibble_set/module.f.js +0 -25
- package/fjs/types/nibble_set/proof.f.js +0 -60
- package/fjs/types/nominal/module.f.d.ts +0 -22
- package/fjs/types/nominal/module.f.js +0 -13
- package/fjs/types/nominal/proof.f.d.ts +0 -4
- package/fjs/types/nominal/proof.f.js +0 -48
- package/fjs/types/nullable/module.f.d.ts +0 -21
- package/fjs/types/nullable/module.f.js +0 -29
- package/fjs/types/nullable/proof.f.js +0 -29
- package/fjs/types/number/module.f.d.ts +0 -16
- package/fjs/types/number/module.f.js +0 -30
- package/fjs/types/number/proof.f.js +0 -124
- package/fjs/types/object/module.f.d.ts +0 -54
- package/fjs/types/object/module.f.js +0 -25
- package/fjs/types/object/proof.f.d.ts +0 -4
- package/fjs/types/object/proof.f.js +0 -14
- package/fjs/types/ordered_map/module.f.d.ts +0 -17
- package/fjs/types/ordered_map/module.f.js +0 -22
- package/fjs/types/ordered_map/proof.f.js +0 -73
- package/fjs/types/patricia_trie/module.f.d.ts +0 -25
- package/fjs/types/patricia_trie/module.f.js +0 -35
- package/fjs/types/patricia_trie/proof.f.d.ts +0 -13
- package/fjs/types/patricia_trie/proof.f.js +0 -121
- package/fjs/types/prime_field/module.f.d.ts +0 -62
- package/fjs/types/prime_field/module.f.js +0 -112
- package/fjs/types/prime_field/proof.f.js +0 -128
- package/fjs/types/range/module.f.d.ts +0 -8
- package/fjs/types/range/module.f.js +0 -2
- package/fjs/types/range/proof.f.js +0 -9
- package/fjs/types/range_map/module.f.d.ts +0 -92
- package/fjs/types/range_map/module.f.js +0 -82
- package/fjs/types/range_map/proof.f.d.ts +0 -6
- package/fjs/types/range_map/proof.f.js +0 -151
- package/fjs/types/range_set/module.f.d.ts +0 -5
- package/fjs/types/range_set/module.f.js +0 -16
- package/fjs/types/range_set/proof.f.d.ts +0 -1
- package/fjs/types/range_set/proof.f.js +0 -19
- package/fjs/types/result/module.d.ts +0 -3
- package/fjs/types/result/module.f.d.ts +0 -61
- package/fjs/types/result/module.f.js +0 -54
- package/fjs/types/result/module.js +0 -19
- package/fjs/types/result/proof.f.js +0 -31
- package/fjs/types/rtti/common/module.f.d.ts +0 -121
- package/fjs/types/rtti/common/module.f.js +0 -94
- package/fjs/types/rtti/common/proof.f.d.ts +0 -8
- package/fjs/types/rtti/common/proof.f.js +0 -51
- package/fjs/types/rtti/module.f.d.ts +0 -75
- package/fjs/types/rtti/module.f.js +0 -34
- package/fjs/types/rtti/parse/module.f.d.ts +0 -36
- package/fjs/types/rtti/parse/module.f.js +0 -114
- package/fjs/types/rtti/parse/proof.f.d.ts +0 -115
- package/fjs/types/rtti/parse/proof.f.js +0 -334
- package/fjs/types/rtti/proof.f.d.ts +0 -5
- package/fjs/types/rtti/proof.f.js +0 -16
- package/fjs/types/rtti/ts/module.f.d.ts +0 -118
- package/fjs/types/rtti/ts/module.f.js +0 -59
- package/fjs/types/rtti/ts/proof.f.js +0 -75
- package/fjs/types/rtti/validate/module.f.d.ts +0 -4
- package/fjs/types/rtti/validate/module.f.js +0 -74
- package/fjs/types/rtti/validate/proof.f.d.ts +0 -118
- package/fjs/types/rtti/validate/proof.f.js +0 -349
- package/fjs/types/sorted_list/module.f.d.ts +0 -26
- package/fjs/types/sorted_list/module.f.js +0 -51
- package/fjs/types/sorted_list/proof.f.d.ts +0 -4
- package/fjs/types/sorted_list/proof.f.js +0 -46
- package/fjs/types/sorted_set/module.f.d.ts +0 -33
- package/fjs/types/sorted_set/module.f.js +0 -5
- package/fjs/types/sorted_set/proof.f.d.ts +0 -6
- package/fjs/types/sorted_set/proof.f.js +0 -67
- package/fjs/types/string/module.f.d.ts +0 -24
- package/fjs/types/string/module.f.js +0 -35
- package/fjs/types/string/proof.f.js +0 -77
- package/fjs/types/string_set/module.f.d.ts +0 -30
- package/fjs/types/string_set/module.f.js +0 -37
- package/fjs/types/string_set/proof.f.js +0 -43
- package/fjs/types/ts/module.f.d.ts +0 -23
- package/fjs/types/ts/module.f.js +0 -27
- package/fjs/types/ts/proof.f.js +0 -86
- package/fjs/types/uint8array/module.f.d.ts +0 -13
- package/fjs/types/uint8array/module.f.js +0 -34
- package/fjs/types/uint8array/proof.f.d.ts +0 -17
- package/fjs/types/uint8array/proof.f.js +0 -64
- package/fjs/website/module.f.d.ts +0 -3
- package/fjs/website/module.f.js +0 -14
- package/fjs/website/proof.f.js +0 -13
- package/nanvm-lib/tests/proof.f.d.ts +0 -122
- package/nanvm-lib/tests/proof.f.js +0 -330
- package/todo/031-json.f.js +0 -241
- package/todo/proof.f.d.ts +0 -20
- package/todo/proof.f.js +0 -62
- /package/fjs/asn.1/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/asserts/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/{base_n/proof.f.d.ts → basen/proof.f.d.mts} +0 -0
- /package/fjs/bnf/token_symbol/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/{todo/031-json.f.d.ts → fjs/ci/common/types.js} +0 -0
- /package/fjs/ci/node/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/crypto/hmac/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/crypto/pow/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/crypto/vdf/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/dev/package_json/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/djs/ast/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/djs/examples/{input.f.d.ts → input.f.d.mts} +0 -0
- /package/fjs/djs/examples/{m.f.d.ts → m.f.d.mts} +0 -0
- /package/fjs/djs/parser/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/djs/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/djs/serializer/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/djs/tokenizer/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/djs/transpiler/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/effects/node/memory/{proof.d.ts → proof.d.mts} +0 -0
- /package/fjs/fsc/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/fsm/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/media/html/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/media/json/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/media/json/serializer/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/media/nix/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/media/type/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/{module.d.ts → module.d.mts} +0 -0
- /package/fjs/path/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/protocol/json_rpc/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/sul/id/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/sul/level/literal/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/text/ascii/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/text/code_point/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/text/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/text/sgr/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/text/utf8/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/array/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/bigfloat/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/bit_vec/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/btree/remove/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/btree/set/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/{basen/base128/proof.f.d.ts → types/function/compare/proof.f.d.mts} +0 -0
- /package/fjs/types/function/operator/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/function/{compare/proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/map/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/nibble_set/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/nullable/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/number/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/option/{module.f.d.ts → types.d.ts} +0 -0
- /package/fjs/types/option/{module.f.js → types.js} +0 -0
- /package/fjs/types/ordered_map/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/phantom/{module.f.d.ts → types.d.ts} +0 -0
- /package/fjs/types/phantom/{module.f.js → types.js} +0 -0
- /package/fjs/types/prime_field/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/{function/proof.f.d.ts → range/proof.f.d.mts} +0 -0
- /package/fjs/types/{range/proof.f.d.ts → range_set/proof.f.d.mts} +0 -0
- /package/fjs/types/result/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/rtti/ts/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/string/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/string_set/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/types/ts/{proof.f.d.ts → proof.f.d.mts} +0 -0
- /package/fjs/website/{proof.f.d.ts → proof.f.d.mts} +0 -0
package/fjs/sul/module.f.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Streaming encoder for the full SUL pipeline.
|
|
3
|
-
* Processes bits one at a time through literal levels L1→L2→L3, then through a dynamic array of hash levels.
|
|
4
|
-
*
|
|
5
|
-
* @module
|
|
6
|
-
*/
|
|
7
|
-
import { type PipelineState } from './level/literal/module.f.ts';
|
|
8
|
-
import { type Add } from './level/hash/module.f.ts';
|
|
9
|
-
import { type Id } from './id/module.f.ts';
|
|
10
|
-
import type { InternalState } from '../types/patricia_trie/module.f.ts';
|
|
11
|
-
type HashState = InternalState<Id>;
|
|
12
|
-
export type EncodeState<S> = readonly [
|
|
13
|
-
PipelineState,
|
|
14
|
-
S,
|
|
15
|
-
readonly HashState[]
|
|
16
|
-
];
|
|
17
|
-
export type Encode<S> = {
|
|
18
|
-
readonly push: (bit: bigint, state: EncodeState<S>) => EncodeState<S>;
|
|
19
|
-
readonly end: (state: EncodeState<S>) => Id;
|
|
20
|
-
};
|
|
21
|
-
export declare const emptyEncodeState: <S>(storage: S) => EncodeState<S>;
|
|
22
|
-
export declare const encode: <S>(add: Add<S>) => Encode<S>;
|
|
23
|
-
export {};
|
package/fjs/sul/module.f.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Streaming encoder for the full SUL pipeline.
|
|
3
|
-
* Processes bits one at a time through literal levels L1→L2→L3, then through a dynamic array of hash levels.
|
|
4
|
-
*
|
|
5
|
-
* @module
|
|
6
|
-
*/
|
|
7
|
-
import { emptyPipelineState, pipelineStep } from './level/literal/module.f.js';
|
|
8
|
-
import { encode as hashEncode } from './level/hash/module.f.js';
|
|
9
|
-
import { level3Id } from './id/module.f.js';
|
|
10
|
-
export const emptyEncodeState = (storage) => [emptyPipelineState, storage, []];
|
|
11
|
-
export const encode = (add) => {
|
|
12
|
-
const step = hashEncode(add);
|
|
13
|
-
const cascade = (id0, storage0, stacks0) => {
|
|
14
|
-
let id = id0, storage = storage0, stacks = stacks0;
|
|
15
|
-
for (let index = 0;; index++) {
|
|
16
|
-
if (index >= stacks.length) {
|
|
17
|
-
const [, [newStorage, newStack]] = step(id, [storage, []]);
|
|
18
|
-
return [id, newStorage, [...stacks, newStack]];
|
|
19
|
-
}
|
|
20
|
-
const [out, [newStorage, newStack]] = step(id, [storage, stacks[index]]);
|
|
21
|
-
stacks = [...stacks.slice(0, index), newStack, ...stacks.slice(index + 1)];
|
|
22
|
-
storage = newStorage;
|
|
23
|
-
if (out === undefined)
|
|
24
|
-
return [undefined, storage, stacks];
|
|
25
|
-
id = out;
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
const literalStep = (bit, state) => {
|
|
29
|
-
const [ps, storage, stacks] = state;
|
|
30
|
-
const [l3Out, newPs] = pipelineStep(bit, ps);
|
|
31
|
-
if (l3Out === undefined)
|
|
32
|
-
return [undefined, [newPs, storage, stacks]];
|
|
33
|
-
const [finalId, newStorage, newStacks] = cascade(level3Id(l3Out), storage, stacks);
|
|
34
|
-
return [finalId, [newPs, newStorage, newStacks]];
|
|
35
|
-
};
|
|
36
|
-
return {
|
|
37
|
-
push: (bit, state) => literalStep(bit, state)[1],
|
|
38
|
-
end: state => {
|
|
39
|
-
let [id, s] = literalStep(1n, state);
|
|
40
|
-
while (id === undefined) {
|
|
41
|
-
[id, s] = literalStep(0n, s);
|
|
42
|
-
}
|
|
43
|
-
return id;
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
};
|
package/fjs/sul/proof.f.d.ts
DELETED
package/fjs/sul/proof.f.js
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { assert, assertEq } from '../asserts/module.f.js';
|
|
2
|
-
import { compress } from './id/module.f.js';
|
|
3
|
-
import { encode, emptyEncodeState } from './module.f.js';
|
|
4
|
-
const run = (bits) => {
|
|
5
|
-
const log = [];
|
|
6
|
-
const add = (l, r, m, isSymbol) => { log.push([l, r, m, isSymbol]); return null; };
|
|
7
|
-
const enc = encode(add);
|
|
8
|
-
let s = emptyEncodeState(null);
|
|
9
|
-
for (const b of bits) {
|
|
10
|
-
s = enc.push(b, s);
|
|
11
|
-
}
|
|
12
|
-
return [enc.end(s), log];
|
|
13
|
-
};
|
|
14
|
-
const id = (bits) => run(bits)[0];
|
|
15
|
-
const zeros = (n) => new Array(n).fill(0n);
|
|
16
|
-
export const proof = {
|
|
17
|
-
deterministic: () => {
|
|
18
|
-
assertEq(id(zeros(16)), id(zeros(16)));
|
|
19
|
-
},
|
|
20
|
-
distinct: () => {
|
|
21
|
-
assert(id([0n]) !== id([1n]));
|
|
22
|
-
},
|
|
23
|
-
order_matters: () => {
|
|
24
|
-
assert(id([0n, 1n]) !== id([1n, 0n]));
|
|
25
|
-
},
|
|
26
|
-
length_matters: () => {
|
|
27
|
-
assert(id(zeros(8)) !== id(zeros(16)));
|
|
28
|
-
},
|
|
29
|
-
// Enough bits to trigger at least one hash merge
|
|
30
|
-
has_merges: () => {
|
|
31
|
-
const [, log] = run(zeros(16));
|
|
32
|
-
assert(log.length > 0);
|
|
33
|
-
},
|
|
34
|
-
// Every recorded merge satisfies merged === compress(left, right)
|
|
35
|
-
compress_correct: () => {
|
|
36
|
-
const [, log] = run(zeros(16));
|
|
37
|
-
for (const [l, r, m] of log) {
|
|
38
|
-
assertEq(m, compress(l, r));
|
|
39
|
-
}
|
|
40
|
-
},
|
|
41
|
-
// Patricia-trie internal merges are isSymbol=false; terminal merges are isSymbol=true
|
|
42
|
-
isSymbol_terminal_only: () => {
|
|
43
|
-
const [, log] = run(zeros(16));
|
|
44
|
-
assert(log.some(([, , , isSymbol]) => isSymbol));
|
|
45
|
-
assert(log.every(([l, r, m, isSymbol]) => !isSymbol || m === compress(l, r)));
|
|
46
|
-
},
|
|
47
|
-
};
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Provides ASCII code point constants and helpers for creating numeric code points and inclusive ranges.
|
|
3
|
-
*
|
|
4
|
-
* @module
|
|
5
|
-
*/
|
|
6
|
-
import type { Range } from '../../types/range/module.f.ts';
|
|
7
|
-
/** Returns the code point value of the first character in a string. */
|
|
8
|
-
export declare const one: (s: string) => number;
|
|
9
|
-
/** Returns an inclusive code point range from the first two characters in a string. */
|
|
10
|
-
export declare const range: (s: string) => Range;
|
|
11
|
-
/** 0x08 */
|
|
12
|
-
export declare const backspace: number;
|
|
13
|
-
/** 0x09 */
|
|
14
|
-
export declare const ht: number;
|
|
15
|
-
/** 0x0A */
|
|
16
|
-
export declare const lf: number;
|
|
17
|
-
/** 0x0C */
|
|
18
|
-
export declare const ff: number;
|
|
19
|
-
/** 0x0D */
|
|
20
|
-
export declare const cr: number;
|
|
21
|
-
/** 0x20 */
|
|
22
|
-
export declare const space: number;
|
|
23
|
-
/** 0x21 */
|
|
24
|
-
export declare const exclamationMark: number;
|
|
25
|
-
/** 0x22 */
|
|
26
|
-
export declare const quotationMark: number;
|
|
27
|
-
/** 0x23 */
|
|
28
|
-
export declare const numberSign: number;
|
|
29
|
-
/** 0x24 */
|
|
30
|
-
export declare const dollarSign: number;
|
|
31
|
-
/** 0x25 */
|
|
32
|
-
export declare const percentSign: number;
|
|
33
|
-
/** 0x26 */
|
|
34
|
-
export declare const ampersand: number;
|
|
35
|
-
/** 0x27 */
|
|
36
|
-
export declare const apostrophe: number;
|
|
37
|
-
/** 0x28 */
|
|
38
|
-
export declare const leftParenthesis: number;
|
|
39
|
-
/** 0x29 */
|
|
40
|
-
export declare const rightParenthesis: number;
|
|
41
|
-
/** 0x2A */
|
|
42
|
-
export declare const asterisk: number;
|
|
43
|
-
/** 0x2B */
|
|
44
|
-
export declare const plusSign: number;
|
|
45
|
-
/** 0x2C */
|
|
46
|
-
export declare const comma: number;
|
|
47
|
-
/** 0x2D */
|
|
48
|
-
export declare const hyphenMinus: number;
|
|
49
|
-
/** 0x2E */
|
|
50
|
-
export declare const fullStop: number;
|
|
51
|
-
/** 0x2F */
|
|
52
|
-
export declare const solidus: number;
|
|
53
|
-
/** 0x30..0x39 */
|
|
54
|
-
export declare const digitRange: Range;
|
|
55
|
-
/** 0x30 */
|
|
56
|
-
export declare const digit0: number;
|
|
57
|
-
/** 0x31 */
|
|
58
|
-
export declare const digit1: number;
|
|
59
|
-
/** 0x32 */
|
|
60
|
-
export declare const digit2: number;
|
|
61
|
-
/** 0x33 */
|
|
62
|
-
export declare const digit3: number;
|
|
63
|
-
/** 0x34 */
|
|
64
|
-
export declare const digit4: number;
|
|
65
|
-
/** 0x35 */
|
|
66
|
-
export declare const digit5: number;
|
|
67
|
-
/** 0x36 */
|
|
68
|
-
export declare const digit6: number;
|
|
69
|
-
/** 0x37 */
|
|
70
|
-
export declare const digit7: number;
|
|
71
|
-
/** 0x38 */
|
|
72
|
-
export declare const digit8: number;
|
|
73
|
-
/** 0x39 */
|
|
74
|
-
export declare const digit9: number;
|
|
75
|
-
/** 0x3A */
|
|
76
|
-
export declare const colon: number;
|
|
77
|
-
/** 0x3B */
|
|
78
|
-
export declare const semicolon: number;
|
|
79
|
-
/** 0x3C */
|
|
80
|
-
export declare const lessThanSign: number;
|
|
81
|
-
/** 0x3D */
|
|
82
|
-
export declare const equalsSign: number;
|
|
83
|
-
/** 0x3E */
|
|
84
|
-
export declare const greaterThanSign: number;
|
|
85
|
-
/** 0x3F */
|
|
86
|
-
export declare const questionMark: number;
|
|
87
|
-
/** 0x40 */
|
|
88
|
-
export declare const commercialAt: number;
|
|
89
|
-
/** 0x41..0x5A */
|
|
90
|
-
export declare const latinCapitalLetterRange: Range;
|
|
91
|
-
/** 0x41 */
|
|
92
|
-
export declare const latinCapitalLetterA: number;
|
|
93
|
-
/** 0x45 */
|
|
94
|
-
export declare const latinCapitalLetterE: number;
|
|
95
|
-
/** 0x46 */
|
|
96
|
-
export declare const latinCapitalLetterF: number;
|
|
97
|
-
/** 0x5B */
|
|
98
|
-
export declare const leftSquareBracket: number;
|
|
99
|
-
/** 0x5C */
|
|
100
|
-
export declare const reverseSolidus: number;
|
|
101
|
-
/** 0x5D */
|
|
102
|
-
export declare const rightSquareBracket: number;
|
|
103
|
-
/** 0x5E */
|
|
104
|
-
export declare const circumflexAccent: number;
|
|
105
|
-
/** 0x5F */
|
|
106
|
-
export declare const lowLine: number;
|
|
107
|
-
/** 0x60 */
|
|
108
|
-
export declare const graveAccent: number;
|
|
109
|
-
/** 0x61..0x7A */
|
|
110
|
-
export declare const latinSmallLetterRange: Range;
|
|
111
|
-
/** 0x61 */
|
|
112
|
-
export declare const latinSmallLetterA: number;
|
|
113
|
-
/** 0x62 */
|
|
114
|
-
export declare const latinSmallLetterB: number;
|
|
115
|
-
/** 0x65 */
|
|
116
|
-
export declare const latinSmallLetterE: number;
|
|
117
|
-
/** 0x66 */
|
|
118
|
-
export declare const latinSmallLetterF: number;
|
|
119
|
-
/** 0x6E */
|
|
120
|
-
export declare const latinSmallLetterN: number;
|
|
121
|
-
/** 0x72 */
|
|
122
|
-
export declare const latinSmallLetterR: number;
|
|
123
|
-
/** 0x74 */
|
|
124
|
-
export declare const latinSmallLetterT: number;
|
|
125
|
-
/** 0x75 */
|
|
126
|
-
export declare const latinSmallLetterU: number;
|
|
127
|
-
/** 0x7A */
|
|
128
|
-
export declare const latinSmallLetterZ: number;
|
|
129
|
-
/** 0x7B */
|
|
130
|
-
export declare const leftCurlyBracket: number;
|
|
131
|
-
/** 0x7C */
|
|
132
|
-
export declare const verticalLine: number;
|
|
133
|
-
/** 0x7D */
|
|
134
|
-
export declare const rightCurlyBracket: number;
|
|
135
|
-
/** 0x7E */
|
|
136
|
-
export declare const tilde: number;
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Provides ASCII code point constants and helpers for creating numeric code points and inclusive ranges.
|
|
3
|
-
*
|
|
4
|
-
* @module
|
|
5
|
-
*/
|
|
6
|
-
const at = (s) => (i) => {
|
|
7
|
-
const r = s.codePointAt(i);
|
|
8
|
-
if (r === void 0) {
|
|
9
|
-
throw s;
|
|
10
|
-
}
|
|
11
|
-
return r;
|
|
12
|
-
};
|
|
13
|
-
/** Returns the code point value of the first character in a string. */
|
|
14
|
-
export const one = (s) => at(s)(0);
|
|
15
|
-
/** Returns an inclusive code point range from the first two characters in a string. */
|
|
16
|
-
export const range = (s) => {
|
|
17
|
-
const f = at(s);
|
|
18
|
-
const f0 = f(0);
|
|
19
|
-
if (s.length === 1) {
|
|
20
|
-
return [f0, f0];
|
|
21
|
-
}
|
|
22
|
-
return [f0, f(1)];
|
|
23
|
-
};
|
|
24
|
-
// 0x00..
|
|
25
|
-
/** 0x08 */
|
|
26
|
-
export const backspace = one('\b');
|
|
27
|
-
/** 0x09 */
|
|
28
|
-
export const ht = one('\t');
|
|
29
|
-
/** 0x0A */
|
|
30
|
-
export const lf = one('\n');
|
|
31
|
-
/** 0x0C */
|
|
32
|
-
export const ff = one('\f');
|
|
33
|
-
/** 0x0D */
|
|
34
|
-
export const cr = one('\r');
|
|
35
|
-
// 0x20..
|
|
36
|
-
/** 0x20 */
|
|
37
|
-
export const space = one(' ');
|
|
38
|
-
/** 0x21 */
|
|
39
|
-
export const exclamationMark = one('!');
|
|
40
|
-
/** 0x22 */
|
|
41
|
-
export const quotationMark = one('"');
|
|
42
|
-
/** 0x23 */
|
|
43
|
-
export const numberSign = one('#');
|
|
44
|
-
/** 0x24 */
|
|
45
|
-
export const dollarSign = one('$');
|
|
46
|
-
/** 0x25 */
|
|
47
|
-
export const percentSign = one('%');
|
|
48
|
-
/** 0x26 */
|
|
49
|
-
export const ampersand = one('&');
|
|
50
|
-
/** 0x27 */
|
|
51
|
-
export const apostrophe = one("'");
|
|
52
|
-
/** 0x28 */
|
|
53
|
-
export const leftParenthesis = one('(');
|
|
54
|
-
/** 0x29 */
|
|
55
|
-
export const rightParenthesis = one(')');
|
|
56
|
-
/** 0x2A */
|
|
57
|
-
export const asterisk = one('*');
|
|
58
|
-
/** 0x2B */
|
|
59
|
-
export const plusSign = one('+');
|
|
60
|
-
/** 0x2C */
|
|
61
|
-
export const comma = one(',');
|
|
62
|
-
/** 0x2D */
|
|
63
|
-
export const hyphenMinus = one('-');
|
|
64
|
-
/** 0x2E */
|
|
65
|
-
export const fullStop = one('.');
|
|
66
|
-
/** 0x2F */
|
|
67
|
-
export const solidus = one('/');
|
|
68
|
-
// 0x30..
|
|
69
|
-
/** 0x30..0x39 */
|
|
70
|
-
export const digitRange = range('09');
|
|
71
|
-
/** 0x30 */
|
|
72
|
-
export const digit0 = one('0');
|
|
73
|
-
/** 0x31 */
|
|
74
|
-
export const digit1 = one('1');
|
|
75
|
-
/** 0x32 */
|
|
76
|
-
export const digit2 = one('2');
|
|
77
|
-
/** 0x33 */
|
|
78
|
-
export const digit3 = one('3');
|
|
79
|
-
/** 0x34 */
|
|
80
|
-
export const digit4 = one('4');
|
|
81
|
-
/** 0x35 */
|
|
82
|
-
export const digit5 = one('5');
|
|
83
|
-
/** 0x36 */
|
|
84
|
-
export const digit6 = one('6');
|
|
85
|
-
/** 0x37 */
|
|
86
|
-
export const digit7 = one('7');
|
|
87
|
-
/** 0x38 */
|
|
88
|
-
export const digit8 = one('8');
|
|
89
|
-
/** 0x39 */
|
|
90
|
-
export const digit9 = one('9');
|
|
91
|
-
/** 0x3A */
|
|
92
|
-
export const colon = one(':');
|
|
93
|
-
/** 0x3B */
|
|
94
|
-
export const semicolon = one(';');
|
|
95
|
-
/** 0x3C */
|
|
96
|
-
export const lessThanSign = one('<');
|
|
97
|
-
/** 0x3D */
|
|
98
|
-
export const equalsSign = one('=');
|
|
99
|
-
/** 0x3E */
|
|
100
|
-
export const greaterThanSign = one('>');
|
|
101
|
-
/** 0x3F */
|
|
102
|
-
export const questionMark = one('?');
|
|
103
|
-
// 0x40..
|
|
104
|
-
/** 0x40 */
|
|
105
|
-
export const commercialAt = one('@');
|
|
106
|
-
/** 0x41..0x5A */
|
|
107
|
-
export const latinCapitalLetterRange = range('AZ');
|
|
108
|
-
/** 0x41 */
|
|
109
|
-
export const latinCapitalLetterA = one('A');
|
|
110
|
-
/** 0x45 */
|
|
111
|
-
export const latinCapitalLetterE = one('E');
|
|
112
|
-
/** 0x46 */
|
|
113
|
-
export const latinCapitalLetterF = one('F');
|
|
114
|
-
/** 0x5B */
|
|
115
|
-
export const leftSquareBracket = one('[');
|
|
116
|
-
/** 0x5C */
|
|
117
|
-
export const reverseSolidus = one('\\');
|
|
118
|
-
/** 0x5D */
|
|
119
|
-
export const rightSquareBracket = one(']');
|
|
120
|
-
/** 0x5E */
|
|
121
|
-
export const circumflexAccent = one('^');
|
|
122
|
-
/** 0x5F */
|
|
123
|
-
export const lowLine = one('_');
|
|
124
|
-
// 0x60..
|
|
125
|
-
/** 0x60 */
|
|
126
|
-
export const graveAccent = one('`');
|
|
127
|
-
/** 0x61..0x7A */
|
|
128
|
-
export const latinSmallLetterRange = range('az');
|
|
129
|
-
/** 0x61 */
|
|
130
|
-
export const latinSmallLetterA = one('a');
|
|
131
|
-
/** 0x62 */
|
|
132
|
-
export const latinSmallLetterB = one('b');
|
|
133
|
-
/** 0x65 */
|
|
134
|
-
export const latinSmallLetterE = one('e');
|
|
135
|
-
/** 0x66 */
|
|
136
|
-
export const latinSmallLetterF = one('f');
|
|
137
|
-
/** 0x6E */
|
|
138
|
-
export const latinSmallLetterN = one('n');
|
|
139
|
-
/** 0x72 */
|
|
140
|
-
export const latinSmallLetterR = one('r');
|
|
141
|
-
/** 0x74 */
|
|
142
|
-
export const latinSmallLetterT = one('t');
|
|
143
|
-
/** 0x75 */
|
|
144
|
-
export const latinSmallLetterU = one('u');
|
|
145
|
-
/** 0x7A */
|
|
146
|
-
export const latinSmallLetterZ = one('z');
|
|
147
|
-
/** 0x7B */
|
|
148
|
-
export const leftCurlyBracket = one('{');
|
|
149
|
-
/** 0x7C */
|
|
150
|
-
export const verticalLine = one('|');
|
|
151
|
-
/** 0x7D */
|
|
152
|
-
export const rightCurlyBracket = one('}');
|
|
153
|
-
/** 0x7E */
|
|
154
|
-
export const tilde = one('~');
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { one, range } from './module.f.js';
|
|
2
|
-
import { stringify as jsonStringify } from '../../media/json/module.f.js';
|
|
3
|
-
import { sort } from '../../types/object/module.f.js';
|
|
4
|
-
import { assertEq } from '../../asserts/module.f.js';
|
|
5
|
-
const stringify = jsonStringify(sort);
|
|
6
|
-
export const proof = {
|
|
7
|
-
range: () => {
|
|
8
|
-
const r = stringify(range("A"));
|
|
9
|
-
assertEq(r, '[65,65]');
|
|
10
|
-
},
|
|
11
|
-
throw: {
|
|
12
|
-
oneThrowsOnEmpty: () => one(''),
|
|
13
|
-
},
|
|
14
|
-
};
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared Unicode code-point contract for the UTF-8 and UTF-16 decoders: the
|
|
3
|
-
* error-tag mask used to flag invalid sequences, the streaming `decoder`
|
|
4
|
-
* factory that wraps a per-unit step and an end-of-input step into a single
|
|
5
|
-
* `List`-to-`List` conversion, and the code-point classification predicates
|
|
6
|
-
* (BMP / surrogate / supplementary-plane / overall validity) that both codecs
|
|
7
|
-
* share.
|
|
8
|
-
*
|
|
9
|
-
* @module
|
|
10
|
-
*/
|
|
11
|
-
import { type List } from '../../types/list/module.f.ts';
|
|
12
|
-
import type { StateScan } from '../../types/function/operator/module.f.ts';
|
|
13
|
-
/**
|
|
14
|
-
* Error mask used to tag invalid code points or encoding errors. A decoded
|
|
15
|
-
* value with this bit set represents a malformed unit rather than a valid
|
|
16
|
-
* code point.
|
|
17
|
-
*/
|
|
18
|
-
export declare const errorMask = 2147483648;
|
|
19
|
-
/**
|
|
20
|
-
* Builds a streaming decoder from the two direction-specific steps.
|
|
21
|
-
*
|
|
22
|
-
* Decoding starts from the empty (`null`) state. The input is processed unit by
|
|
23
|
-
* unit through `byteOp`, then a trailing end-of-input marker drives `eofOp` to
|
|
24
|
-
* flush any leftover decoding state.
|
|
25
|
-
*
|
|
26
|
-
* @param byteOp - The per-unit decoding step.
|
|
27
|
-
* @param eofOp - The end-of-input step that flushes the remaining state.
|
|
28
|
-
* @returns A function converting a list of code units into a list of code points.
|
|
29
|
-
*/
|
|
30
|
-
export declare const decoder: <Unit, S, Cp>(byteOp: StateScan<Unit, S | null, List<Cp>>, eofOp: (state: S | null) => readonly [List<Cp>, S | null]) => (input: List<Unit>) => List<Cp>;
|
|
31
|
-
/**
|
|
32
|
-
* Checks whether the 16-bit word (U16) is a high surrogate.
|
|
33
|
-
* Range: 0xD800 - 0xDBFF.
|
|
34
|
-
*/
|
|
35
|
-
export declare const isHighSurrogate: (i: number) => boolean;
|
|
36
|
-
/**
|
|
37
|
-
* Checks whether the 16-bit word (U16) is a low surrogate.
|
|
38
|
-
* Range: 0xDC00 - 0xDFFF.
|
|
39
|
-
*/
|
|
40
|
-
export declare const isLowSurrogate: (i: number) => boolean;
|
|
41
|
-
/**
|
|
42
|
-
* Checks whether the code point is in the BMP range.
|
|
43
|
-
* BMP is the main Unicode plane that covers code points 0x0000 - 0xFFFF, except
|
|
44
|
-
* for the range of surrogates.
|
|
45
|
-
*/
|
|
46
|
-
export declare const isBmpCodePoint: (codePoint: number) => boolean;
|
|
47
|
-
/**
|
|
48
|
-
* Checks whether the code point belongs to a supplementary (additional) Unicode
|
|
49
|
-
* plane. Supplementary planes cover code points from 0x010000 to 0x10FFFF.
|
|
50
|
-
*/
|
|
51
|
-
export declare const isSupplementaryPlane: (i: number) => boolean;
|
|
52
|
-
/**
|
|
53
|
-
* Checks whether the code point is a valid scalar value: within the assignable
|
|
54
|
-
* Unicode range (0x0000 - 0x10FFFF) and not a surrogate.
|
|
55
|
-
*/
|
|
56
|
-
export declare const isValidCodePoint: (c: number) => boolean;
|
|
57
|
-
/**
|
|
58
|
-
* Checks whether the code point is a *text* code point — distinct from
|
|
59
|
-
* {@link isValidCodePoint}, which gates well-formedness for decoding. A code
|
|
60
|
-
* point is text unless it is a control character: the controls are 0x0000 -
|
|
61
|
-
* 0x001F, 0x007F (DEL), and 0x0080 - 0x009F (C1), minus the whitespace block
|
|
62
|
-
* 0x0009 - 0x000D (TAB, LF, VT, FF, CR), which is legitimate in text. Every
|
|
63
|
-
* code point at or above 0x0020 that is not DEL or a C1 control is text.
|
|
64
|
-
*/
|
|
65
|
-
export declare const isTextCodePoint: (c: number) => boolean;
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared Unicode code-point contract for the UTF-8 and UTF-16 decoders: the
|
|
3
|
-
* error-tag mask used to flag invalid sequences, the streaming `decoder`
|
|
4
|
-
* factory that wraps a per-unit step and an end-of-input step into a single
|
|
5
|
-
* `List`-to-`List` conversion, and the code-point classification predicates
|
|
6
|
-
* (BMP / surrogate / supplementary-plane / overall validity) that both codecs
|
|
7
|
-
* share.
|
|
8
|
-
*
|
|
9
|
-
* @module
|
|
10
|
-
*/
|
|
11
|
-
import { flat, stateScan } from '../../types/list/module.f.js';
|
|
12
|
-
import { contains } from '../../types/range/module.f.js';
|
|
13
|
-
/**
|
|
14
|
-
* Error mask used to tag invalid code points or encoding errors. A decoded
|
|
15
|
-
* value with this bit set represents a malformed unit rather than a valid
|
|
16
|
-
* code point.
|
|
17
|
-
*/
|
|
18
|
-
export const errorMask = 0b1000_0000_0000_0000_0000_0000_0000_0000;
|
|
19
|
-
/**
|
|
20
|
-
* Builds a streaming decoder from the two direction-specific steps.
|
|
21
|
-
*
|
|
22
|
-
* Decoding starts from the empty (`null`) state. The input is processed unit by
|
|
23
|
-
* unit through `byteOp`, then a trailing end-of-input marker drives `eofOp` to
|
|
24
|
-
* flush any leftover decoding state.
|
|
25
|
-
*
|
|
26
|
-
* @param byteOp - The per-unit decoding step.
|
|
27
|
-
* @param eofOp - The end-of-input step that flushes the remaining state.
|
|
28
|
-
* @returns A function converting a list of code units into a list of code points.
|
|
29
|
-
*/
|
|
30
|
-
export const decoder = (byteOp, eofOp) => {
|
|
31
|
-
const op = (input, state) => input === null ? eofOp(state) : byteOp(input, state);
|
|
32
|
-
const run = stateScan(op)(null);
|
|
33
|
-
return input => flat(run(flat([input, [null]])));
|
|
34
|
-
};
|
|
35
|
-
/**
|
|
36
|
-
* Unicode code-point classification boundaries. The surrogate block
|
|
37
|
-
* (`0xD800`–`0xDFFF`) splits into a high half (`0xD800`–`0xDBFF`) and a low half
|
|
38
|
-
* (`0xDC00`–`0xDFFF`); the BMP ends at `0xFFFF` and `maxCodePoint` (`0x10FFFF`)
|
|
39
|
-
* is the largest assignable code point. Every predicate below is derived from
|
|
40
|
-
* these constants so the surrogate bounds and the maximum appear exactly once.
|
|
41
|
-
*/
|
|
42
|
-
const surrogateMin = 0xd800;
|
|
43
|
-
const lowSurrogateMin = 0xdc00;
|
|
44
|
-
const surrogateMax = 0xdfff;
|
|
45
|
-
const bmpMax = 0xffff;
|
|
46
|
-
const maxCodePoint = 0x10_ffff;
|
|
47
|
-
/**
|
|
48
|
-
* Checks whether the 16-bit word (U16) is a high surrogate.
|
|
49
|
-
* Range: 0xD800 - 0xDBFF.
|
|
50
|
-
*/
|
|
51
|
-
export const isHighSurrogate = contains(surrogateMin, lowSurrogateMin - 1);
|
|
52
|
-
/**
|
|
53
|
-
* Checks whether the 16-bit word (U16) is a low surrogate.
|
|
54
|
-
* Range: 0xDC00 - 0xDFFF.
|
|
55
|
-
*/
|
|
56
|
-
export const isLowSurrogate = contains(lowSurrogateMin, surrogateMax);
|
|
57
|
-
/**
|
|
58
|
-
* Ranges of code points for the lower (Low) and higher (High) parts of the BMP
|
|
59
|
-
* (Basic Multilingual Plane), i.e. the BMP with the surrogate block removed.
|
|
60
|
-
*/
|
|
61
|
-
const lowBmp = contains(0x0000, surrogateMin - 1);
|
|
62
|
-
const highBmp = contains(surrogateMax + 1, bmpMax);
|
|
63
|
-
/**
|
|
64
|
-
* Checks whether the code point is in the BMP range.
|
|
65
|
-
* BMP is the main Unicode plane that covers code points 0x0000 - 0xFFFF, except
|
|
66
|
-
* for the range of surrogates.
|
|
67
|
-
*/
|
|
68
|
-
export const isBmpCodePoint = (codePoint) => lowBmp(codePoint) || highBmp(codePoint);
|
|
69
|
-
/**
|
|
70
|
-
* Checks whether the code point belongs to a supplementary (additional) Unicode
|
|
71
|
-
* plane. Supplementary planes cover code points from 0x010000 to 0x10FFFF.
|
|
72
|
-
*/
|
|
73
|
-
export const isSupplementaryPlane = contains(bmpMax + 1, maxCodePoint);
|
|
74
|
-
/**
|
|
75
|
-
* The full assignable code-point range and the surrogate block, used to gate
|
|
76
|
-
* overall validity below.
|
|
77
|
-
*/
|
|
78
|
-
const validRange = contains(0, maxCodePoint);
|
|
79
|
-
const isSurrogate = contains(surrogateMin, surrogateMax);
|
|
80
|
-
/**
|
|
81
|
-
* Checks whether the code point is a valid scalar value: within the assignable
|
|
82
|
-
* Unicode range (0x0000 - 0x10FFFF) and not a surrogate.
|
|
83
|
-
*/
|
|
84
|
-
export const isValidCodePoint = (c) => validRange(c) && !isSurrogate(c);
|
|
85
|
-
/**
|
|
86
|
-
* The control-character blocks and the whitespace exception used to separate
|
|
87
|
-
* *text* code points from binary control bytes. C0 controls span 0x0000 -
|
|
88
|
-
* 0x001F; 0x007F (DEL) and the C1 controls (0x0080 - 0x009F) form one
|
|
89
|
-
* contiguous run; the whitespace block 0x0009 - 0x000D (TAB, LF, VT, FF, CR) is
|
|
90
|
-
* the only control range legitimate in text.
|
|
91
|
-
*/
|
|
92
|
-
const c0Control = contains(0x00, 0x1f);
|
|
93
|
-
const delAndC1Control = contains(0x7f, 0x9f);
|
|
94
|
-
const textWhitespace = contains(0x09, 0x0d);
|
|
95
|
-
/**
|
|
96
|
-
* Checks whether the code point is a *text* code point — distinct from
|
|
97
|
-
* {@link isValidCodePoint}, which gates well-formedness for decoding. A code
|
|
98
|
-
* point is text unless it is a control character: the controls are 0x0000 -
|
|
99
|
-
* 0x001F, 0x007F (DEL), and 0x0080 - 0x009F (C1), minus the whitespace block
|
|
100
|
-
* 0x0009 - 0x000D (TAB, LF, VT, FF, CR), which is legitimate in text. Every
|
|
101
|
-
* code point at or above 0x0020 that is not DEL or a C1 control is text.
|
|
102
|
-
*/
|
|
103
|
-
export const isTextCodePoint = (c) => textWhitespace(c) || !(c0Control(c) || delAndC1Control(c));
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { isBmpCodePoint, isHighSurrogate, isLowSurrogate, isSupplementaryPlane, isTextCodePoint, isValidCodePoint, } from './module.f.js';
|
|
2
|
-
const check = (actual, expected) => {
|
|
3
|
-
if (actual !== expected) {
|
|
4
|
-
throw `${actual} !== ${expected}`;
|
|
5
|
-
}
|
|
6
|
-
};
|
|
7
|
-
export const proof = {
|
|
8
|
-
isHighSurrogate: [
|
|
9
|
-
() => check(isHighSurrogate(0xd800), true),
|
|
10
|
-
() => check(isHighSurrogate(0xdbff), true),
|
|
11
|
-
() => check(isHighSurrogate(0xd7ff), false),
|
|
12
|
-
() => check(isHighSurrogate(0xdc00), false),
|
|
13
|
-
],
|
|
14
|
-
isLowSurrogate: [
|
|
15
|
-
() => check(isLowSurrogate(0xdc00), true),
|
|
16
|
-
() => check(isLowSurrogate(0xdfff), true),
|
|
17
|
-
() => check(isLowSurrogate(0xdbff), false),
|
|
18
|
-
() => check(isLowSurrogate(0xe000), false),
|
|
19
|
-
],
|
|
20
|
-
isBmpCodePoint: [
|
|
21
|
-
// lowBmp branch true
|
|
22
|
-
() => check(isBmpCodePoint(0x0000), true),
|
|
23
|
-
() => check(isBmpCodePoint(0xd7ff), true),
|
|
24
|
-
// lowBmp false, highBmp true
|
|
25
|
-
() => check(isBmpCodePoint(0xe000), true),
|
|
26
|
-
() => check(isBmpCodePoint(0xffff), true),
|
|
27
|
-
// both false: surrogate and supplementary
|
|
28
|
-
() => check(isBmpCodePoint(0xd800), false),
|
|
29
|
-
() => check(isBmpCodePoint(0x10000), false),
|
|
30
|
-
],
|
|
31
|
-
isSupplementaryPlane: [
|
|
32
|
-
() => check(isSupplementaryPlane(0x10000), true),
|
|
33
|
-
() => check(isSupplementaryPlane(0x10ffff), true),
|
|
34
|
-
() => check(isSupplementaryPlane(0xffff), false),
|
|
35
|
-
() => check(isSupplementaryPlane(0x110000), false),
|
|
36
|
-
],
|
|
37
|
-
isValidCodePoint: [
|
|
38
|
-
// in range, not surrogate
|
|
39
|
-
() => check(isValidCodePoint(0x0000), true),
|
|
40
|
-
() => check(isValidCodePoint(0x10ffff), true),
|
|
41
|
-
// in range, surrogate -> invalid
|
|
42
|
-
() => check(isValidCodePoint(0xd800), false),
|
|
43
|
-
() => check(isValidCodePoint(0xdfff), false),
|
|
44
|
-
// out of range -> validRange short-circuits false
|
|
45
|
-
() => check(isValidCodePoint(-1), false),
|
|
46
|
-
() => check(isValidCodePoint(0x110000), false),
|
|
47
|
-
],
|
|
48
|
-
isTextCodePoint: [
|
|
49
|
-
// C0 controls are binary...
|
|
50
|
-
() => check(isTextCodePoint(0x00), false), // NUL
|
|
51
|
-
() => check(isTextCodePoint(0x08), false), // BS
|
|
52
|
-
() => check(isTextCodePoint(0x1b), false), // ESC
|
|
53
|
-
() => check(isTextCodePoint(0x1f), false), // US
|
|
54
|
-
// ...except the whitespace block 0x09 - 0x0D
|
|
55
|
-
() => check(isTextCodePoint(0x09), true), // TAB
|
|
56
|
-
() => check(isTextCodePoint(0x0a), true), // LF
|
|
57
|
-
() => check(isTextCodePoint(0x0b), true), // VT
|
|
58
|
-
() => check(isTextCodePoint(0x0c), true), // FF
|
|
59
|
-
() => check(isTextCodePoint(0x0d), true), // CR
|
|
60
|
-
// printable ASCII is text
|
|
61
|
-
() => check(isTextCodePoint(0x20), true), // space
|
|
62
|
-
() => check(isTextCodePoint(0x41), true), // 'A'
|
|
63
|
-
() => check(isTextCodePoint(0x7e), true), // '~'
|
|
64
|
-
// DEL and the C1 controls are binary
|
|
65
|
-
() => check(isTextCodePoint(0x7f), false), // DEL
|
|
66
|
-
() => check(isTextCodePoint(0x80), false), // C1 start
|
|
67
|
-
() => check(isTextCodePoint(0x9f), false), // C1 end
|
|
68
|
-
// above C1 is text again
|
|
69
|
-
() => check(isTextCodePoint(0xa0), true), // NBSP
|
|
70
|
-
() => check(isTextCodePoint(0x10ffff), true),
|
|
71
|
-
],
|
|
72
|
-
};
|