pareto 0.55.0 → 0.57.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/auto.dist/index.d.ts +3 -3
- package/auto.dist/index.js +5 -5
- package/auto.dist/public/{pareto__2__typescript → modules/pareto2typescript}/auto.api.js +1 -1
- package/auto.dist/public/{pareto__2__typescript → modules/pareto2typescript}/auto.implementation.js +1 -1
- package/auto.dist/public/{pareto__2__typescript → modules/pareto2typescript}/auto.provided_interface_glossary.d.ts +522 -249
- package/auto.dist/public/{cosmos__2__pareto → modules/pareto2typescript}/auto.provided_interface_glossary.js +1 -1
- package/auto.dist/public/{pareto__2__typescript → modules/pareto2typescript}/auto.provided_interface_glossary.shadow.d.ts +4 -0
- package/auto.dist/public/modules/pareto2typescript/auto.provided_interface_glossary.shadow.js +3 -0
- package/auto.dist/public/modules/pareto2typescript/implementations/serializeCompilationUnit.alg.js +563 -0
- package/auto.dist/public/{cosmos__2__pareto → modules/pareto2typescript}/index.js +1 -1
- package/auto.dist/public/{fountain__pen → modules/typescript__naming}/auto.api.d.ts +1 -1
- package/auto.dist/public/{cosmos__2__pareto → modules/typescript__naming}/auto.api.js +1 -1
- package/auto.dist/public/modules/typescript__naming/auto.implementation.d.ts +2 -0
- package/auto.dist/public/modules/typescript__naming/auto.implementation.js +6 -0
- package/auto.dist/public/modules/typescript__naming/auto.provided_interface_glossary.d.ts +9 -0
- package/auto.dist/public/{fountain__pen → modules/typescript__naming}/auto.provided_interface_glossary.js +1 -1
- package/auto.dist/public/{fountain__pen → modules/typescript__naming}/auto.provided_interface_glossary.shadow.d.ts +1 -1
- package/auto.dist/public/modules/typescript__naming/auto.provided_interface_glossary.shadow.js +3 -0
- package/auto.dist/public/modules/typescript__naming/implementations/createIdentifier.alg.d.ts +2 -0
- package/auto.dist/public/modules/typescript__naming/implementations/createIdentifier.alg.js +248 -0
- package/auto.dist/public/{pareto__2__typescript → modules/typescript__naming}/index.js +1 -1
- package/auto.dist/public/modules/typescript__serialize/auto.api.d.ts +8 -0
- package/auto.dist/public/{fountain__pen → modules/typescript__serialize}/auto.api.js +1 -1
- package/auto.dist/public/modules/typescript__serialize/auto.implementation.d.ts +4 -0
- package/auto.dist/public/modules/typescript__serialize/auto.implementation.js +10 -0
- package/auto.dist/public/modules/typescript__serialize/auto.provided_interface_glossary.d.ts +11 -0
- package/auto.dist/public/{pareto__2__typescript → modules/typescript__serialize}/auto.provided_interface_glossary.js +1 -1
- package/auto.dist/public/modules/typescript__serialize/auto.provided_interface_glossary.shadow.d.ts +11 -0
- package/auto.dist/public/modules/typescript__serialize/auto.provided_interface_glossary.shadow.js +3 -0
- package/auto.dist/public/modules/typescript__serialize/implementations/createApostrophedString.alg.d.ts +2 -0
- package/auto.dist/public/modules/typescript__serialize/implementations/createApostrophedString.alg.js +62 -0
- package/auto.dist/public/modules/typescript__serialize/implementations/createBacktickedString.alg.d.ts +2 -0
- package/auto.dist/public/modules/typescript__serialize/implementations/createBacktickedString.alg.js +62 -0
- package/auto.dist/public/modules/typescript__serialize/implementations/createQuotedString.alg.d.ts +2 -0
- package/auto.dist/public/modules/typescript__serialize/implementations/createQuotedString.alg.js +45 -0
- package/auto.dist/public/modules/typescript__serialize/implementations/escape.alg.d.ts +0 -0
- package/auto.dist/public/modules/typescript__serialize/implementations/escape.alg.js +20 -0
- package/auto.dist/public/{fountain__pen → modules/typescript__serialize}/index.js +1 -1
- package/auto.pareto/$.data.ts +8 -13
- package/auto.pareto/auto.dependencies/index.ts +6 -4
- package/auto.pareto/auto.dependencies/pareto-pure/$.data.ts +60 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/index.ts +7 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/$.data.ts +58 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/arithmetic/api.data.ts +26 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/arithmetic/glossary.data.ts +76 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/array/api.data.ts +21 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/array/glossary.data.ts +60 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/boolean/api.data.ts +21 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/boolean/glossary.data.ts +45 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/build/api.data.ts +25 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/build/glossary.data.ts +133 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/collation/api.data.ts +15 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/collation/glossary.data.ts +34 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/dictionary/api.data.ts +60 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/dictionary/glossary.data.ts +130 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/filesystem/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/filesystem/glossary.data.ts +189 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/foreach/api.data.ts +25 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/foreach/glossary.data.ts +78 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/http/api.data.ts +16 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/http/glossary.data.ts +69 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/json/api.data.ts +16 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/json/glossary.data.ts +51 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/nested/api.data.ts +15 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/nested/glossary.data.ts +29 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/numerical_predicates/api.data.ts +18 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/numerical_predicates/glossary.data.ts +40 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/path/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/path/glossary.data.ts +35 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/resolve/api.data.ts +20 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/resolve/glossary.data.ts +84 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/string/api.data.ts +26 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/string/glossary.data.ts +75 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/tostring/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-impure-library/modules/tostring/glossary.data.ts +42 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/$.data.ts +46 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/arithmetic/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/arithmetic/glossary.data.ts +76 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/array/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/array/glossary.data.ts +52 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/boolean/api.data.ts +21 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/boolean/glossary.data.ts +45 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/build/api.data.ts +25 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/build/glossary.data.ts +133 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/dictionary/api.data.ts +49 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/dictionary/glossary.data.ts +119 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/json/api.data.ts +15 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/json/glossary.data.ts +47 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/nested/api.data.ts +15 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/nested/glossary.data.ts +29 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/resolve/api.data.ts +15 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/resolve/glossary.data.ts +52 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/string/api.data.ts +17 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/string/glossary.data.ts +39 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/tostring/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/pareto-standard-library/modules/tostring/glossary.data.ts +42 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/res-typescript/$.data.ts +35 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/res-typescript/modules/naming/api.data.ts +15 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/res-typescript/modules/naming/glossary.data.ts +34 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/res-typescript/modules/serialize/api.data.ts +18 -0
- package/auto.pareto/auto.dependencies/pareto-pure/auto.dependencies/res-typescript/modules/serialize/glossary.data.ts +42 -0
- package/auto.pareto/{glossaries → auto.dependencies/pareto-pure/glossaries}/auto.cosmos_type_system.data.ts +19 -12
- package/auto.pareto/auto.dependencies/pareto-pure/glossaries/auto.cosmos_typescript.data.ts +122 -0
- package/auto.pareto/auto.dependencies/pareto-pure/glossaries/auto.grammar.data.ts +262 -0
- package/auto.pareto/auto.dependencies/pareto-pure/glossaries/auto.liana.data.ts +1955 -0
- package/auto.pareto/{glossaries → auto.dependencies/pareto-pure/glossaries}/auto.pareto.data.ts +430 -259
- package/auto.pareto/auto.dependencies/pareto-pure/glossaries/auto.tendril.data.ts +1139 -0
- package/auto.pareto/auto.dependencies/pareto-pure/glossaries/auto.tendril_resolved.data.ts +1025 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/cosmos2pareto/api.data.ts +17 -0
- package/auto.pareto/{modules → auto.dependencies/pareto-pure/modules}/cosmos2pareto/glossary.data.ts +6 -14
- package/auto.pareto/auto.dependencies/pareto-pure/modules/fountain_pen/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/fountain_pen/glossary.data.ts +55 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/liana2tendril/api.data.ts +24 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/liana2tendril/glossary.data.ts +48 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/tendril2cosmos_type_system/api.data.ts +16 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/tendril2cosmos_type_system/glossary.data.ts +73 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/tendril2pareto/api.data.ts +16 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/tendril2pareto/glossary.data.ts +33 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/testresult/api.data.ts +26 -0
- package/auto.pareto/auto.dependencies/pareto-pure/modules/testresult/glossary.data.ts +144 -0
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/$.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/arithmetic/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/arithmetic/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/array/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/array/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/boolean/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/boolean/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/build/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/build/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/collation/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/collation/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/dictionary/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/dictionary/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/filesystem/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/filesystem/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/foreach/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/foreach/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/http/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/http/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/json/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/json/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/nested/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/nested/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/numerical_predicates/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/numerical_predicates/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/path/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/path/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/resolve/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/resolve/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/string/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/string/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/tostring/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/pareto-standard-impure-library/modules/tostring/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/pareto-standard-library/$.data.ts +46 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/arithmetic/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/arithmetic/glossary.data.ts +76 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/array/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/array/glossary.data.ts +52 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/boolean/api.data.ts +21 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/boolean/glossary.data.ts +45 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/build/api.data.ts +25 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/build/glossary.data.ts +133 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/dictionary/api.data.ts +49 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/dictionary/glossary.data.ts +119 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/json/api.data.ts +15 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/json/glossary.data.ts +47 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/nested/api.data.ts +15 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/nested/glossary.data.ts +29 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/resolve/api.data.ts +15 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/resolve/glossary.data.ts +52 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/string/api.data.ts +17 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/string/glossary.data.ts +39 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/tostring/api.data.ts +19 -0
- package/auto.pareto/auto.dependencies/pareto-standard-library/modules/tostring/glossary.data.ts +42 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/$.data.ts +36 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/array/api.data.ts +23 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/array/glossary.data.ts +88 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/dictionary/api.data.ts +27 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/dictionary/glossary.data.ts +82 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/json/api.data.ts +16 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/json/glossary.data.ts +51 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/numerical_predicates/api.data.ts +18 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/numerical_predicates/glossary.data.ts +40 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/string/api.data.ts +42 -0
- package/auto.pareto/auto.dependencies/pareto-subatomic-library/modules/string/glossary.data.ts +109 -0
- package/auto.pareto/auto.dependencies/res-typescript/$.data.ts +1 -1
- package/auto.pareto/auto.dependencies/res-typescript/modules/naming/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/res-typescript/modules/naming/glossary.data.ts +1 -1
- package/auto.pareto/auto.dependencies/res-typescript/modules/serialize/api.data.ts +2 -2
- package/auto.pareto/auto.dependencies/res-typescript/modules/serialize/glossary.data.ts +1 -1
- package/auto.pareto/modules/pareto2typescript/api.data.ts +11 -14
- package/auto.pareto/modules/pareto2typescript/glossary.data.ts +36 -25
- package/auto.pareto/modules/typescript_naming/api.data.ts +28 -0
- package/auto.pareto/modules/typescript_naming/glossary.data.ts +34 -0
- package/auto.pareto/modules/typescript_serialize/api.data.ts +17 -0
- package/auto.pareto/modules/typescript_serialize/glossary.data.ts +36 -0
- package/package.json +6 -5
- package/auto.dist/public/cosmos__2__pareto/auto.api.d.ts +0 -6
- package/auto.dist/public/cosmos__2__pareto/auto.implementation.d.ts +0 -2
- package/auto.dist/public/cosmos__2__pareto/auto.implementation.js +0 -6
- package/auto.dist/public/cosmos__2__pareto/auto.provided_interface_glossary.d.ts +0 -3045
- package/auto.dist/public/cosmos__2__pareto/auto.provided_interface_glossary.shadow.d.ts +0 -29
- package/auto.dist/public/cosmos__2__pareto/auto.provided_interface_glossary.shadow.js +0 -3
- package/auto.dist/public/cosmos__2__pareto/implementations/library2ParetoComparators.alg.d.ts +0 -2
- package/auto.dist/public/cosmos__2__pareto/implementations/library2ParetoComparators.alg.js +0 -359
- package/auto.dist/public/fountain__pen/auto.implementation.d.ts +0 -2
- package/auto.dist/public/fountain__pen/auto.implementation.js +0 -6
- package/auto.dist/public/fountain__pen/auto.provided_interface_glossary.d.ts +0 -29
- package/auto.dist/public/fountain__pen/auto.provided_interface_glossary.shadow.js +0 -3
- package/auto.dist/public/fountain__pen/implementations/serialize.alg.d.ts +0 -2
- package/auto.dist/public/fountain__pen/implementations/serialize.alg.js +0 -98
- package/auto.dist/public/glossaries/cosmos__type__system.d.ts +0 -1760
- package/auto.dist/public/glossaries/cosmos__type__system.js +0 -3
- package/auto.dist/public/glossaries/cosmos__type__system.shadow.d.ts +0 -8
- package/auto.dist/public/glossaries/cosmos__type__system.shadow.js +0 -3
- package/auto.dist/public/glossaries/pareto.d.ts +0 -1267
- package/auto.dist/public/glossaries/pareto.js +0 -3
- package/auto.dist/public/glossaries/pareto.shadow.d.ts +0 -8
- package/auto.dist/public/glossaries/pareto.shadow.js +0 -3
- package/auto.dist/public/pareto__2__typescript/auto.provided_interface_glossary.shadow.js +0 -3
- package/auto.dist/public/pareto__2__typescript/implementations/serializeCompilationUnit.alg.js +0 -510
- package/auto.dist/public/shorthands/cosmos.d.ts +0 -50
- package/auto.dist/public/shorthands/cosmos.js +0 -512
- package/auto.dist/public/shorthands/pareto.d.ts +0 -48
- package/auto.dist/public/shorthands/pareto.js +0 -241
- package/auto.pareto/modules/cosmos2pareto/api.data.ts +0 -18
- package/auto.pareto/modules/fountain_pen/api.data.ts +0 -17
- package/auto.pareto/modules/fountain_pen/glossary.data.ts +0 -32
- /package/auto.dist/public/{pareto__2__typescript → modules/pareto2typescript}/auto.api.d.ts +0 -0
- /package/auto.dist/public/{pareto__2__typescript → modules/pareto2typescript}/auto.implementation.d.ts +0 -0
- /package/auto.dist/public/{pareto__2__typescript → modules/pareto2typescript}/implementations/serializeCompilationUnit.alg.d.ts +0 -0
- /package/auto.dist/public/{cosmos__2__pareto → modules/pareto2typescript}/index.d.ts +0 -0
- /package/auto.dist/public/{fountain__pen → modules/typescript__naming}/index.d.ts +0 -0
- /package/auto.dist/public/{pareto__2__typescript → modules/typescript__serialize}/index.d.ts +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by5wcm92aWRlZF9pbnRlcmZhY2VfZ2xvc3NhcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHVibGljL21vZHVsZXMvcGFyZXRvMnR5cGVzY3JpcHQvYXV0by5wcm92aWRlZF9pbnRlcmZhY2VfZ2xvc3NhcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -8,11 +8,15 @@ export declare namespace I {
|
|
|
8
8
|
export declare namespace IMP {
|
|
9
9
|
namespace fp {
|
|
10
10
|
namespace A {
|
|
11
|
+
type Indent = ($: null) => null;
|
|
11
12
|
type Serialize = ($: null) => null;
|
|
13
|
+
type Stream = ($: null) => null;
|
|
12
14
|
}
|
|
13
15
|
namespace D {
|
|
14
16
|
}
|
|
15
17
|
namespace I {
|
|
18
|
+
type Indented__Lines = null;
|
|
19
|
+
type Lines = null;
|
|
16
20
|
}
|
|
17
21
|
namespace IMP {
|
|
18
22
|
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by5wcm92aWRlZF9pbnRlcmZhY2VfZ2xvc3Nhcnkuc2hhZG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9tb2R1bGVzL3BhcmV0bzJ0eXBlc2NyaXB0L2F1dG8ucHJvdmlkZWRfaW50ZXJmYWNlX2dsb3NzYXJ5LnNoYWRvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
package/auto.dist/public/modules/pareto2typescript/implementations/serializeCompilationUnit.alg.js
ADDED
|
@@ -0,0 +1,563 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.$$ = void 0;
|
|
37
|
+
const pa = __importStar(require("pareto-core-alg"));
|
|
38
|
+
const pd = __importStar(require("pareto-core-dev"));
|
|
39
|
+
const g_fp = __importStar(require("pareto-pure/auto.dist/public/modules/fountain__pen"));
|
|
40
|
+
const a_psl = __importStar(require("pareto-standard-library"));
|
|
41
|
+
const a_psub = __importStar(require("pareto-subatomic-library"));
|
|
42
|
+
const a_ts_serialize = __importStar(require("../../typescript__serialize"));
|
|
43
|
+
const a_ts_naming = __importStar(require("../../typescript__naming"));
|
|
44
|
+
const $$ = () => {
|
|
45
|
+
const serializeFP = g_fp.serialize(null, null);
|
|
46
|
+
const indentx = g_fp.indent(null, null);
|
|
47
|
+
const decorateWithKeys = a_psl.dictionary.decorateDictionaryEntriesWithKey(null, null);
|
|
48
|
+
const flatten = a_psl.nested.flatten(null, null);
|
|
49
|
+
const append = a_psl.array.append(null, null);
|
|
50
|
+
const isEmpty = a_psub.dictionary.isEmpty(null, null);
|
|
51
|
+
const createTypeIdentifier = a_ts_naming.createIdentifier(null, null);
|
|
52
|
+
const createSymbolIdentifier = a_ts_naming.createIdentifier(null, null);
|
|
53
|
+
const createNamespaceIdentifier = a_ts_naming.createIdentifier(null, null);
|
|
54
|
+
const createBacktickedString = a_ts_serialize.createBacktickedString(null, null);
|
|
55
|
+
const createApostrophedString = a_ts_serialize.createApostrophedString(null, null);
|
|
56
|
+
const createQuotedString = a_ts_serialize.createQuotedString(null, null);
|
|
57
|
+
const enrich = a_psub.array.enrichWithPositionInformation(null, null);
|
|
58
|
+
// function enrich<T>($: pt.Dictionary<T>): pt.Dictionary<EnrichedEntry<T>> {
|
|
59
|
+
// const out: { [key: string]: EnrichedEntry<T> } = {}
|
|
60
|
+
// edfe($, {
|
|
61
|
+
// 'onEmpty': () => {
|
|
62
|
+
// },
|
|
63
|
+
// 'onNotEmpty': ($c) => {
|
|
64
|
+
// $c(($) => {
|
|
65
|
+
// out[$.key] = $
|
|
66
|
+
// })
|
|
67
|
+
// }
|
|
68
|
+
// })
|
|
69
|
+
// return pa.wrapRawDictionary(out)
|
|
70
|
+
// }
|
|
71
|
+
function reduceDictionary($, seed, cb) {
|
|
72
|
+
let intermediate = seed;
|
|
73
|
+
$.__forEach((a, b) => a < b, ($) => {
|
|
74
|
+
intermediate = cb($, intermediate);
|
|
75
|
+
});
|
|
76
|
+
return intermediate;
|
|
77
|
+
}
|
|
78
|
+
function toArray($) {
|
|
79
|
+
//FIXME ordering
|
|
80
|
+
return $.__reduce((a, b) => a.key < b.key ? -1 : a.key < b.key ? 1 : 0, pa.emptyArray(), ($, current) => append({ 'array': current, 'element': $ }));
|
|
81
|
+
}
|
|
82
|
+
function multiple($) {
|
|
83
|
+
return ['multiple', pa.wrapRawArray($)];
|
|
84
|
+
}
|
|
85
|
+
function nothing() {
|
|
86
|
+
return ['none', null];
|
|
87
|
+
}
|
|
88
|
+
function dictionary($) {
|
|
89
|
+
return ['multiple', toArray($)];
|
|
90
|
+
}
|
|
91
|
+
function array($) {
|
|
92
|
+
return ['multiple', $];
|
|
93
|
+
}
|
|
94
|
+
function nestedLine($) {
|
|
95
|
+
return ['single', ['nested line', flatten(multiple($))]];
|
|
96
|
+
}
|
|
97
|
+
function indent($) {
|
|
98
|
+
return ['single', ['indent', flatten(multiple($))]];
|
|
99
|
+
}
|
|
100
|
+
function snippet($) {
|
|
101
|
+
return ['single', ['snippet', $]];
|
|
102
|
+
}
|
|
103
|
+
function line($) {
|
|
104
|
+
return ['single', ['line', $]];
|
|
105
|
+
}
|
|
106
|
+
return ($) => {
|
|
107
|
+
return pa.cc($['compilation unit'], ($) => {
|
|
108
|
+
function Compilation__Unit($) {
|
|
109
|
+
return multiple([
|
|
110
|
+
line(`import * as _T from 'pareto-core-types'`),
|
|
111
|
+
line(`import * as _A from 'pareto-core-alg'`),
|
|
112
|
+
line(`import * as _D from 'pareto-core-dev'`),
|
|
113
|
+
line(``),
|
|
114
|
+
dictionary(decorateWithKeys($.imports).map(($) => line(`import * as _I_${createTypeIdentifier($.key)} from ${createQuotedString($.value.path)}`))),
|
|
115
|
+
isEmpty($.imports) ? nothing() : line(``),
|
|
116
|
+
Namespace($['root namespace']),
|
|
117
|
+
line(``),
|
|
118
|
+
]);
|
|
119
|
+
}
|
|
120
|
+
function Namespace($) {
|
|
121
|
+
return multiple([
|
|
122
|
+
dictionary(decorateWithKeys($.namespaces).map(($) => multiple([
|
|
123
|
+
line(``),
|
|
124
|
+
nestedLine([
|
|
125
|
+
snippet(`export namespace ${createNamespaceIdentifier($.key)} {`),
|
|
126
|
+
indent([
|
|
127
|
+
Namespace($.value)
|
|
128
|
+
]),
|
|
129
|
+
snippet(`}`),
|
|
130
|
+
]),
|
|
131
|
+
]))),
|
|
132
|
+
dictionary(decorateWithKeys($.types).map(($) => multiple([
|
|
133
|
+
line(``),
|
|
134
|
+
nestedLine([
|
|
135
|
+
snippet(`export type ${createTypeIdentifier($.key)}`),
|
|
136
|
+
Type__Parameters($.value['type parameters']),
|
|
137
|
+
snippet(` = `),
|
|
138
|
+
Type($.value.type)
|
|
139
|
+
])
|
|
140
|
+
]))),
|
|
141
|
+
Variables($.variables, { 'is global': true }),
|
|
142
|
+
]);
|
|
143
|
+
}
|
|
144
|
+
function Variables($, $p) {
|
|
145
|
+
return multiple([
|
|
146
|
+
dictionary(decorateWithKeys($).map(($) => multiple([
|
|
147
|
+
line(``),
|
|
148
|
+
nestedLine([
|
|
149
|
+
snippet(`${$p['is global'] ? `export ` : ``}const $v_${createSymbolIdentifier($.key)} = `),
|
|
150
|
+
Expression($.value.expression),
|
|
151
|
+
])
|
|
152
|
+
]))),
|
|
153
|
+
]);
|
|
154
|
+
}
|
|
155
|
+
function Type__Arguments($) {
|
|
156
|
+
return isEmpty($)
|
|
157
|
+
? nothing()
|
|
158
|
+
: multiple([
|
|
159
|
+
snippet(`<`),
|
|
160
|
+
array(enrich(toArray($)).map(($) => multiple([
|
|
161
|
+
Type($.value),
|
|
162
|
+
snippet(`${$.isLast ? `` : `, `}`)
|
|
163
|
+
]))),
|
|
164
|
+
snippet(`>`),
|
|
165
|
+
]);
|
|
166
|
+
}
|
|
167
|
+
function Type__Parameters($) {
|
|
168
|
+
return isEmpty($)
|
|
169
|
+
? nothing()
|
|
170
|
+
: multiple([
|
|
171
|
+
snippet(`<`),
|
|
172
|
+
dictionary(decorateWithKeys($).map(($) => snippet(`_P_${createTypeIdentifier($.key)}, `))),
|
|
173
|
+
snippet(`>`)
|
|
174
|
+
]);
|
|
175
|
+
}
|
|
176
|
+
function Function__Signature($, $p) {
|
|
177
|
+
return multiple([
|
|
178
|
+
Type__Parameters($['type parameters']),
|
|
179
|
+
snippet(`(`),
|
|
180
|
+
indent([
|
|
181
|
+
nestedLine([
|
|
182
|
+
snippet(`$: `),
|
|
183
|
+
Type($['context parameter']),
|
|
184
|
+
snippet(`,`)
|
|
185
|
+
]),
|
|
186
|
+
isEmpty($.parameters)
|
|
187
|
+
? nothing()
|
|
188
|
+
: multiple([
|
|
189
|
+
nestedLine([
|
|
190
|
+
snippet(`$p: {`),
|
|
191
|
+
indent([
|
|
192
|
+
dictionary(decorateWithKeys($['parameters']).map(($) => nestedLine([
|
|
193
|
+
snippet(`${createApostrophedString($.key)}: `),
|
|
194
|
+
Type($.value)
|
|
195
|
+
]))),
|
|
196
|
+
]),
|
|
197
|
+
snippet(`}`)
|
|
198
|
+
]),
|
|
199
|
+
]),
|
|
200
|
+
]),
|
|
201
|
+
snippet(`)${$p['return type token']} `),
|
|
202
|
+
$['return type'].map(($) => Type($), () => snippet(`void`))
|
|
203
|
+
]);
|
|
204
|
+
}
|
|
205
|
+
function Type($) {
|
|
206
|
+
switch ($[0]) {
|
|
207
|
+
case 'array': return pa.ss($, ($) => multiple([
|
|
208
|
+
snippet(`_T.Array<`),
|
|
209
|
+
Type($),
|
|
210
|
+
snippet(`>`)
|
|
211
|
+
]));
|
|
212
|
+
case 'boolean': return pa.ss($, ($) => snippet(`boolean`));
|
|
213
|
+
case 'dictionary': return pa.ss($, ($) => multiple([
|
|
214
|
+
snippet(`_T.Dictionary<`),
|
|
215
|
+
Type($),
|
|
216
|
+
snippet(`>`)
|
|
217
|
+
]));
|
|
218
|
+
case 'group': return pa.ss($, ($) => isEmpty($.members)
|
|
219
|
+
? snippet(`null`) //for improved type checking (an empty object has strange effects, it is accepted as anything)
|
|
220
|
+
: multiple([
|
|
221
|
+
snippet(`{`),
|
|
222
|
+
indent([
|
|
223
|
+
dictionary(decorateWithKeys($.members).map(($) => nestedLine([
|
|
224
|
+
snippet(`${createApostrophedString($.key)}: `),
|
|
225
|
+
Type($.value),
|
|
226
|
+
])))
|
|
227
|
+
]),
|
|
228
|
+
snippet(`}`),
|
|
229
|
+
]));
|
|
230
|
+
case 'function': return pa.ss($, ($) => Function__Signature($, { 'return type token': ` =>` }));
|
|
231
|
+
case 'null': return pa.ss($, ($) => snippet(`null`));
|
|
232
|
+
case 'number': return pa.ss($, ($) => snippet(`number`));
|
|
233
|
+
case 'optional': return pa.ss($, ($) => multiple([
|
|
234
|
+
snippet(`_T.OptionalValue<`),
|
|
235
|
+
Type($),
|
|
236
|
+
snippet(`>`)
|
|
237
|
+
]));
|
|
238
|
+
case 'parameter selection': return pa.ss($, ($) => snippet(`_P_${createTypeIdentifier($)}`));
|
|
239
|
+
case 'string': return pa.ss($, ($) => snippet(`string`));
|
|
240
|
+
case 'tagged union': return pa.ss($, ($) => multiple([
|
|
241
|
+
indent([
|
|
242
|
+
dictionary(decorateWithKeys($).map(($) => nestedLine([
|
|
243
|
+
snippet(`| [ ${createApostrophedString($.key)}, `),
|
|
244
|
+
Type($.value),
|
|
245
|
+
snippet(`]`)
|
|
246
|
+
])))
|
|
247
|
+
])
|
|
248
|
+
]));
|
|
249
|
+
case 'type selection': return pa.ss($, ($) => multiple([
|
|
250
|
+
$.import.map(($) => snippet(`_I_${createTypeIdentifier($)}.`), () => nothing()),
|
|
251
|
+
array($['namespace path'].map(($) => snippet(`${createTypeIdentifier($)}.`))),
|
|
252
|
+
snippet(`${createTypeIdentifier($.type)}`),
|
|
253
|
+
Type__Arguments($['type arguments']),
|
|
254
|
+
]));
|
|
255
|
+
default: return pa.au($[0]);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
function Statement__Block($) {
|
|
259
|
+
return multiple([
|
|
260
|
+
snippet(`{`),
|
|
261
|
+
indent([
|
|
262
|
+
Naked_Statement__Block($)
|
|
263
|
+
]),
|
|
264
|
+
snippet(`}`),
|
|
265
|
+
]);
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
*
|
|
269
|
+
* this function produces a block that is not wrapped in curly braces
|
|
270
|
+
*/
|
|
271
|
+
function Naked_Statement__Block($) {
|
|
272
|
+
return multiple([
|
|
273
|
+
Variables($.variables, { 'is global': false }),
|
|
274
|
+
array($.statements.map(($) => nestedLine([
|
|
275
|
+
snippet(``),
|
|
276
|
+
pa.cc($, ($) => {
|
|
277
|
+
switch ($[0]) {
|
|
278
|
+
case 'assignment': return pa.ss($, ($) => multiple([
|
|
279
|
+
Expression($.selection),
|
|
280
|
+
snippet(` = `),
|
|
281
|
+
Expression($.expression),
|
|
282
|
+
]));
|
|
283
|
+
case 'change context': return pa.ss($, ($) => multiple([
|
|
284
|
+
snippet(`_A.cc(`),
|
|
285
|
+
Expression($['new context selection']),
|
|
286
|
+
snippet(`, ($) => `),
|
|
287
|
+
Statement__Block($['sub statement block']),
|
|
288
|
+
snippet(`)`)
|
|
289
|
+
]));
|
|
290
|
+
case 'debug': return pa.ss($, ($) => snippet(`_D.logDebugMessage(${createBacktickedString($)})`));
|
|
291
|
+
case 'expression': return pa.ss($, ($) => Expression($));
|
|
292
|
+
case 'if': return pa.ss($, ($) => multiple([
|
|
293
|
+
snippet(`if (`),
|
|
294
|
+
Expression($.condition),
|
|
295
|
+
snippet(`) `),
|
|
296
|
+
Statement__Block($['if block']),
|
|
297
|
+
$.else.map(($) => multiple([
|
|
298
|
+
snippet(` else `),
|
|
299
|
+
Statement__Block($)
|
|
300
|
+
]), () => nothing())
|
|
301
|
+
]));
|
|
302
|
+
case 'return': return pa.ss($, ($) => multiple([
|
|
303
|
+
snippet(`return `),
|
|
304
|
+
Expression($.expression),
|
|
305
|
+
]));
|
|
306
|
+
case 'sub block': return pa.ss($, ($) => Statement__Block($));
|
|
307
|
+
case 'switch': return pa.ss($, ($) => {
|
|
308
|
+
const select = $.select;
|
|
309
|
+
return multiple([
|
|
310
|
+
snippet(`switch (`),
|
|
311
|
+
Expression($.select),
|
|
312
|
+
snippet(`[0]) {`),
|
|
313
|
+
indent([
|
|
314
|
+
dictionary(decorateWithKeys($.cases).map(($) => nestedLine([
|
|
315
|
+
snippet(`case ${createApostrophedString($.key)}: {`),
|
|
316
|
+
indent([
|
|
317
|
+
nestedLine([
|
|
318
|
+
snippet(`_A.ss(`),
|
|
319
|
+
Expression(select),
|
|
320
|
+
snippet(`, ($) => `),
|
|
321
|
+
Statement__Block($.value),
|
|
322
|
+
snippet(`)`),
|
|
323
|
+
]),
|
|
324
|
+
line(`break`)
|
|
325
|
+
]),
|
|
326
|
+
snippet(`}`)
|
|
327
|
+
]))),
|
|
328
|
+
nestedLine([
|
|
329
|
+
snippet(`default: `),
|
|
330
|
+
$.default.map(($) => Statement__Block($), () => multiple([
|
|
331
|
+
snippet(`_A.au(`),
|
|
332
|
+
Expression($.select),
|
|
333
|
+
snippet(`[0])`)
|
|
334
|
+
]))
|
|
335
|
+
])
|
|
336
|
+
]),
|
|
337
|
+
snippet(`}`)
|
|
338
|
+
]);
|
|
339
|
+
});
|
|
340
|
+
default: return pa.au($[0]);
|
|
341
|
+
}
|
|
342
|
+
})
|
|
343
|
+
]))),
|
|
344
|
+
]);
|
|
345
|
+
}
|
|
346
|
+
function Expression($) {
|
|
347
|
+
switch ($[0]) {
|
|
348
|
+
case 'flow': return pa.ss($, ($) => pa.cc($, ($) => {
|
|
349
|
+
switch ($[0]) {
|
|
350
|
+
case 'block': return pa.ss($, ($) => multiple([
|
|
351
|
+
snippet(`_A.cc($, ($) => `), //FIXME this should be a _A.block(...)
|
|
352
|
+
Statement__Block($),
|
|
353
|
+
snippet(`)`)
|
|
354
|
+
]));
|
|
355
|
+
case 'change context': return pa.ss($, ($) => multiple([
|
|
356
|
+
snippet(`_A.cc(`),
|
|
357
|
+
Expression($['new context selection']),
|
|
358
|
+
snippet(`, ($) => `),
|
|
359
|
+
Expression($['sub expression']),
|
|
360
|
+
snippet(`)`)
|
|
361
|
+
]));
|
|
362
|
+
case 'implement me': return pa.ss($, ($) => snippet(`_D.implementMe(${createBacktickedString($)})`));
|
|
363
|
+
case 'panic': return pa.ss($, ($) => snippet(`_A.panic(${createBacktickedString($)})`));
|
|
364
|
+
default: return pa.au($[0]);
|
|
365
|
+
}
|
|
366
|
+
}));
|
|
367
|
+
case 'literal': return pa.ss($, ($) => pa.cc($, ($) => {
|
|
368
|
+
switch ($[0]) {
|
|
369
|
+
case 'array': return pa.ss($, ($) => multiple([
|
|
370
|
+
snippet(`_A.wrapRawArray([`),
|
|
371
|
+
indent([
|
|
372
|
+
array($.map(($) => multiple([
|
|
373
|
+
nestedLine([
|
|
374
|
+
Expression($),
|
|
375
|
+
snippet(`,`)
|
|
376
|
+
]),
|
|
377
|
+
])))
|
|
378
|
+
]),
|
|
379
|
+
snippet(`])`)
|
|
380
|
+
]));
|
|
381
|
+
case 'boolean': return pa.ss($, ($) => pa.cc($, ($) => {
|
|
382
|
+
switch ($[0]) {
|
|
383
|
+
case 'false': return pa.ss($, ($) => snippet(`false`));
|
|
384
|
+
case 'true': return pa.ss($, ($) => snippet(`true`));
|
|
385
|
+
default: return pa.au($[0]);
|
|
386
|
+
}
|
|
387
|
+
}));
|
|
388
|
+
case 'dictionary': return pa.ss($, ($) => multiple([
|
|
389
|
+
snippet(`_A.wrapRawDictionary({`),
|
|
390
|
+
indent([
|
|
391
|
+
dictionary(decorateWithKeys($).map(($) => multiple([
|
|
392
|
+
nestedLine([
|
|
393
|
+
snippet(`${createQuotedString($.key)}: `),
|
|
394
|
+
Expression($.value),
|
|
395
|
+
snippet(`,`)
|
|
396
|
+
]),
|
|
397
|
+
])))
|
|
398
|
+
]),
|
|
399
|
+
snippet(`})`)
|
|
400
|
+
]));
|
|
401
|
+
case 'function': return pa.ss($, ($) => multiple([
|
|
402
|
+
pa.cc($['temp signature help'], ($) => {
|
|
403
|
+
switch ($[0]) {
|
|
404
|
+
case 'has additional parameters': return pa.ss($, ($) => snippet(`($, $p)`));
|
|
405
|
+
case 'has no additional parameters': return pa.ss($, ($) => snippet(`($)`));
|
|
406
|
+
case 'typed': return pa.ss($, ($) => Function__Signature($, { 'return type token': `:` }));
|
|
407
|
+
default: return pa.au($[0]);
|
|
408
|
+
}
|
|
409
|
+
}),
|
|
410
|
+
snippet(` => `),
|
|
411
|
+
Statement__Block($.block),
|
|
412
|
+
]));
|
|
413
|
+
case 'group': return pa.ss($, ($) => multiple([
|
|
414
|
+
snippet(`{`),
|
|
415
|
+
indent([
|
|
416
|
+
dictionary(decorateWithKeys($).map(($) => multiple([
|
|
417
|
+
nestedLine([
|
|
418
|
+
snippet(`${createApostrophedString($.key)}: `),
|
|
419
|
+
Expression($.value),
|
|
420
|
+
snippet(`,`)
|
|
421
|
+
]),
|
|
422
|
+
])))
|
|
423
|
+
]),
|
|
424
|
+
snippet(`}`)
|
|
425
|
+
]));
|
|
426
|
+
case 'null': return pa.ss($, ($) => snippet(`null`));
|
|
427
|
+
case 'number': return pa.ss($, ($) => snippet(`${$}`));
|
|
428
|
+
case 'optional': return pa.ss($, ($) => pa.cc($, ($) => {
|
|
429
|
+
switch ($[0]) {
|
|
430
|
+
case 'not set': return pa.ss($, ($) => snippet(`_A.notSet()`));
|
|
431
|
+
case 'set': return pa.ss($, ($) => multiple([
|
|
432
|
+
snippet(`_A.set(`),
|
|
433
|
+
Expression($),
|
|
434
|
+
snippet(`)`),
|
|
435
|
+
]));
|
|
436
|
+
default: return pa.au($[0]);
|
|
437
|
+
}
|
|
438
|
+
}));
|
|
439
|
+
case 'tagged union': return pa.ss($, ($) => multiple([
|
|
440
|
+
snippet(`[${createApostrophedString($.state)}, `),
|
|
441
|
+
Expression($.data),
|
|
442
|
+
snippet(`]`)
|
|
443
|
+
]));
|
|
444
|
+
case 'string': return pa.ss($, ($) => snippet(`${createQuotedString($)}`));
|
|
445
|
+
default: return pa.au($[0]);
|
|
446
|
+
}
|
|
447
|
+
}));
|
|
448
|
+
case 'map': return pa.ss($, ($) => pa.cc($, ($) => {
|
|
449
|
+
const $v_selection = $.selection;
|
|
450
|
+
return multiple([
|
|
451
|
+
pa.cc($.type, ($) => {
|
|
452
|
+
switch ($[0]) {
|
|
453
|
+
case 'array': return pa.ss($, ($) => pd.implementMe(`ARRAY`));
|
|
454
|
+
case 'boolean': return pa.ss($, ($) => multiple([]));
|
|
455
|
+
case 'dictionary': return pa.ss($, ($) => pd.implementMe(`DICTIONARY`));
|
|
456
|
+
case 'optional': return pa.ss($, ($) => pd.implementMe(`OPTIONAL`));
|
|
457
|
+
case 'tagged union': return pa.ss($, ($) => {
|
|
458
|
+
return multiple([
|
|
459
|
+
snippet(`_A.cc($, ($) => {`), //FIXME this should be a _A.block(...)
|
|
460
|
+
indent([
|
|
461
|
+
nestedLine([
|
|
462
|
+
snippet(`switch (`),
|
|
463
|
+
Expression($v_selection),
|
|
464
|
+
snippet(`[0]) {`),
|
|
465
|
+
indent([
|
|
466
|
+
dictionary(decorateWithKeys($.cases).map(($) => nestedLine([
|
|
467
|
+
snippet(`case ${createApostrophedString($.key)}: return _A.ss(`),
|
|
468
|
+
Expression($v_selection),
|
|
469
|
+
snippet(`, ($) => `),
|
|
470
|
+
Expression($.value),
|
|
471
|
+
snippet(`)`),
|
|
472
|
+
]))),
|
|
473
|
+
nestedLine([
|
|
474
|
+
snippet(`default: return `),
|
|
475
|
+
$.default.map(($) => Expression($), () => multiple([
|
|
476
|
+
snippet(`_A.au(`),
|
|
477
|
+
Expression($v_selection),
|
|
478
|
+
snippet(`[0])`)
|
|
479
|
+
]))
|
|
480
|
+
])
|
|
481
|
+
]),
|
|
482
|
+
snippet(`}`)
|
|
483
|
+
])
|
|
484
|
+
]),
|
|
485
|
+
snippet(`})`),
|
|
486
|
+
]);
|
|
487
|
+
});
|
|
488
|
+
default: return pa.au($[0]);
|
|
489
|
+
}
|
|
490
|
+
})
|
|
491
|
+
]);
|
|
492
|
+
}));
|
|
493
|
+
case 'reduce': return pa.ss($, ($) => multiple([
|
|
494
|
+
Expression($.selection),
|
|
495
|
+
snippet(`.reduce(`),
|
|
496
|
+
indent([
|
|
497
|
+
nestedLine([
|
|
498
|
+
Expression($.initial),
|
|
499
|
+
snippet(`,`)
|
|
500
|
+
]),
|
|
501
|
+
nestedLine([
|
|
502
|
+
Expression($.callback),
|
|
503
|
+
])
|
|
504
|
+
]),
|
|
505
|
+
snippet(`)`)
|
|
506
|
+
]));
|
|
507
|
+
case 'selection': return pa.ss($, ($) => multiple([
|
|
508
|
+
pa.cc($.start, ($) => {
|
|
509
|
+
switch ($[0]) {
|
|
510
|
+
case 'context': return pa.ss($, ($) => snippet(`$`));
|
|
511
|
+
case 'parameter': return pa.ss($, ($) => snippet(`$p[${createApostrophedString($)}]`));
|
|
512
|
+
case 'seed': return pa.ss($, ($) => snippet(`seed`));
|
|
513
|
+
case 'variable': return pa.ss($, ($) => multiple([
|
|
514
|
+
$.import.map(($) => snippet(`_I_${createTypeIdentifier($)}.`), () => nothing()),
|
|
515
|
+
array($['namespace path'].map(($) => snippet(`${createTypeIdentifier($)}.`))),
|
|
516
|
+
snippet(`$v_${createSymbolIdentifier($.variable)}`)
|
|
517
|
+
]));
|
|
518
|
+
default: return pa.au($[0]);
|
|
519
|
+
}
|
|
520
|
+
}),
|
|
521
|
+
array($.tail.map(($) => pa.cc($, ($) => {
|
|
522
|
+
switch ($[0]) {
|
|
523
|
+
case 'call': return pa.ss($, ($) => multiple([
|
|
524
|
+
Type__Arguments($['type arguments']),
|
|
525
|
+
snippet(`(`),
|
|
526
|
+
indent([
|
|
527
|
+
nestedLine([
|
|
528
|
+
Expression($.context),
|
|
529
|
+
snippet(`, `)
|
|
530
|
+
]),
|
|
531
|
+
isEmpty($.arguments)
|
|
532
|
+
? nothing()
|
|
533
|
+
: nestedLine([
|
|
534
|
+
snippet(`{`),
|
|
535
|
+
indent([
|
|
536
|
+
dictionary(decorateWithKeys($.arguments).map(($) => nestedLine([
|
|
537
|
+
snippet(`${createApostrophedString($.key)}: `),
|
|
538
|
+
Expression($.value),
|
|
539
|
+
snippet(`,`)
|
|
540
|
+
])))
|
|
541
|
+
]),
|
|
542
|
+
snippet(`}`)
|
|
543
|
+
])
|
|
544
|
+
]),
|
|
545
|
+
snippet(`)`),
|
|
546
|
+
]));
|
|
547
|
+
case 'member selection': return pa.ss($, ($) => snippet(`[${createApostrophedString($)}]`));
|
|
548
|
+
default: return pa.au($[0]);
|
|
549
|
+
}
|
|
550
|
+
})))
|
|
551
|
+
]));
|
|
552
|
+
default: return pa.au($[0]);
|
|
553
|
+
}
|
|
554
|
+
}
|
|
555
|
+
return indentx({
|
|
556
|
+
'lines': serializeFP(flatten(Compilation__Unit($))),
|
|
557
|
+
'indentation': ` `
|
|
558
|
+
});
|
|
559
|
+
});
|
|
560
|
+
};
|
|
561
|
+
};
|
|
562
|
+
exports.$$ = $$;
|
|
563
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplQ29tcGlsYXRpb25Vbml0LmFsZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wdWJsaWMvbW9kdWxlcy9wYXJldG8ydHlwZXNjcmlwdC9pbXBsZW1lbnRhdGlvbnMvc2VyaWFsaXplQ29tcGlsYXRpb25Vbml0LmFsZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvREFBcUM7QUFFckMsb0RBQXFDO0FBSXJDLHlGQUEwRTtBQUUxRSwrREFBZ0Q7QUFDaEQsaUVBQWtEO0FBQ2xELDRFQUE2RDtBQUM3RCxzRUFBdUQ7QUFNaEQsTUFBTSxFQUFFLEdBQWlDLEdBQUcsRUFBRTtJQUVqRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUM5QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUV2QyxNQUFNLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsZ0NBQWdDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQ3RGLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUNoRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDN0MsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQ3JELE1BQU0sb0JBQW9CLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUNyRSxNQUFNLHNCQUFzQixHQUFHLFdB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
|