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