pareto 0.76.67 → 0.77.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 (678) hide show
  1. package/dist/bin/{compile.js → compile_temp_schemas.js} +3 -3
  2. package/dist/bin/seal.js +2 -2
  3. package/dist/bin/serialize_schemas.js +2 -2
  4. package/dist/bin/validate.js +2 -2
  5. package/dist/exceptional/deserializers/load_schema.d.ts +5 -5
  6. package/dist/exceptional/deserializers/load_schema.js +11 -10
  7. package/dist/{operations → implementation/algorithms/operations}/impure/tbd/path.d.ts +1 -1
  8. package/dist/implementation/algorithms/operations/impure/tbd/path.js +16 -0
  9. package/dist/implementation/algorithms/procedures/unguaranteed/compile_temp_schemas.js +152 -0
  10. package/dist/{procedures → implementation/algorithms/procedures}/unguaranteed/seal.js +2 -2
  11. package/dist/implementation/algorithms/procedures/unguaranteed/serialize_schemas.js +62 -0
  12. package/dist/{procedures → implementation/algorithms/procedures}/unguaranteed/validate.js +4 -4
  13. package/dist/{queries → implementation/algorithms/queries}/unguaranteed/load_pareto_document.d.ts +2 -2
  14. package/dist/implementation/algorithms/queries/unguaranteed/load_pareto_document.js +75 -0
  15. package/dist/{queries → implementation/algorithms/queries}/unguaranteed/load_pareto_file.d.ts +1 -1
  16. package/dist/{queries → implementation/algorithms/queries}/unguaranteed/load_pareto_file.js +4 -4
  17. package/dist/implementation/algorithms/transformations/module/exupery_implementation.d.ts +4 -0
  18. package/dist/{transformations → implementation/algorithms/transformations}/module/exupery_implementation.js +1 -1
  19. package/dist/implementation/algorithms/transformations/module/exupery_interface.d.ts +5 -0
  20. package/dist/{transformations → implementation/algorithms/transformations}/module/exupery_interface.js +6 -6
  21. package/dist/implementation/algorithms/transformations/module/temp_typescript_implementation.d.ts +3 -0
  22. package/dist/implementation/algorithms/transformations/module/temp_typescript_implementation.js +45 -0
  23. package/dist/implementation/algorithms/transformations/module/temp_typescript_interface.d.ts +3 -0
  24. package/dist/implementation/algorithms/transformations/module/temp_typescript_interface.js +43 -0
  25. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/deserialize.d.ts +8 -0
  26. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/deserialize.js +52 -0
  27. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_implementation/main.d.ts +2 -2
  28. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/main.js +92 -0
  29. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_implementation/marshall.d.ts +3 -3
  30. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/marshall.js +142 -0
  31. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/migrate_boilerplate.d.ts +14 -0
  32. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/migrate_boilerplate.js +105 -0
  33. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_implementation/resolve.d.ts +3 -3
  34. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/resolve.js +300 -0
  35. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/serialize.d.ts +9 -0
  36. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/serialize.js +53 -0
  37. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_implementation/unmarshall.d.ts +3 -3
  38. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/unmarshall.js +158 -0
  39. package/dist/implementation/algorithms/transformations/schema/exupery_interface/deserialize.d.ts +6 -0
  40. package/dist/implementation/algorithms/transformations/schema/exupery_interface/deserialize.js +39 -0
  41. package/dist/implementation/algorithms/transformations/schema/exupery_interface/dummy_resolve.d.ts +3 -0
  42. package/dist/implementation/algorithms/transformations/schema/exupery_interface/dummy_resolve.js +13 -0
  43. package/dist/implementation/algorithms/transformations/schema/exupery_interface/main.d.ts +6 -0
  44. package/dist/implementation/algorithms/transformations/schema/exupery_interface/main.js +116 -0
  45. package/dist/implementation/algorithms/transformations/schema/exupery_interface/marshall.d.ts +6 -0
  46. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_interface/marshall.js +1 -1
  47. package/dist/implementation/algorithms/transformations/schema/exupery_interface/migrate_boilerplate.d.ts +7 -0
  48. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_interface/migrate_boilerplate.js +1 -1
  49. package/dist/implementation/algorithms/transformations/schema/exupery_interface/resolve.d.ts +12 -0
  50. package/dist/implementation/algorithms/transformations/schema/exupery_interface/resolve.js +110 -0
  51. package/dist/implementation/algorithms/transformations/schema/exupery_interface/serialize.d.ts +6 -0
  52. package/dist/implementation/algorithms/transformations/schema/exupery_interface/serialize.js +39 -0
  53. package/dist/implementation/algorithms/transformations/schema/exupery_interface/types.d.ts +12 -0
  54. package/dist/implementation/algorithms/transformations/schema/exupery_interface/types.js +192 -0
  55. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_interface/unmarshall.d.ts +2 -2
  56. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_interface/unmarshall.js +1 -1
  57. package/dist/implementation/algorithms/transformations/schema/exupery_interface/value_deserializers.d.ts +6 -0
  58. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_interface/value_deserializers.js +1 -1
  59. package/dist/implementation/algorithms/transformations/schema/exupery_interface/value_serializers.d.ts +6 -0
  60. package/dist/{transformations → implementation/algorithms/transformations}/schema/exupery_interface/value_serializers.js +1 -1
  61. package/dist/implementation/algorithms/transformations/temp/astn_schema.d.ts +10 -0
  62. package/dist/implementation/algorithms/transformations/temp/astn_schema.js +140 -0
  63. package/dist/{transformations → implementation/algorithms/transformations}/temp/unmarshall_astn_ast.d.ts +4 -4
  64. package/dist/{transformations → implementation/algorithms/transformations}/temp/unmarshall_astn_ast.js +6 -23
  65. package/dist/{transformations → implementation/algorithms/transformations}/unmarshall_errors/fountain_pen.d.ts +4 -4
  66. package/dist/implementation/algorithms/transformations/unmarshall_errors/fountain_pen.js +86 -0
  67. package/dist/implementation/algorithms/transformations/unmarshall_result/astn_authoring_target.d.ts +3 -0
  68. package/dist/{transformations → implementation/algorithms/transformations}/unmarshall_result/astn_authoring_target.js +1 -1
  69. package/dist/implementation/algorithms/transformations/unmarshall_result/unmarshall_errors.d.ts +8 -0
  70. package/dist/implementation/algorithms/transformations/unmarshall_result/unmarshall_errors.js +344 -0
  71. package/dist/implementation/generated/pareto/generic/parse/ast.d.ts +10 -0
  72. package/dist/implementation/generated/pareto/generic/parse/ast.js +245 -0
  73. package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.d.ts +13 -0
  74. package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.js +50 -0
  75. package/dist/implementation/generated/pareto/generic/parse/parse.d.ts +6 -0
  76. package/dist/implementation/generated/pareto/generic/parse/parse.js +65 -0
  77. package/dist/implementation/generated/pareto/generic/parse/string_iterator.d.ts +41 -0
  78. package/dist/implementation/generated/pareto/generic/parse/string_iterator.js +113 -0
  79. package/dist/implementation/generated/pareto/generic/parse/token.d.ts +9 -0
  80. package/dist/implementation/generated/pareto/generic/parse/token.js +519 -0
  81. package/dist/{generated/implementation → implementation/generated/pareto}/generic/resolve.d.ts +3 -3
  82. package/dist/implementation/generated/pareto/generic/resolve.js +276 -0
  83. package/dist/implementation/generated/pareto/generic/serialize.d.ts +4 -0
  84. package/dist/implementation/generated/pareto/generic/serialize.js +93 -0
  85. package/dist/implementation/generated/pareto/generic/unmarshall.d.ts +42 -0
  86. package/dist/implementation/generated/pareto/generic/unmarshall.js +247 -0
  87. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/astn_schema/marshall.d.ts +1 -1
  88. package/dist/implementation/generated/pareto/schemas/astn_schema/marshall.js +232 -0
  89. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/astn_schema/resolve.d.ts +1 -1
  90. package/dist/implementation/generated/pareto/schemas/astn_schema/resolve.js +446 -0
  91. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/astn_schema/unmarshall.d.ts +1 -1
  92. package/dist/implementation/generated/pareto/schemas/astn_schema/unmarshall.js +206 -0
  93. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/module/marshall.d.ts +1 -1
  94. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/module/marshall.js +1 -1
  95. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/module/resolve.d.ts +1 -1
  96. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/module/resolve.js +1 -1
  97. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/module/unmarshall.d.ts +1 -1
  98. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/module/unmarshall.js +1 -1
  99. package/dist/{generated/implementation/schemas/ast → implementation/generated/pareto/schemas/parse_tree}/marshall.d.ts +1 -1
  100. package/dist/{generated/implementation/schemas/ast → implementation/generated/pareto/schemas/parse_tree}/marshall.js +1 -1
  101. package/dist/{generated/implementation/schemas/ast → implementation/generated/pareto/schemas/parse_tree}/unmarshall.d.ts +1 -1
  102. package/dist/{generated/implementation/schemas/ast → implementation/generated/pareto/schemas/parse_tree}/unmarshall.js +1 -1
  103. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/schema/marshall.d.ts +1 -1
  104. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/schema/marshall.js +1 -1
  105. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/schema/resolve.d.ts +1 -1
  106. package/dist/implementation/generated/pareto/schemas/schema/resolve.js +2025 -0
  107. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/schema/unmarshall.d.ts +1 -1
  108. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/schema/unmarshall.js +1 -1
  109. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/token/marshall.d.ts +1 -1
  110. package/dist/implementation/generated/pareto/schemas/token/marshall.js +230 -0
  111. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/token/unmarshall.d.ts +1 -1
  112. package/dist/implementation/generated/pareto/schemas/token/unmarshall.js +218 -0
  113. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/unmarshall_errors/marshall.d.ts +1 -1
  114. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/unmarshall_errors/marshall.js +1 -1
  115. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/unmarshall_errors/unmarshall.d.ts +1 -1
  116. package/dist/{generated/implementation → implementation/generated/pareto}/schemas/unmarshall_errors/unmarshall.js +1 -1
  117. package/dist/implementation/generated/pareto/schemas/unmarshall_result/marshall.js +3 -0
  118. package/dist/implementation/generated/pareto/schemas/unmarshall_result/unmarshall.js +3 -0
  119. package/dist/interface/algorithms/operations/impure/tbd/path.d.ts +1 -0
  120. package/dist/interface/algorithms/operations/impure/tbd/path.js +5 -0
  121. package/dist/interface/algorithms/procedures/unguaranteed/compile.d.ts +1 -0
  122. package/dist/interface/algorithms/procedures/unguaranteed/compile.js +5 -0
  123. package/dist/interface/algorithms/procedures/unguaranteed/seal.d.ts +1 -0
  124. package/dist/interface/algorithms/procedures/unguaranteed/seal.js +5 -0
  125. package/dist/interface/algorithms/procedures/unguaranteed/serialize_schemas.d.ts +1 -0
  126. package/dist/interface/algorithms/procedures/unguaranteed/serialize_schemas.js +5 -0
  127. package/dist/interface/algorithms/procedures/unguaranteed/validate.d.ts +1 -0
  128. package/dist/interface/algorithms/procedures/unguaranteed/validate.js +5 -0
  129. package/dist/interface/algorithms/queries/unguaranteed/load_pareto_document.d.ts +1 -0
  130. package/dist/interface/algorithms/queries/unguaranteed/load_pareto_document.js +5 -0
  131. package/dist/interface/algorithms/queries/unguaranteed/load_pareto_file.d.ts +1 -0
  132. package/dist/interface/algorithms/queries/unguaranteed/load_pareto_file.js +5 -0
  133. package/dist/interface/algorithms/transformations/module/exupery_implementation.d.ts +1 -0
  134. package/dist/interface/algorithms/transformations/module/exupery_implementation.js +5 -0
  135. package/dist/interface/algorithms/transformations/module/exupery_interface.d.ts +1 -0
  136. package/dist/interface/algorithms/transformations/module/exupery_interface.js +5 -0
  137. package/dist/interface/algorithms/transformations/module/temp_typescript.d.ts +1 -0
  138. package/dist/interface/algorithms/transformations/module/temp_typescript.js +5 -0
  139. package/dist/interface/algorithms/transformations/schema/exupery_implementation/main.d.ts +1 -0
  140. package/dist/interface/algorithms/transformations/schema/exupery_implementation/main.js +5 -0
  141. package/dist/interface/algorithms/transformations/schema/exupery_implementation/marshall.d.ts +1 -0
  142. package/dist/interface/algorithms/transformations/schema/exupery_implementation/marshall.js +5 -0
  143. package/dist/interface/algorithms/transformations/schema/exupery_implementation/migrate_boilerplate.d.ts +1 -0
  144. package/dist/interface/algorithms/transformations/schema/exupery_implementation/migrate_boilerplate.js +5 -0
  145. package/dist/interface/algorithms/transformations/schema/exupery_implementation/resolve.d.ts +1 -0
  146. package/dist/interface/algorithms/transformations/schema/exupery_implementation/resolve.js +5 -0
  147. package/dist/interface/algorithms/transformations/schema/exupery_implementation/unmarshall.d.ts +1 -0
  148. package/dist/interface/algorithms/transformations/schema/exupery_implementation/unmarshall.js +5 -0
  149. package/dist/interface/algorithms/transformations/schema/exupery_interface/dummy_resolve.d.ts +1 -0
  150. package/dist/interface/algorithms/transformations/schema/exupery_interface/dummy_resolve.js +5 -0
  151. package/dist/interface/algorithms/transformations/schema/exupery_interface/main.d.ts +1 -0
  152. package/dist/interface/algorithms/transformations/schema/exupery_interface/main.js +5 -0
  153. package/dist/interface/algorithms/transformations/schema/exupery_interface/marshall.d.ts +1 -0
  154. package/dist/interface/algorithms/transformations/schema/exupery_interface/marshall.js +5 -0
  155. package/dist/interface/algorithms/transformations/schema/exupery_interface/migrate_boilerplate.d.ts +1 -0
  156. package/dist/interface/algorithms/transformations/schema/exupery_interface/migrate_boilerplate.js +5 -0
  157. package/dist/interface/algorithms/transformations/schema/exupery_interface/resolve.d.ts +1 -0
  158. package/dist/interface/algorithms/transformations/schema/exupery_interface/resolve.js +5 -0
  159. package/dist/interface/algorithms/transformations/schema/exupery_interface/types.d.ts +1 -0
  160. package/dist/interface/algorithms/transformations/schema/exupery_interface/types.js +5 -0
  161. package/dist/interface/algorithms/transformations/schema/exupery_interface/unmarshall.d.ts +1 -0
  162. package/dist/interface/algorithms/transformations/schema/exupery_interface/unmarshall.js +5 -0
  163. package/dist/interface/algorithms/transformations/schema/exupery_interface/value_deserializers.d.ts +1 -0
  164. package/dist/interface/algorithms/transformations/schema/exupery_interface/value_deserializers.js +5 -0
  165. package/dist/interface/algorithms/transformations/schema/exupery_interface/value_serializers.d.ts +1 -0
  166. package/dist/interface/algorithms/transformations/schema/exupery_interface/value_serializers.js +5 -0
  167. package/dist/interface/algorithms/transformations/temp/astn_schema.d.ts +1 -0
  168. package/dist/interface/algorithms/transformations/temp/astn_schema.js +5 -0
  169. package/dist/interface/algorithms/transformations/temp/unmarshall_astn_ast.d.ts +1 -0
  170. package/dist/interface/algorithms/transformations/temp/unmarshall_astn_ast.js +5 -0
  171. package/dist/interface/algorithms/transformations/unmarshall_errors/fountain_pen.d.ts +1 -0
  172. package/dist/interface/algorithms/transformations/unmarshall_errors/fountain_pen.js +5 -0
  173. package/dist/interface/algorithms/transformations/unmarshall_result/astn_authoring_target.d.ts +1 -0
  174. package/dist/interface/algorithms/transformations/unmarshall_result/astn_authoring_target.js +5 -0
  175. package/dist/interface/algorithms/transformations/unmarshall_result/unmarshall_errors.d.ts +1 -0
  176. package/dist/interface/algorithms/transformations/unmarshall_result/unmarshall_errors.js +5 -0
  177. package/dist/{generated/interface → interface/generated/pareto}/core/astn_source.d.ts +15 -0
  178. package/dist/{generated/interface → interface/generated/pareto}/core/astn_source.js +1 -1
  179. package/dist/{generated/interface → interface/generated/pareto}/core/astn_target.js +1 -1
  180. package/dist/interface/generated/pareto/core/parse_result.d.ts +25 -0
  181. package/dist/interface/generated/pareto/core/parse_result.js +3 -0
  182. package/dist/{generated/interface → interface/generated/pareto}/core/resolve.js +1 -1
  183. package/dist/{generated/interface → interface/generated/pareto}/core/resolved.js +1 -1
  184. package/dist/interface/generated/pareto/core/token.d.ts +49 -0
  185. package/dist/interface/generated/pareto/core/token.js +3 -0
  186. package/dist/{generated/interface → interface/generated/pareto}/core/unconstrained.js +1 -1
  187. package/dist/{generated/interface → interface/generated/pareto}/core/unresolved.js +1 -1
  188. package/dist/{generated/interface/schemas/schema → interface/generated/pareto/schemas/astn_schema}/data_types/resolve.js +1 -1
  189. package/dist/{generated/interface/schemas/schema → interface/generated/pareto/schemas/astn_schema}/data_types/source.js +1 -1
  190. package/dist/{generated/interface/schemas/schema → interface/generated/pareto/schemas/astn_schema}/data_types/target.js +1 -1
  191. package/dist/{generated/implementation/schemas/unmarshall_result → interface/generated/pareto/schemas/astn_schema}/marshall.js +1 -1
  192. package/dist/{generated/interface/schemas/schema → interface/generated/pareto/schemas/astn_schema}/migrate_boilerplate.js +1 -1
  193. package/dist/{generated/interface/schemas/module → interface/generated/pareto/schemas/astn_schema}/unmarshall.js +1 -1
  194. package/dist/interface/generated/pareto/schemas/astn_schema/value_deserializers.js +3 -0
  195. package/dist/{generated/interface/schemas/schema → interface/generated/pareto/schemas/astn_schema}/value_serializers.js +1 -1
  196. package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/module}/data_types/resolve.js +1 -1
  197. package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/module}/data_types/source.js +1 -1
  198. package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/module}/data_types/target.js +1 -1
  199. package/dist/{generated/interface/schemas/schema → interface/generated/pareto/schemas/module}/marshall.js +1 -1
  200. package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/module}/migrate_boilerplate.js +1 -1
  201. package/dist/{generated/interface/schemas/schema → interface/generated/pareto/schemas/module}/unmarshall.js +1 -1
  202. package/dist/{generated/interface → interface/generated/pareto}/schemas/module/value_deserializers.js +1 -1
  203. package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/module}/value_serializers.js +1 -1
  204. package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/parse_tree}/data_types/resolve.js +1 -1
  205. package/dist/interface/generated/pareto/schemas/parse_tree/data_types/source.js +3 -0
  206. package/dist/interface/generated/pareto/schemas/parse_tree/data_types/target.js +3 -0
  207. package/dist/{generated/interface/schemas/module → interface/generated/pareto/schemas/parse_tree}/marshall.js +1 -1
  208. package/dist/interface/generated/pareto/schemas/parse_tree/migrate_boilerplate.js +3 -0
  209. package/dist/interface/generated/pareto/schemas/parse_tree/unmarshall.js +3 -0
  210. package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/parse_tree}/value_deserializers.js +1 -1
  211. package/dist/interface/generated/pareto/schemas/parse_tree/value_serializers.js +3 -0
  212. package/dist/{generated/interface/schemas/module → interface/generated/pareto/schemas/schema}/data_types/resolve.js +1 -1
  213. package/dist/{generated/interface/schemas/module → interface/generated/pareto/schemas/schema}/data_types/source.js +1 -1
  214. package/dist/{generated/interface/schemas/module → interface/generated/pareto/schemas/schema}/data_types/target.js +1 -1
  215. package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/schema}/marshall.js +1 -1
  216. package/dist/{generated/interface/schemas/module → interface/generated/pareto/schemas/schema}/migrate_boilerplate.js +1 -1
  217. package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/schema}/unmarshall.js +1 -1
  218. package/dist/{generated/interface → interface/generated/pareto}/schemas/schema/value_deserializers.js +1 -1
  219. package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/schema}/value_serializers.js +1 -1
  220. package/dist/{generated/interface → interface/generated/pareto}/schemas/token/data_types/resolve.js +1 -1
  221. package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/token}/data_types/source.js +1 -1
  222. package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/token}/data_types/target.js +1 -1
  223. package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/token}/marshall.js +1 -1
  224. package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/token}/migrate_boilerplate.js +1 -1
  225. package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/token}/unmarshall.js +1 -1
  226. package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/token}/value_deserializers.js +1 -1
  227. package/dist/{generated/interface/schemas/module → interface/generated/pareto/schemas/token}/value_serializers.js +1 -1
  228. package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_errors/data_types/resolve.js +1 -1
  229. package/dist/interface/generated/pareto/schemas/unmarshall_errors/data_types/source.js +3 -0
  230. package/dist/interface/generated/pareto/schemas/unmarshall_errors/data_types/target.js +3 -0
  231. package/dist/interface/generated/pareto/schemas/unmarshall_errors/marshall.js +3 -0
  232. package/dist/interface/generated/pareto/schemas/unmarshall_errors/migrate_boilerplate.js +3 -0
  233. package/dist/{generated/implementation/schemas/unmarshall_result → interface/generated/pareto/schemas/unmarshall_errors}/unmarshall.js +1 -1
  234. package/dist/interface/generated/pareto/schemas/unmarshall_errors/value_deserializers.js +3 -0
  235. package/dist/interface/generated/pareto/schemas/unmarshall_errors/value_serializers.js +3 -0
  236. package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/data_types/resolve.js +1 -1
  237. package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/data_types/source.js +1 -1
  238. package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/data_types/target.js +1 -1
  239. package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/marshall.js +1 -1
  240. package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/migrate_boilerplate.js +1 -1
  241. package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/unmarshall.js +1 -1
  242. package/dist/interface/generated/pareto/schemas/unmarshall_result/value_deserializers.js +3 -0
  243. package/dist/interface/generated/pareto/schemas/unmarshall_result/value_serializers.js +3 -0
  244. package/dist/shorthands/module.d.ts +2 -2
  245. package/dist/shorthands/schema.d.ts +1 -1
  246. package/dist/temp/resolvers/module.d.ts +1 -1
  247. package/dist/temp/resolvers/module.js +31 -31
  248. package/dist/temp/resolvers/schema.d.ts +1 -1
  249. package/dist/temp/resolvers/schema.js +66 -66
  250. package/dist/temp/temp_unmashall_result_types.d.ts +3 -3
  251. package/dist/temp/temporary_schemas/accounting_ruwe_data/module.astn.d.ts +1 -1
  252. package/dist/temp/temporary_schemas/accounting_ruwe_data/operations.astn.d.ts +1 -1
  253. package/dist/temp/temporary_schemas/accounting_ruwe_data/schema_tree.astn.d.ts +1 -1
  254. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/alan_light_oldstyle/$.globals.astn.d.ts +1 -1
  255. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/alan_light_oldstyle/$.module.astn.d.ts +1 -1
  256. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/alan_light_oldstyle/$.types.astn.d.ts +1 -1
  257. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/builder_configuration/$.globals.astn.d.ts +1 -1
  258. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/builder_configuration/$.module.astn.d.ts +1 -1
  259. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/builder_configuration/$.types.astn.d.ts +1 -1
  260. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/csv/$.globals.astn.d.ts +1 -1
  261. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/csv/$.module.astn.d.ts +1 -1
  262. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/csv/$.types.astn.d.ts +1 -1
  263. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/html/$.globals.astn.d.ts +1 -1
  264. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/html/$.module.astn.d.ts +1 -1
  265. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/html/$.types.astn.d.ts +1 -1
  266. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/json_schema/$.globals.astn.d.ts +1 -1
  267. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/json_schema/$.module.astn.d.ts +1 -1
  268. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/json_schema/$.types.astn.d.ts +1 -1
  269. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/legacy_schema/$.globals.astn.d.ts +1 -1
  270. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/legacy_schema/$.module.astn.d.ts +1 -1
  271. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/legacy_schema/$.types.astn.d.ts +1 -1
  272. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/railroad_diagram/$.globals.astn.d.ts +1 -1
  273. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/railroad_diagram/$.module.astn.d.ts +1 -1
  274. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/railroad_diagram/$.types.astn.d.ts +1 -1
  275. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/regular_expression/$.globals.astn.d.ts +1 -1
  276. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/regular_expression/$.module.astn.d.ts +1 -1
  277. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/regular_expression/$.types.astn.d.ts +1 -1
  278. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/semantic_versioning/$.globals.astn.d.ts +1 -1
  279. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/semantic_versioning/$.module.astn.d.ts +1 -1
  280. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/semantic_versioning/$.types.astn.d.ts +1 -1
  281. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/xml/parse_result/$.globals.astn.d.ts +1 -1
  282. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/xml/parse_result/$.module.astn.d.ts +1 -1
  283. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/xml/parse_result/$.types.astn.d.ts +1 -1
  284. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/xml/simple/$.globals.astn.d.ts +1 -1
  285. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/xml/simple/$.module.astn.d.ts +1 -1
  286. package/dist/temp/temporary_schemas/accounting_ruwe_data/schemas/xml/simple/$.types.astn.d.ts +1 -1
  287. package/dist/temp/temporary_schemas/all.d.ts +1 -1
  288. package/dist/temp/temporary_schemas/all.js +19 -17
  289. package/dist/temp/temporary_schemas/antlr/module.astn.d.ts +1 -1
  290. package/dist/temp/temporary_schemas/antlr/operations.astn.d.ts +1 -1
  291. package/dist/temp/temporary_schemas/antlr/schema_tree.astn.d.ts +1 -1
  292. package/dist/temp/temporary_schemas/antlr/schemas/ast/$.globals.astn.d.ts +1 -1
  293. package/dist/temp/temporary_schemas/antlr/schemas/ast/$.module.astn.d.ts +1 -1
  294. package/dist/temp/temporary_schemas/antlr/schemas/ast/$.types.astn.d.ts +1 -1
  295. package/dist/temp/temporary_schemas/antlr/schemas/atn/$.globals.astn.d.ts +1 -1
  296. package/dist/temp/temporary_schemas/antlr/schemas/atn/$.module.astn.d.ts +1 -1
  297. package/dist/temp/temporary_schemas/antlr/schemas/atn/$.types.astn.d.ts +1 -1
  298. package/dist/temp/temporary_schemas/antlr/schemas/dfa/$.globals.astn.d.ts +1 -1
  299. package/dist/temp/temporary_schemas/antlr/schemas/dfa/$.module.astn.d.ts +1 -1
  300. package/dist/temp/temporary_schemas/antlr/schemas/dfa/$.types.astn.d.ts +1 -1
  301. package/dist/temp/temporary_schemas/antlr/schemas/lookahead/$.globals.astn.d.ts +1 -1
  302. package/dist/temp/temporary_schemas/antlr/schemas/lookahead/$.module.astn.d.ts +1 -1
  303. package/dist/temp/temporary_schemas/antlr/schemas/lookahead/$.types.astn.d.ts +1 -1
  304. package/dist/temp/temporary_schemas/astn/module.astn.d.ts +1 -1
  305. package/dist/temp/temporary_schemas/astn/operations.astn.d.ts +1 -1
  306. package/dist/temp/temporary_schemas/astn/schema_tree.astn.d.ts +1 -1
  307. package/dist/temp/temporary_schemas/astn/schema_tree.astn.js +5 -9
  308. package/dist/temp/temporary_schemas/astn/schemas/astn_schema/$.globals.astn.d.ts +1 -1
  309. package/dist/temp/temporary_schemas/astn/schemas/astn_schema/$.module.astn.d.ts +1 -1
  310. package/dist/temp/temporary_schemas/astn/schemas/astn_schema/$.resolvers.astn.d.ts +1 -1
  311. package/dist/temp/temporary_schemas/astn/schemas/astn_schema/$.signatures.astn.d.ts +1 -1
  312. package/dist/temp/temporary_schemas/astn/schemas/astn_schema/$.types.astn.d.ts +1 -1
  313. package/dist/temp/temporary_schemas/astn/schemas/authoring_parse_result/$.globals.astn.d.ts +1 -1
  314. package/dist/temp/temporary_schemas/astn/schemas/authoring_parse_result/$.module.astn.d.ts +1 -1
  315. package/dist/temp/temporary_schemas/astn/schemas/authoring_parse_result/$.types.astn.d.ts +1 -1
  316. package/dist/temp/temporary_schemas/astn/schemas/authoring_parse_tree/$.globals.astn.d.ts +1 -1
  317. package/dist/temp/temporary_schemas/astn/schemas/authoring_parse_tree/$.module.astn.d.ts +1 -1
  318. package/dist/temp/temporary_schemas/astn/schemas/authoring_parse_tree/$.types.astn.d.ts +1 -1
  319. package/dist/temp/temporary_schemas/astn/schemas/authoring_target/$.globals.astn.d.ts +1 -1
  320. package/dist/temp/temporary_schemas/astn/schemas/authoring_target/$.module.astn.d.ts +1 -1
  321. package/dist/temp/temporary_schemas/astn/schemas/authoring_target/$.types.astn.d.ts +1 -1
  322. package/dist/temp/temporary_schemas/astn/schemas/ide/$.globals.astn.d.ts +1 -1
  323. package/dist/temp/temporary_schemas/astn/schemas/ide/$.module.astn.d.ts +1 -1
  324. package/dist/temp/temporary_schemas/astn/schemas/ide/$.types.astn.d.ts +1 -1
  325. package/dist/temp/temporary_schemas/astn/schemas/sealed_target/$.globals.astn.d.ts +1 -1
  326. package/dist/temp/temporary_schemas/astn/schemas/sealed_target/$.module.astn.d.ts +1 -1
  327. package/dist/temp/temporary_schemas/astn/schemas/sealed_target/$.types.astn.d.ts +1 -1
  328. package/dist/temp/temporary_schemas/astn/schemas/token/$.globals.astn.d.ts +1 -1
  329. package/dist/temp/temporary_schemas/astn/schemas/token/$.module.astn.d.ts +1 -1
  330. package/dist/temp/temporary_schemas/astn/schemas/token/$.types.astn.d.ts +1 -1
  331. package/dist/temp/temporary_schemas/astn-to-xml/module.astn.d.ts +1 -1
  332. package/dist/temp/temporary_schemas/astn-to-xml/operations.astn.d.ts +1 -1
  333. package/dist/temp/temporary_schemas/astn-to-xml/schema_tree.astn.d.ts +1 -1
  334. package/dist/temp/temporary_schemas/astn-to-xml/schemas/xml/$.globals.astn.d.ts +1 -1
  335. package/dist/temp/temporary_schemas/astn-to-xml/schemas/xml/$.module.astn.d.ts +1 -1
  336. package/dist/temp/temporary_schemas/astn-to-xml/schemas/xml/$.types.astn.d.ts +1 -1
  337. package/dist/temp/temporary_schemas/exupery/module.astn.d.ts +1 -1
  338. package/dist/temp/temporary_schemas/exupery/operations.astn.d.ts +1 -1
  339. package/dist/temp/temporary_schemas/exupery/schema_tree.astn.d.ts +1 -1
  340. package/dist/temp/temporary_schemas/exupery/schemas/implementation/$.globals.astn.d.ts +1 -1
  341. package/dist/temp/temporary_schemas/exupery/schemas/implementation/$.module.astn.d.ts +1 -1
  342. package/dist/temp/temporary_schemas/exupery/schemas/implementation/$.resolvers.astn.d.ts +1 -1
  343. package/dist/temp/temporary_schemas/exupery/schemas/implementation/$.signatures.astn.d.ts +1 -1
  344. package/dist/temp/temporary_schemas/exupery/schemas/implementation/$.types.astn.d.ts +1 -1
  345. package/dist/temp/temporary_schemas/exupery/schemas/interface/$.globals.astn.d.ts +1 -1
  346. package/dist/temp/temporary_schemas/exupery/schemas/interface/$.module.astn.d.ts +1 -1
  347. package/dist/temp/temporary_schemas/exupery/schemas/interface/$.resolvers.astn.d.ts +1 -1
  348. package/dist/temp/temporary_schemas/exupery/schemas/interface/$.signatures.astn.d.ts +1 -1
  349. package/dist/temp/temporary_schemas/exupery/schemas/interface/$.types.astn.d.ts +1 -1
  350. package/dist/temp/temporary_schemas/exupery/schemas/typescript_light/$.globals.astn.d.ts +1 -1
  351. package/dist/temp/temporary_schemas/exupery/schemas/typescript_light/$.module.astn.d.ts +1 -1
  352. package/dist/temp/temporary_schemas/exupery/schemas/typescript_light/$.types.astn.d.ts +1 -1
  353. package/dist/temp/temporary_schemas/exupery/schemas/typescript_light/$.types.astn.js +8 -8
  354. package/dist/temp/temporary_schemas/exupery-resources/module.astn.d.ts +1 -1
  355. package/dist/temp/temporary_schemas/exupery-resources/operations.astn.d.ts +1 -1
  356. package/dist/temp/temporary_schemas/exupery-resources/schema_tree.astn.d.ts +1 -1
  357. package/dist/temp/temporary_schemas/exupery-resources/schema_tree.astn.js +15 -13
  358. package/dist/temp/temporary_schemas/exupery-resources/schemas/copy/$.globals.astn.d.ts +1 -1
  359. package/dist/temp/temporary_schemas/exupery-resources/schemas/copy/$.module.astn.d.ts +1 -1
  360. package/dist/temp/temporary_schemas/exupery-resources/schemas/copy/$.types.astn.d.ts +1 -1
  361. package/dist/temp/temporary_schemas/exupery-resources/schemas/copy/$.types.astn.js +2 -2
  362. package/dist/temp/temporary_schemas/{pareto-lionweb/schemas/m3_normalized → exupery-resources/schemas/execute_procedure_executable}/$.globals.astn.d.ts +1 -1
  363. package/dist/temp/temporary_schemas/{astn/schemas/sealed_parse_result → exupery-resources/schemas/execute_procedure_executable}/$.globals.astn.js +1 -1
  364. package/dist/temp/temporary_schemas/{astn/schemas/sealed_parse_result → exupery-resources/schemas/execute_procedure_executable}/$.module.astn.d.ts +1 -1
  365. package/dist/temp/temporary_schemas/exupery-resources/schemas/{run_query_executable_and_catch → execute_procedure_executable}/$.module.astn.js +1 -1
  366. package/dist/temp/temporary_schemas/exupery-resources/schemas/execute_procedure_executable/$.types.astn.d.ts +3 -0
  367. package/dist/temp/temporary_schemas/exupery-resources/schemas/execute_procedure_executable/$.types.astn.js +20 -0
  368. package/dist/temp/temporary_schemas/exupery-resources/schemas/{run_query_executable → execute_query_executable}/$.globals.astn.d.ts +1 -1
  369. package/dist/temp/temporary_schemas/{astn/schemas/sealed_ast → exupery-resources/schemas/execute_query_executable}/$.globals.astn.js +1 -1
  370. package/dist/temp/temporary_schemas/{astn/schemas/sealed_ast → exupery-resources/schemas/execute_query_executable}/$.module.astn.d.ts +1 -1
  371. package/dist/temp/temporary_schemas/{astn/schemas/sealed_ast → exupery-resources/schemas/execute_query_executable}/$.module.astn.js +2 -4
  372. package/dist/temp/temporary_schemas/exupery-resources/schemas/execute_query_executable/$.types.astn.d.ts +3 -0
  373. package/dist/temp/temporary_schemas/exupery-resources/schemas/execute_query_executable/$.types.astn.js +23 -0
  374. package/dist/temp/temporary_schemas/exupery-resources/schemas/{run_query_executable_and_catch → execute_query_executable_and_catch}/$.globals.astn.d.ts +1 -1
  375. package/dist/temp/temporary_schemas/exupery-resources/schemas/{run_query_executable_and_catch → execute_query_executable_and_catch}/$.globals.astn.js +1 -1
  376. package/dist/temp/temporary_schemas/exupery-resources/schemas/{run_query_executable → execute_query_executable_and_catch}/$.module.astn.d.ts +1 -1
  377. package/dist/temp/temporary_schemas/exupery-resources/schemas/execute_query_executable_and_catch/$.module.astn.js +8 -0
  378. package/dist/temp/temporary_schemas/exupery-resources/schemas/execute_query_executable_and_catch/$.types.astn.d.ts +3 -0
  379. package/dist/temp/temporary_schemas/exupery-resources/schemas/execute_query_executable_and_catch/$.types.astn.js +26 -0
  380. package/dist/temp/temporary_schemas/exupery-resources/schemas/get_instream_data/$.globals.astn.d.ts +1 -1
  381. package/dist/temp/temporary_schemas/exupery-resources/schemas/get_instream_data/$.module.astn.d.ts +1 -1
  382. package/dist/temp/temporary_schemas/exupery-resources/schemas/get_instream_data/$.types.astn.d.ts +1 -1
  383. package/dist/temp/temporary_schemas/exupery-resources/schemas/log/$.globals.astn.d.ts +1 -1
  384. package/dist/temp/temporary_schemas/exupery-resources/schemas/log/$.module.astn.d.ts +1 -1
  385. package/dist/temp/temporary_schemas/exupery-resources/schemas/log/$.types.astn.d.ts +1 -1
  386. package/dist/temp/temporary_schemas/exupery-resources/schemas/log_error/$.globals.astn.d.ts +1 -1
  387. package/dist/temp/temporary_schemas/exupery-resources/schemas/log_error/$.module.astn.d.ts +1 -1
  388. package/dist/temp/temporary_schemas/exupery-resources/schemas/log_error/$.types.astn.d.ts +1 -1
  389. package/dist/temp/temporary_schemas/exupery-resources/schemas/make_directory/$.globals.astn.d.ts +1 -1
  390. package/dist/temp/temporary_schemas/exupery-resources/schemas/make_directory/$.module.astn.d.ts +1 -1
  391. package/dist/temp/temporary_schemas/exupery-resources/schemas/make_directory/$.types.astn.d.ts +1 -1
  392. package/dist/temp/temporary_schemas/exupery-resources/schemas/make_directory/$.types.astn.js +2 -2
  393. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_directory/$.globals.astn.d.ts +1 -1
  394. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_directory/$.module.astn.d.ts +1 -1
  395. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_directory/$.types.astn.d.ts +1 -1
  396. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_directory/$.types.astn.js +2 -2
  397. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_file/$.globals.astn.d.ts +1 -1
  398. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_file/$.module.astn.d.ts +1 -1
  399. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_file/$.types.astn.d.ts +1 -1
  400. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_file/$.types.astn.js +2 -2
  401. package/dist/temp/temporary_schemas/exupery-resources/schemas/remove/$.globals.astn.d.ts +1 -1
  402. package/dist/temp/temporary_schemas/exupery-resources/schemas/remove/$.module.astn.d.ts +1 -1
  403. package/dist/temp/temporary_schemas/exupery-resources/schemas/remove/$.types.astn.d.ts +1 -1
  404. package/dist/temp/temporary_schemas/exupery-resources/schemas/remove/$.types.astn.js +2 -2
  405. package/dist/temp/temporary_schemas/exupery-resources/schemas/stat/$.globals.astn.d.ts +1 -1
  406. package/dist/temp/temporary_schemas/exupery-resources/schemas/stat/$.module.astn.d.ts +1 -1
  407. package/dist/temp/temporary_schemas/exupery-resources/schemas/stat/$.types.astn.d.ts +1 -1
  408. package/dist/temp/temporary_schemas/exupery-resources/schemas/stat/$.types.astn.js +2 -2
  409. package/dist/temp/temporary_schemas/exupery-resources/schemas/write_file/$.globals.astn.d.ts +1 -1
  410. package/dist/temp/temporary_schemas/exupery-resources/schemas/write_file/$.module.astn.d.ts +1 -1
  411. package/dist/temp/temporary_schemas/exupery-resources/schemas/write_file/$.types.astn.d.ts +1 -1
  412. package/dist/temp/temporary_schemas/exupery-resources/schemas/write_file/$.types.astn.js +2 -2
  413. package/dist/temp/temporary_schemas/git/module.astn.d.ts +1 -1
  414. package/dist/temp/temporary_schemas/git/operations.astn.d.ts +1 -1
  415. package/dist/temp/temporary_schemas/git/schema_tree.astn.d.ts +1 -1
  416. package/dist/temp/temporary_schemas/git/schemas/git/$.globals.astn.d.ts +1 -1
  417. package/dist/temp/temporary_schemas/git/schemas/git/$.module.astn.d.ts +1 -1
  418. package/dist/temp/temporary_schemas/git/schemas/git/$.types.astn.d.ts +1 -1
  419. package/dist/temp/temporary_schemas/json-to-astn/module.astn.d.ts +1 -1
  420. package/dist/temp/temporary_schemas/json-to-astn/operations.astn.d.ts +1 -1
  421. package/dist/temp/temporary_schemas/json-to-astn/schema_tree.astn.d.ts +1 -1
  422. package/dist/temp/temporary_schemas/json-to-astn/schemas/legacy_json_schema/$.globals.astn.d.ts +1 -1
  423. package/dist/temp/temporary_schemas/json-to-astn/schemas/legacy_json_schema/$.module.astn.d.ts +1 -1
  424. package/dist/temp/temporary_schemas/json-to-astn/schemas/legacy_json_schema/$.types.astn.d.ts +1 -1
  425. package/dist/temp/temporary_schemas/pareto/module.astn.d.ts +1 -1
  426. package/dist/temp/temporary_schemas/pareto/operations.astn.d.ts +1 -1
  427. package/dist/temp/temporary_schemas/pareto/schema_tree.astn.d.ts +1 -1
  428. package/dist/temp/temporary_schemas/pareto/schemas/module/$.globals.astn.d.ts +1 -1
  429. package/dist/temp/temporary_schemas/pareto/schemas/module/$.module.astn.d.ts +1 -1
  430. package/dist/temp/temporary_schemas/pareto/schemas/module/$.resolvers.astn.d.ts +1 -1
  431. package/dist/temp/temporary_schemas/pareto/schemas/module/$.signatures.astn.d.ts +1 -1
  432. package/dist/temp/temporary_schemas/pareto/schemas/module/$.types.astn.d.ts +1 -1
  433. package/dist/temp/temporary_schemas/pareto/schemas/schema/$.globals.astn.d.ts +1 -1
  434. package/dist/temp/temporary_schemas/pareto/schemas/schema/$.module.astn.d.ts +1 -1
  435. package/dist/temp/temporary_schemas/pareto/schemas/schema/$.resolvers.astn.d.ts +1 -1
  436. package/dist/temp/temporary_schemas/pareto/schemas/schema/$.signatures.astn.d.ts +1 -1
  437. package/dist/temp/temporary_schemas/pareto/schemas/schema/$.types.astn.d.ts +1 -1
  438. package/dist/temp/temporary_schemas/pareto/schemas/unmarshall_errors/$.globals.astn.d.ts +1 -1
  439. package/dist/temp/temporary_schemas/pareto/schemas/unmarshall_errors/$.module.astn.d.ts +1 -1
  440. package/dist/temp/temporary_schemas/pareto/schemas/unmarshall_errors/$.types.astn.d.ts +1 -1
  441. package/dist/temp/temporary_schemas/pareto/schemas/unmarshall_result/$.globals.astn.d.ts +1 -1
  442. package/dist/temp/temporary_schemas/pareto/schemas/unmarshall_result/$.module.astn.d.ts +1 -1
  443. package/dist/temp/temporary_schemas/pareto/schemas/unmarshall_result/$.types.astn.d.ts +1 -1
  444. package/dist/temp/temporary_schemas/pareto-boekhouding/module.astn.d.ts +1 -1
  445. package/dist/temp/temporary_schemas/pareto-boekhouding/operations.astn.d.ts +1 -1
  446. package/dist/temp/temporary_schemas/pareto-boekhouding/schema_tree.astn.d.ts +1 -1
  447. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding/$.globals.astn.d.ts +1 -1
  448. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding/$.module.astn.d.ts +1 -1
  449. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding/$.resolvers.astn.d.ts +1 -1
  450. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding/$.signatures.astn.d.ts +1 -1
  451. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding/$.types.astn.d.ts +1 -1
  452. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding_oude_model/$.globals.astn.d.ts +1 -1
  453. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding_oude_model/$.module.astn.d.ts +1 -1
  454. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding_oude_model/$.types.astn.d.ts +1 -1
  455. package/dist/temp/temporary_schemas/pareto-fountain-pen/module.astn.d.ts +1 -1
  456. package/dist/temp/temporary_schemas/pareto-fountain-pen/operations.astn.d.ts +1 -1
  457. package/dist/temp/temporary_schemas/pareto-fountain-pen/schema_tree.astn.d.ts +1 -1
  458. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/block/$.globals.astn.d.ts +1 -1
  459. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/block/$.module.astn.d.ts +1 -1
  460. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/block/$.types.astn.d.ts +1 -1
  461. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/block/$.types.astn.js +7 -7
  462. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/lines/$.globals.astn.d.ts +1 -1
  463. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/lines/$.module.astn.d.ts +1 -1
  464. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/lines/$.types.astn.d.ts +1 -1
  465. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/semi_lines/$.globals.astn.d.ts +1 -1
  466. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/semi_lines/$.module.astn.d.ts +1 -1
  467. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/semi_lines/$.types.astn.d.ts +1 -1
  468. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/text/$.globals.astn.d.ts +1 -1
  469. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/text/$.module.astn.d.ts +1 -1
  470. package/dist/temp/temporary_schemas/pareto-fountain-pen/schemas/text/$.types.astn.d.ts +1 -1
  471. package/dist/temp/temporary_schemas/pareto-json/module.astn.d.ts +1 -1
  472. package/dist/temp/temporary_schemas/pareto-json/operations.astn.d.ts +1 -1
  473. package/dist/temp/temporary_schemas/pareto-json/schema_tree.astn.d.ts +1 -1
  474. package/dist/temp/temporary_schemas/pareto-json/schemas/json/$.globals.astn.d.ts +1 -1
  475. package/dist/temp/temporary_schemas/pareto-json/schemas/json/$.module.astn.d.ts +1 -1
  476. package/dist/temp/temporary_schemas/pareto-json/schemas/json/$.types.astn.d.ts +1 -1
  477. package/dist/temp/temporary_schemas/pareto-lionweb/module.astn.d.ts +1 -1
  478. package/dist/temp/temporary_schemas/pareto-lionweb/operations.astn.d.ts +1 -1
  479. package/dist/temp/temporary_schemas/pareto-lionweb/schema_tree.astn.d.ts +1 -1
  480. package/dist/temp/temporary_schemas/pareto-lionweb/schema_tree.astn.js +5 -3
  481. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/lioncore/$.globals.astn.d.ts +1 -1
  482. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/lioncore/$.module.astn.d.ts +1 -1
  483. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/lioncore/$.types.astn.d.ts +1 -1
  484. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/lioncore/$.types.astn.js +13 -9
  485. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/serialization_chunk/$.globals.astn.d.ts +3 -0
  486. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/{m3_normalized → serialization_chunk}/$.globals.astn.js +1 -1
  487. package/dist/temp/temporary_schemas/{exupery-resources/schemas/run_query_executable_and_catch → pareto-lionweb/schemas/serialization_chunk}/$.module.astn.d.ts +1 -1
  488. package/dist/temp/temporary_schemas/{exupery-resources/schemas/run_query_executable → pareto-lionweb/schemas/serialization_chunk}/$.module.astn.js +1 -1
  489. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/serialization_chunk/$.types.astn.d.ts +3 -0
  490. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/serialization_chunk/$.types.astn.js +41 -0
  491. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/serialization_tree/$.globals.astn.d.ts +3 -0
  492. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/serialization_tree/$.globals.astn.js +10 -0
  493. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/serialization_tree/$.module.astn.d.ts +3 -0
  494. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/serialization_tree/$.module.astn.js +8 -0
  495. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/serialization_tree/$.types.astn.d.ts +3 -0
  496. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/serialization_tree/$.types.astn.js +27 -0
  497. package/dist/temp/temporary_schemas/pareto-static-html/module.astn.d.ts +3 -0
  498. package/dist/temp/temporary_schemas/pareto-static-html/module.astn.js +8 -0
  499. package/dist/temp/temporary_schemas/pareto-static-html/operations.astn.d.ts +3 -0
  500. package/dist/temp/temporary_schemas/pareto-static-html/operations.astn.js +6 -0
  501. package/dist/temp/temporary_schemas/pareto-static-html/schema_tree.astn.d.ts +3 -0
  502. package/dist/temp/temporary_schemas/pareto-static-html/schema_tree.astn.js +9 -0
  503. package/dist/temp/temporary_schemas/pareto-static-html/schemas/html-print/$.globals.astn.d.ts +3 -0
  504. package/dist/temp/temporary_schemas/pareto-static-html/schemas/html-print/$.globals.astn.js +10 -0
  505. package/dist/temp/temporary_schemas/pareto-static-html/schemas/html-print/$.module.astn.d.ts +3 -0
  506. package/dist/temp/temporary_schemas/{pareto-lionweb/schemas/m3_normalized → pareto-static-html/schemas/html-print}/$.module.astn.js +1 -1
  507. package/dist/temp/temporary_schemas/pareto-static-html/schemas/html-print/$.types.astn.d.ts +3 -0
  508. package/dist/temp/temporary_schemas/pareto-static-html/schemas/html-print/$.types.astn.js +81 -0
  509. package/dist/temp/temporary_schemas/pareto-targets/module.astn.d.ts +1 -1
  510. package/dist/temp/temporary_schemas/pareto-targets/operations.astn.d.ts +1 -1
  511. package/dist/temp/temporary_schemas/pareto-targets/schema_tree.astn.d.ts +1 -1
  512. package/dist/temp/temporary_schemas/pareto-targets/schemas/alan_light/$.globals.astn.d.ts +1 -1
  513. package/dist/temp/temporary_schemas/pareto-targets/schemas/alan_light/$.module.astn.d.ts +1 -1
  514. package/dist/temp/temporary_schemas/pareto-targets/schemas/alan_light/$.types.astn.d.ts +1 -1
  515. package/dist/temp/temporary_schemas/pareto-targets/schemas/graphviz/high_level/$.globals.astn.d.ts +1 -1
  516. package/dist/temp/temporary_schemas/pareto-targets/schemas/graphviz/high_level/$.module.astn.d.ts +1 -1
  517. package/dist/temp/temporary_schemas/pareto-targets/schemas/graphviz/high_level/$.types.astn.d.ts +1 -1
  518. package/dist/temp/temporary_schemas/pareto-targets/schemas/graphviz/low_level/$.globals.astn.d.ts +1 -1
  519. package/dist/temp/temporary_schemas/pareto-targets/schemas/graphviz/low_level/$.module.astn.d.ts +1 -1
  520. package/dist/temp/temporary_schemas/pareto-targets/schemas/graphviz/low_level/$.types.astn.d.ts +1 -1
  521. package/dist/temp/temporary_schemas/pareto-targets/schemas/lionweb/$.globals.astn.d.ts +1 -1
  522. package/dist/temp/temporary_schemas/pareto-targets/schemas/lionweb/$.module.astn.d.ts +1 -1
  523. package/dist/temp/temporary_schemas/pareto-targets/schemas/lionweb/$.types.astn.d.ts +1 -1
  524. package/dist/temp/temporary_schemas/pareto-targets/schemas/pareto_documentation/$.globals.astn.d.ts +1 -1
  525. package/dist/temp/temporary_schemas/pareto-targets/schemas/pareto_documentation/$.module.astn.d.ts +1 -1
  526. package/dist/temp/temporary_schemas/pareto-targets/schemas/pareto_documentation/$.types.astn.d.ts +1 -1
  527. package/dist/temp/temporary_schemas/pareto-vscode-backend/module.astn.d.ts +1 -1
  528. package/dist/temp/temporary_schemas/pareto-vscode-backend/operations.astn.d.ts +1 -1
  529. package/dist/temp/temporary_schemas/pareto-vscode-backend/schema_tree.astn.d.ts +1 -1
  530. package/dist/temp/temporary_schemas/pareto-vscode-backend/schemas/client/$.globals.astn.d.ts +1 -1
  531. package/dist/temp/temporary_schemas/pareto-vscode-backend/schemas/client/$.module.astn.d.ts +1 -1
  532. package/dist/temp/temporary_schemas/pareto-vscode-backend/schemas/client/$.types.astn.d.ts +1 -1
  533. package/dist/temp/temporary_schemas/pareto-vscode-backend/schemas/server/$.globals.astn.d.ts +1 -1
  534. package/dist/temp/temporary_schemas/pareto-vscode-backend/schemas/server/$.module.astn.d.ts +1 -1
  535. package/dist/temp/temporary_schemas/pareto-vscode-backend/schemas/server/$.types.astn.d.ts +1 -1
  536. package/package.json +9 -9
  537. package/dist/generated/implementation/generic/resolve.js +0 -276
  538. package/dist/generated/implementation/generic/unmarshall.d.ts +0 -42
  539. package/dist/generated/implementation/generic/unmarshall.js +0 -238
  540. package/dist/generated/implementation/schemas/astn_schema/marshall.js +0 -232
  541. package/dist/generated/implementation/schemas/astn_schema/resolve.js +0 -446
  542. package/dist/generated/implementation/schemas/astn_schema/unmarshall.js +0 -206
  543. package/dist/generated/implementation/schemas/schema/resolve.js +0 -2025
  544. package/dist/generated/implementation/schemas/token/marshall.js +0 -230
  545. package/dist/generated/implementation/schemas/token/unmarshall.js +0 -218
  546. package/dist/generated/interface/schemas/token/data_types/source.js +0 -3
  547. package/dist/generated/interface/schemas/token/data_types/target.js +0 -3
  548. package/dist/generated/interface/schemas/token/marshall.js +0 -3
  549. package/dist/generated/interface/schemas/token/migrate_boilerplate.js +0 -3
  550. package/dist/generated/interface/schemas/token/unmarshall.js +0 -3
  551. package/dist/generated/interface/schemas/token/value_deserializers.js +0 -3
  552. package/dist/generated/interface/schemas/token/value_serializers.js +0 -3
  553. package/dist/generated/interface/schemas/unmarshall_errors/data_types/source.js +0 -3
  554. package/dist/generated/interface/schemas/unmarshall_errors/data_types/target.js +0 -3
  555. package/dist/generated/interface/schemas/unmarshall_errors/marshall.js +0 -3
  556. package/dist/generated/interface/schemas/unmarshall_errors/migrate_boilerplate.js +0 -3
  557. package/dist/generated/interface/schemas/unmarshall_errors/unmarshall.js +0 -3
  558. package/dist/generated/interface/schemas/unmarshall_errors/value_deserializers.js +0 -3
  559. package/dist/generated/interface/schemas/unmarshall_errors/value_serializers.js +0 -3
  560. package/dist/generated/interface/schemas/unmarshall_result/data_types/unconstrained.d.ts +0 -1
  561. package/dist/generated/interface/schemas/unmarshall_result/data_types/unconstrained.js +0 -7
  562. package/dist/generated/interface/schemas/unmarshall_result/value_deserializers.js +0 -3
  563. package/dist/generated/interface/schemas/unmarshall_result/value_serializers.js +0 -3
  564. package/dist/operations/impure/tbd/path.js +0 -16
  565. package/dist/procedures/unguaranteed/compile.js +0 -140
  566. package/dist/procedures/unguaranteed/serialize_schemas.js +0 -69
  567. package/dist/queries/unguaranteed/load_pareto_document.js +0 -79
  568. package/dist/temp/temporary_schemas/astn/schemas/sealed_ast/$.globals.astn.d.ts +0 -3
  569. package/dist/temp/temporary_schemas/astn/schemas/sealed_ast/$.types.astn.d.ts +0 -3
  570. package/dist/temp/temporary_schemas/astn/schemas/sealed_ast/$.types.astn.js +0 -74
  571. package/dist/temp/temporary_schemas/astn/schemas/sealed_parse_result/$.globals.astn.d.ts +0 -3
  572. package/dist/temp/temporary_schemas/astn/schemas/sealed_parse_result/$.module.astn.js +0 -11
  573. package/dist/temp/temporary_schemas/astn/schemas/sealed_parse_result/$.types.astn.d.ts +0 -3
  574. package/dist/temp/temporary_schemas/astn/schemas/sealed_parse_result/$.types.astn.js +0 -50
  575. package/dist/temp/temporary_schemas/exupery-resources/schemas/run_query_executable/$.globals.astn.js +0 -6
  576. package/dist/temp/temporary_schemas/exupery-resources/schemas/run_query_executable/$.types.astn.d.ts +0 -3
  577. package/dist/temp/temporary_schemas/exupery-resources/schemas/run_query_executable/$.types.astn.js +0 -23
  578. package/dist/temp/temporary_schemas/exupery-resources/schemas/run_query_executable_and_catch/$.types.astn.d.ts +0 -3
  579. package/dist/temp/temporary_schemas/exupery-resources/schemas/run_query_executable_and_catch/$.types.astn.js +0 -26
  580. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/m3_normalized/$.module.astn.d.ts +0 -3
  581. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/m3_normalized/$.types.astn.d.ts +0 -3
  582. package/dist/temp/temporary_schemas/pareto-lionweb/schemas/m3_normalized/$.types.astn.js +0 -38
  583. package/dist/transformations/module/exupery_implementation.d.ts +0 -4
  584. package/dist/transformations/module/exupery_interface.d.ts +0 -5
  585. package/dist/transformations/module/temp_typescript.d.ts +0 -3
  586. package/dist/transformations/module/temp_typescript.js +0 -56
  587. package/dist/transformations/schema/exupery_implementation/main.js +0 -81
  588. package/dist/transformations/schema/exupery_implementation/marshall.js +0 -142
  589. package/dist/transformations/schema/exupery_implementation/migrate_boilerplate.d.ts +0 -14
  590. package/dist/transformations/schema/exupery_implementation/migrate_boilerplate.js +0 -105
  591. package/dist/transformations/schema/exupery_implementation/resolve.js +0 -300
  592. package/dist/transformations/schema/exupery_implementation/unmarshall.js +0 -158
  593. package/dist/transformations/schema/exupery_interface/dummy_resolve.d.ts +0 -3
  594. package/dist/transformations/schema/exupery_interface/dummy_resolve.js +0 -13
  595. package/dist/transformations/schema/exupery_interface/main.d.ts +0 -6
  596. package/dist/transformations/schema/exupery_interface/main.js +0 -108
  597. package/dist/transformations/schema/exupery_interface/marshall.d.ts +0 -6
  598. package/dist/transformations/schema/exupery_interface/migrate_boilerplate.d.ts +0 -7
  599. package/dist/transformations/schema/exupery_interface/resolve.d.ts +0 -12
  600. package/dist/transformations/schema/exupery_interface/resolve.js +0 -110
  601. package/dist/transformations/schema/exupery_interface/types.d.ts +0 -12
  602. package/dist/transformations/schema/exupery_interface/types.js +0 -192
  603. package/dist/transformations/schema/exupery_interface/value_deserializers.d.ts +0 -6
  604. package/dist/transformations/schema/exupery_interface/value_serializers.d.ts +0 -6
  605. package/dist/transformations/temp/astn_schema.d.ts +0 -10
  606. package/dist/transformations/temp/astn_schema.js +0 -140
  607. package/dist/transformations/unmarshall_errors/fountain_pen.js +0 -86
  608. package/dist/transformations/unmarshall_result/astn_authoring_target.d.ts +0 -3
  609. package/dist/transformations/unmarshall_result/unmarshall_errors.d.ts +0 -8
  610. package/dist/transformations/unmarshall_result/unmarshall_errors.js +0 -344
  611. /package/dist/bin/{compile.d.ts → compile_temp_schemas.d.ts} +0 -0
  612. /package/dist/{procedures/unguaranteed/compile.d.ts → implementation/algorithms/procedures/unguaranteed/compile_temp_schemas.d.ts} +0 -0
  613. /package/dist/{procedures → implementation/algorithms/procedures}/unguaranteed/seal.d.ts +0 -0
  614. /package/dist/{procedures → implementation/algorithms/procedures}/unguaranteed/serialize_schemas.d.ts +0 -0
  615. /package/dist/{procedures → implementation/algorithms/procedures}/unguaranteed/validate.d.ts +0 -0
  616. /package/dist/{generated/implementation → implementation/generated/pareto}/schemas/unmarshall_result/marshall.d.ts +0 -0
  617. /package/dist/{generated/implementation → implementation/generated/pareto}/schemas/unmarshall_result/unmarshall.d.ts +0 -0
  618. /package/dist/{generated/interface → interface/generated/pareto}/core/astn_target.d.ts +0 -0
  619. /package/dist/{generated/interface → interface/generated/pareto}/core/resolve.d.ts +0 -0
  620. /package/dist/{generated/interface → interface/generated/pareto}/core/resolved.d.ts +0 -0
  621. /package/dist/{generated/interface → interface/generated/pareto}/core/unconstrained.d.ts +0 -0
  622. /package/dist/{generated/interface → interface/generated/pareto}/core/unresolved.d.ts +0 -0
  623. /package/dist/{generated/interface → interface/generated/pareto}/schemas/astn_schema/data_types/resolve.d.ts +0 -0
  624. /package/dist/{generated/interface → interface/generated/pareto}/schemas/astn_schema/data_types/source.d.ts +0 -0
  625. /package/dist/{generated/interface → interface/generated/pareto}/schemas/astn_schema/data_types/target.d.ts +0 -0
  626. /package/dist/{generated/interface → interface/generated/pareto}/schemas/astn_schema/marshall.d.ts +0 -0
  627. /package/dist/{generated/interface → interface/generated/pareto}/schemas/astn_schema/migrate_boilerplate.d.ts +0 -0
  628. /package/dist/{generated/interface → interface/generated/pareto}/schemas/astn_schema/unmarshall.d.ts +0 -0
  629. /package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/astn_schema}/value_deserializers.d.ts +0 -0
  630. /package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/astn_schema}/value_serializers.d.ts +0 -0
  631. /package/dist/{generated/interface → interface/generated/pareto}/schemas/module/data_types/resolve.d.ts +0 -0
  632. /package/dist/{generated/interface → interface/generated/pareto}/schemas/module/data_types/source.d.ts +0 -0
  633. /package/dist/{generated/interface → interface/generated/pareto}/schemas/module/data_types/target.d.ts +0 -0
  634. /package/dist/{generated/interface → interface/generated/pareto}/schemas/module/marshall.d.ts +0 -0
  635. /package/dist/{generated/interface → interface/generated/pareto}/schemas/module/migrate_boilerplate.d.ts +0 -0
  636. /package/dist/{generated/interface → interface/generated/pareto}/schemas/module/unmarshall.d.ts +0 -0
  637. /package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/module}/value_deserializers.d.ts +0 -0
  638. /package/dist/{generated/interface/schemas/astn_schema → interface/generated/pareto/schemas/module}/value_serializers.d.ts +0 -0
  639. /package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/parse_tree}/data_types/resolve.d.ts +0 -0
  640. /package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/parse_tree}/data_types/source.d.ts +0 -0
  641. /package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/parse_tree}/data_types/target.d.ts +0 -0
  642. /package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/parse_tree}/marshall.d.ts +0 -0
  643. /package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/parse_tree}/migrate_boilerplate.d.ts +0 -0
  644. /package/dist/{generated/interface/schemas/ast → interface/generated/pareto/schemas/parse_tree}/unmarshall.d.ts +0 -0
  645. /package/dist/{generated/interface/schemas/module → interface/generated/pareto/schemas/parse_tree}/value_deserializers.d.ts +0 -0
  646. /package/dist/{generated/interface/schemas/module → interface/generated/pareto/schemas/parse_tree}/value_serializers.d.ts +0 -0
  647. /package/dist/{generated/interface → interface/generated/pareto}/schemas/schema/data_types/resolve.d.ts +0 -0
  648. /package/dist/{generated/interface → interface/generated/pareto}/schemas/schema/data_types/source.d.ts +0 -0
  649. /package/dist/{generated/interface → interface/generated/pareto}/schemas/schema/data_types/target.d.ts +0 -0
  650. /package/dist/{generated/interface → interface/generated/pareto}/schemas/schema/marshall.d.ts +0 -0
  651. /package/dist/{generated/interface → interface/generated/pareto}/schemas/schema/migrate_boilerplate.d.ts +0 -0
  652. /package/dist/{generated/interface → interface/generated/pareto}/schemas/schema/unmarshall.d.ts +0 -0
  653. /package/dist/{generated/interface → interface/generated/pareto}/schemas/schema/value_deserializers.d.ts +0 -0
  654. /package/dist/{generated/interface → interface/generated/pareto}/schemas/schema/value_serializers.d.ts +0 -0
  655. /package/dist/{generated/interface → interface/generated/pareto}/schemas/token/data_types/resolve.d.ts +0 -0
  656. /package/dist/{generated/interface → interface/generated/pareto}/schemas/token/data_types/source.d.ts +0 -0
  657. /package/dist/{generated/interface → interface/generated/pareto}/schemas/token/data_types/target.d.ts +0 -0
  658. /package/dist/{generated/interface → interface/generated/pareto}/schemas/token/marshall.d.ts +0 -0
  659. /package/dist/{generated/interface → interface/generated/pareto}/schemas/token/migrate_boilerplate.d.ts +0 -0
  660. /package/dist/{generated/interface → interface/generated/pareto}/schemas/token/unmarshall.d.ts +0 -0
  661. /package/dist/{generated/interface → interface/generated/pareto}/schemas/token/value_deserializers.d.ts +0 -0
  662. /package/dist/{generated/interface → interface/generated/pareto}/schemas/token/value_serializers.d.ts +0 -0
  663. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_errors/data_types/resolve.d.ts +0 -0
  664. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_errors/data_types/source.d.ts +0 -0
  665. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_errors/data_types/target.d.ts +0 -0
  666. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_errors/marshall.d.ts +0 -0
  667. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_errors/migrate_boilerplate.d.ts +0 -0
  668. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_errors/unmarshall.d.ts +0 -0
  669. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_errors/value_deserializers.d.ts +0 -0
  670. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_errors/value_serializers.d.ts +0 -0
  671. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/data_types/resolve.d.ts +0 -0
  672. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/data_types/source.d.ts +0 -0
  673. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/data_types/target.d.ts +0 -0
  674. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/marshall.d.ts +0 -0
  675. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/migrate_boilerplate.d.ts +0 -0
  676. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/unmarshall.d.ts +0 -0
  677. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/value_deserializers.d.ts +0 -0
  678. /package/dist/{generated/interface → interface/generated/pareto}/schemas/unmarshall_result/value_serializers.d.ts +0 -0
@@ -0,0 +1,2025 @@
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 (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.r_Types = exports.r_Type_Specification = exports.r_Type_Reference = exports.r_Type_Parameters = exports.r_Type_Node_Reference = exports.r_Type_Node = exports.r_Type = exports.r_Text_Type = exports.r_Signatures = exports.r_Signature_Parameters = exports.r_Signature = exports.r_Schemas = exports.r_Schema_Tree = exports.r_Schema = exports.r_Resolvers = exports.r_Resolve_Logic = exports.r_Relative_Value_Selection = exports.r_Reference_To_Property_Constraint = exports.r_Property_Constraints = exports.r_Property_Constraint = exports.r_Presence = exports.r_Possible_Value_Selection = exports.r_Optional_Value_Initialization = exports.r_Option_Constraints = exports.r_Number_Type = exports.r_Node_Resolver_List_Result = exports.r_Node_Resolver_Group = exports.r_Node_Resolver = exports.r_Lookup_Selection = exports.r_Imports = exports.r_Guaranteed_Value_Selection = exports.r_Group = exports.r_Globals = exports.r_Dictionary = exports.r_Constraint = exports.r_Benchmark = void 0;
27
+ const _ea = __importStar(require("exupery-core-alg"));
28
+ const _edev = __importStar(require("exupery-core-dev"));
29
+ const _i_generic = __importStar(require("../../generic/resolve"));
30
+ const r_Benchmark = ($, $p) => _ea.block(() => {
31
+ const l2s = $p['location 2 string'];
32
+ const params = $p['parameters'];
33
+ return _ea.block(() => {
34
+ const p_selection = _ea.cc($['selection'], ($) => (0, exports.r_Guaranteed_Value_Selection)($, {
35
+ 'location 2 string': l2s,
36
+ 'parameters': ({
37
+ 'lookups': params['lookups'],
38
+ 'values': params['values'],
39
+ }),
40
+ }));
41
+ const p_resulting_dictionary = _ea.cc($['resulting dictionary'], ($) => _edev.implement_me());
42
+ const p_dense = _ea.cc($['dense'], ($) => $);
43
+ return ({
44
+ 'dense': p_dense,
45
+ 'resulting dictionary': p_resulting_dictionary,
46
+ 'selection': p_selection,
47
+ });
48
+ });
49
+ });
50
+ exports.r_Benchmark = r_Benchmark;
51
+ const r_Constraint = ($, $p) => _ea.block(() => {
52
+ const l2s = $p['location 2 string'];
53
+ const params = $p['parameters'];
54
+ return _ea.block(() => {
55
+ const p_selection = _ea.cc($['selection'], ($) => (0, exports.r_Relative_Value_Selection)($, {
56
+ 'location 2 string': l2s,
57
+ 'parameters': ({
58
+ 'lookups': params['lookups'],
59
+ 'values': params['values'],
60
+ }),
61
+ }));
62
+ const p_type = _ea.cc($['type'], ($) => _ea.cc($['state group'], ($) => {
63
+ switch ($[0]) {
64
+ case 'optional value': return _ea.ss($, ($) => ['optional value', _ea.block(() => {
65
+ const c_optional = _edev.implement_me();
66
+ return _ea.block(() => {
67
+ const p_selected_optional_value = _ea.cc($['selected optional value'], ($) => c_optional);
68
+ return ({
69
+ 'selected optional value': p_selected_optional_value,
70
+ });
71
+ });
72
+ })]);
73
+ case 'state': return _ea.ss($, ($) => ['state', _ea.block(() => {
74
+ const c_state_group = _edev.implement_me();
75
+ return _ea.block(() => {
76
+ const p_selected_state_group = _ea.cc($['selected state group'], ($) => c_state_group);
77
+ const p_state = _ea.cc($['state'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(p_selected_state_group, null), {
78
+ 'location 2 string': l2s,
79
+ 'reference': $,
80
+ }));
81
+ return ({
82
+ 'selected state group': p_selected_state_group,
83
+ 'state': p_state,
84
+ });
85
+ });
86
+ })]);
87
+ default: return _ea.au($[0]);
88
+ }
89
+ }));
90
+ return ({
91
+ 'selection': p_selection,
92
+ 'type': p_type,
93
+ });
94
+ });
95
+ });
96
+ exports.r_Constraint = r_Constraint;
97
+ const r_Dictionary = ($, $p) => _ea.block(() => {
98
+ const l2s = $p['location 2 string'];
99
+ const params = $p['parameters'];
100
+ return _ea.block(() => {
101
+ const p_node = _ea.cc($['node'], ($) => (0, exports.r_Type_Node)($, {
102
+ 'location 2 string': l2s,
103
+ 'parameters': ({
104
+ 'lookups': ({
105
+ 'noncircular sibling types': params['lookups']['noncircular sibling types'],
106
+ 'possibly circular dependent sibling types': params['lookups']['possibly circular dependent sibling types'],
107
+ }),
108
+ 'values': ({
109
+ 'globals': params['values']['globals'],
110
+ 'imports': params['values']['imports'],
111
+ 'type parameters': params['values']['type parameters'],
112
+ }),
113
+ }),
114
+ }));
115
+ const p_ordered = _ea.cc($['ordered'], ($) => $);
116
+ return ({
117
+ 'node': p_node,
118
+ 'ordered': p_ordered,
119
+ });
120
+ });
121
+ });
122
+ exports.r_Dictionary = r_Dictionary;
123
+ const r_Globals = ($, $p) => _ea.block(() => {
124
+ const l2s = $p['location 2 string'];
125
+ const params = $p['parameters'];
126
+ return _ea.block(() => {
127
+ const p_complexity = _ea.cc($['complexity'], ($) => _ea.cc($['state group'], ($) => {
128
+ switch ($[0]) {
129
+ case 'constrained': return _ea.ss($, ($) => ['constrained', _ea.block(() => {
130
+ return null;
131
+ })]);
132
+ case 'unconstrained': return _ea.ss($, ($) => ['unconstrained', _ea.block(() => {
133
+ return null;
134
+ })]);
135
+ default: return _ea.au($[0]);
136
+ }
137
+ }));
138
+ const p_text_types = _ea.cc($['text types'], ($) => _ea.block(() => {
139
+ return _i_generic.resolve_dictionary($, {
140
+ 'location 2 string': l2s,
141
+ 'map': ($, $p) => _ea.block(() => {
142
+ return _ea.cc($['value'], ($) => (0, exports.r_Text_Type)($, {
143
+ 'location 2 string': l2s,
144
+ 'parameters': ({
145
+ 'lookups': null,
146
+ 'values': null,
147
+ }),
148
+ }));
149
+ }),
150
+ });
151
+ }));
152
+ const p_number_types = _ea.cc($['number types'], ($) => _ea.block(() => {
153
+ return _i_generic.resolve_dictionary($, {
154
+ 'location 2 string': l2s,
155
+ 'map': ($, $p) => _ea.block(() => {
156
+ return _ea.cc($['value'], ($) => (0, exports.r_Number_Type)($, {
157
+ 'location 2 string': l2s,
158
+ 'parameters': ({
159
+ 'lookups': null,
160
+ 'values': null,
161
+ }),
162
+ }));
163
+ }),
164
+ });
165
+ }));
166
+ return ({
167
+ 'complexity': p_complexity,
168
+ 'number types': p_number_types,
169
+ 'text types': p_text_types,
170
+ });
171
+ });
172
+ });
173
+ exports.r_Globals = r_Globals;
174
+ const r_Group = ($, $p) => _ea.block(() => {
175
+ const l2s = $p['location 2 string'];
176
+ const params = $p['parameters'];
177
+ return _ea.block(() => {
178
+ return _i_generic.resolve_ordered_dictionary($, {
179
+ 'location 2 string': l2s,
180
+ 'map': ($, $p) => _ea.block(() => {
181
+ return _ea.cc($['value'], ($) => _ea.block(() => {
182
+ const p_description = _ea.cc($['description'], ($) => $.map(($) => _ea.block(() => {
183
+ return $;
184
+ })));
185
+ const p_node = _ea.cc($['node'], ($) => (0, exports.r_Type_Node)($, {
186
+ 'location 2 string': l2s,
187
+ 'parameters': ({
188
+ 'lookups': ({
189
+ 'noncircular sibling types': params['lookups']['noncircular sibling types'],
190
+ 'possibly circular dependent sibling types': params['lookups']['possibly circular dependent sibling types'],
191
+ }),
192
+ 'values': ({
193
+ 'globals': params['values']['globals'],
194
+ 'imports': params['values']['imports'],
195
+ 'type parameters': params['values']['type parameters'],
196
+ }),
197
+ }),
198
+ }));
199
+ return ({
200
+ 'description': p_description,
201
+ 'node': p_node,
202
+ });
203
+ }));
204
+ }),
205
+ });
206
+ });
207
+ });
208
+ exports.r_Group = r_Group;
209
+ const r_Guaranteed_Value_Selection = ($, $p) => _ea.block(() => {
210
+ const l2s = $p['location 2 string'];
211
+ const params = $p['parameters'];
212
+ return _ea.block(() => {
213
+ const p_start = _ea.cc($['start'], ($) => _ea.cc($['state group'], ($) => {
214
+ switch ($[0]) {
215
+ case 'constraint': return _ea.ss($, ($) => ['constraint', _ea.block(() => {
216
+ return _ea.cc($['state group'], ($) => {
217
+ switch ($[0]) {
218
+ case 'component': return _ea.ss($, ($) => ['component', _ea.block(() => {
219
+ return _ea.block(() => {
220
+ const p_property = _ea.cc($['property'], ($) => _i_generic.get_entry(params['lookups']['sibling property resolvers'], {
221
+ 'location 2 string': l2s,
222
+ 'reference': $,
223
+ }));
224
+ const p_constraint = _ea.cc($['constraint'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(_edev.implement_me(), null), {
225
+ 'location 2 string': l2s,
226
+ 'reference': $,
227
+ }));
228
+ return ({
229
+ 'constraint': p_constraint,
230
+ 'property': p_property,
231
+ });
232
+ });
233
+ })]);
234
+ case 'reference': return _ea.ss($, ($) => ['reference', _ea.block(() => {
235
+ return _ea.block(() => {
236
+ const p_property = _ea.cc($['property'], ($) => _i_generic.get_entry(params['lookups']['sibling property resolvers'], {
237
+ 'location 2 string': l2s,
238
+ 'reference': $,
239
+ }));
240
+ const p_constraint = _ea.cc($['constraint'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(_edev.implement_me(), null), {
241
+ 'location 2 string': l2s,
242
+ 'reference': $,
243
+ }));
244
+ return ({
245
+ 'constraint': p_constraint,
246
+ 'property': p_property,
247
+ });
248
+ });
249
+ })]);
250
+ default: return _ea.au($[0]);
251
+ }
252
+ });
253
+ })]);
254
+ case 'linked entry': return _ea.ss($, ($) => ['linked entry', _ea.block(() => {
255
+ return null;
256
+ })]);
257
+ case 'list cursor': return _ea.ss($, ($) => ['list cursor', _ea.block(() => {
258
+ return null;
259
+ })]);
260
+ case 'option constraint': return _ea.ss($, ($) => ['option constraint', _ea.block(() => {
261
+ const c_oc = params['values']['option constraints'].transform(($) => $, () => _ea.deprecated_panic('ABORT SELECTION'));
262
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(c_oc, null), {
263
+ 'location 2 string': l2s,
264
+ 'reference': $,
265
+ });
266
+ })]);
267
+ case 'parameter': return _ea.ss($, ($) => ['parameter', _ea.block(() => {
268
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(params['values']['signature']['resolved parameters']['values'], null), {
269
+ 'location 2 string': l2s,
270
+ 'reference': $,
271
+ });
272
+ })]);
273
+ case 'parent sibling': return _ea.ss($, ($) => ['parent sibling', _ea.block(() => {
274
+ return _i_generic.get_entry(params['lookups']['parent sibling property resolvers'], {
275
+ 'location 2 string': l2s,
276
+ 'reference': $,
277
+ });
278
+ })]);
279
+ case 'result': return _ea.ss($, ($) => ['result', _ea.block(() => {
280
+ return _ea.cc($['state group'], ($) => {
281
+ switch ($[0]) {
282
+ case 'list': return _ea.ss($, ($) => ['list', _ea.block(() => {
283
+ return _ea.block(() => {
284
+ const p_property = _ea.cc($['property'], ($) => _i_generic.get_entry(params['lookups']['sibling property resolvers'], {
285
+ 'location 2 string': l2s,
286
+ 'reference': $,
287
+ }));
288
+ const p_list_result = _ea.cc($['list result'], ($) => _edev.implement_me());
289
+ return ({
290
+ 'list result': p_list_result,
291
+ 'property': p_property,
292
+ });
293
+ });
294
+ })]);
295
+ case 'optional value': return _ea.ss($, ($) => ['optional value', _ea.block(() => {
296
+ return _ea.block(() => {
297
+ const p_property = _ea.cc($['property'], ($) => _i_generic.get_entry(params['lookups']['sibling property resolvers'], {
298
+ 'location 2 string': l2s,
299
+ 'reference': $,
300
+ }));
301
+ const p_optional_value = _ea.cc($['optional value'], ($) => _edev.implement_me());
302
+ const p_result = _ea.cc($['result'], ($) => (0, exports.r_Type_Reference)($, {
303
+ 'location 2 string': l2s,
304
+ 'parameters': ({
305
+ 'lookups': ({
306
+ 'types': _i_generic.dictionary_to_lookup(params['values']['types']['dictionary'], null),
307
+ }),
308
+ 'values': ({
309
+ 'imports': params['values']['imports'],
310
+ }),
311
+ }),
312
+ }));
313
+ return ({
314
+ 'optional value': p_optional_value,
315
+ 'property': p_property,
316
+ 'result': p_result,
317
+ });
318
+ });
319
+ })]);
320
+ case 'state group': return _ea.ss($, ($) => ['state group', _ea.block(() => {
321
+ return _ea.block(() => {
322
+ const p_property = _ea.cc($['property'], ($) => _i_generic.get_entry(params['lookups']['sibling property resolvers'], {
323
+ 'location 2 string': l2s,
324
+ 'reference': $,
325
+ }));
326
+ const p_state_group = _ea.cc($['state group'], ($) => _edev.implement_me());
327
+ const p_result = _ea.cc($['result'], ($) => (0, exports.r_Type_Reference)($, {
328
+ 'location 2 string': l2s,
329
+ 'parameters': ({
330
+ 'lookups': ({
331
+ 'types': _i_generic.dictionary_to_lookup(params['values']['types']['dictionary'], null),
332
+ }),
333
+ 'values': ({
334
+ 'imports': params['values']['imports'],
335
+ }),
336
+ }),
337
+ }));
338
+ return ({
339
+ 'property': p_property,
340
+ 'result': p_result,
341
+ 'state group': p_state_group,
342
+ });
343
+ });
344
+ })]);
345
+ default: return _ea.au($[0]);
346
+ }
347
+ });
348
+ })]);
349
+ case 'sibling': return _ea.ss($, ($) => ['sibling', _ea.block(() => {
350
+ return _i_generic.get_entry(params['lookups']['sibling property resolvers'], {
351
+ 'location 2 string': l2s,
352
+ 'reference': $,
353
+ });
354
+ })]);
355
+ default: return _ea.au($[0]);
356
+ }
357
+ }));
358
+ const p_tail = _ea.cc($['tail'], ($) => (0, exports.r_Relative_Value_Selection)($, {
359
+ 'location 2 string': l2s,
360
+ 'parameters': ({
361
+ 'lookups': null,
362
+ 'values': ({
363
+ 'node': _edev.implement_me(),
364
+ }),
365
+ }),
366
+ }));
367
+ const p_resulting_node = _ea.cc($['resulting node'], ($) => p_tail['resulting node']);
368
+ return ({
369
+ 'resulting node': p_resulting_node,
370
+ 'start': p_start,
371
+ 'tail': p_tail,
372
+ });
373
+ });
374
+ });
375
+ exports.r_Guaranteed_Value_Selection = r_Guaranteed_Value_Selection;
376
+ const r_Imports = ($, $p) => _ea.block(() => {
377
+ const l2s = $p['location 2 string'];
378
+ const params = $p['parameters'];
379
+ return _ea.block(() => {
380
+ return _i_generic.resolve_dictionary($, {
381
+ 'location 2 string': l2s,
382
+ 'map': ($, $p) => _ea.block(() => {
383
+ return _ea.cc($['value'], ($) => _ea.block(() => {
384
+ const p_schema_set_child = _ea.cc($['schema set child'], ($) => _i_generic.get_entry_from_stack(params['lookups']['sibling schemas'], {
385
+ 'location 2 string': l2s,
386
+ 'reference': $,
387
+ }));
388
+ const p_schema = _ea.cc($['schema'], ($) => _edev.implement_me());
389
+ return ({
390
+ 'schema': p_schema,
391
+ 'schema set child': p_schema_set_child,
392
+ });
393
+ }));
394
+ }),
395
+ });
396
+ });
397
+ });
398
+ exports.r_Imports = r_Imports;
399
+ const r_Lookup_Selection = ($, $p) => _ea.block(() => {
400
+ const l2s = $p['location 2 string'];
401
+ const params = $p['parameters'];
402
+ return _ea.block(() => {
403
+ const p_type = _ea.cc($['type'], ($) => _ea.cc($['state group'], ($) => {
404
+ switch ($[0]) {
405
+ case 'dictionary': return _ea.ss($, ($) => ['dictionary', _ea.block(() => {
406
+ return _ea.block(() => {
407
+ const p_selection = _ea.cc($['selection'], ($) => (0, exports.r_Guaranteed_Value_Selection)($, {
408
+ 'location 2 string': l2s,
409
+ 'parameters': ({
410
+ 'lookups': params['lookups'],
411
+ 'values': params['values'],
412
+ }),
413
+ }));
414
+ const p_selected_dictionary = _ea.cc($['selected dictionary'], ($) => _edev.implement_me());
415
+ return ({
416
+ 'selected dictionary': p_selected_dictionary,
417
+ 'selection': p_selection,
418
+ });
419
+ });
420
+ })]);
421
+ case 'not circular dependent siblings': return _ea.ss($, ($) => ['not circular dependent siblings', _ea.block(() => {
422
+ const c_cd = params['values']['current ordered dictionary'].transform(($) => $, () => _ea.deprecated_panic('ABORT SELECTION'));
423
+ return c_cd;
424
+ })]);
425
+ case 'parameter': return _ea.ss($, ($) => ['parameter', _ea.block(() => {
426
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(params['values']['signature']['resolved parameters']['lookups'], null), {
427
+ 'location 2 string': l2s,
428
+ 'reference': $,
429
+ });
430
+ })]);
431
+ case 'possibly circular dependent siblings': return _ea.ss($, ($) => ['possibly circular dependent siblings', _ea.block(() => {
432
+ const c_cd = params['values']['current dictionary'].transform(($) => $, () => _ea.deprecated_panic('ABORT SELECTION'));
433
+ return c_cd;
434
+ })]);
435
+ default: return _ea.au($[0]);
436
+ }
437
+ }));
438
+ const p_resulting_dictionary = _ea.cc($['resulting dictionary'], ($) => _edev.implement_me());
439
+ return ({
440
+ 'resulting dictionary': p_resulting_dictionary,
441
+ 'type': p_type,
442
+ });
443
+ });
444
+ });
445
+ exports.r_Lookup_Selection = r_Lookup_Selection;
446
+ const r_Node_Resolver = ($, $p) => _ea.block(() => {
447
+ const l2s = $p['location 2 string'];
448
+ const params = $p['parameters'];
449
+ return _ea.cc($['state group'], ($) => {
450
+ switch ($[0]) {
451
+ case 'boolean': return _ea.ss($, ($) => ['boolean', _ea.block(() => {
452
+ const c_definition = _edev.implement_me();
453
+ return null;
454
+ })]);
455
+ case 'component': return _ea.ss($, ($) => ['component', _ea.block(() => {
456
+ const c_definition = _edev.implement_me();
457
+ return _ea.block(() => {
458
+ const p_location = _ea.cc($['location'], ($) => _ea.cc($['state group'], ($) => {
459
+ switch ($[0]) {
460
+ case 'external': return _ea.ss($, ($) => ['external', _ea.block(() => {
461
+ const c_import = params['values']['imports'].transform(($) => $, () => _ea.deprecated_panic('ABORT SELECTION'));
462
+ return _ea.block(() => {
463
+ const p_import = _ea.cc($['import'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(c_import, null), {
464
+ 'location 2 string': l2s,
465
+ 'reference': $,
466
+ }));
467
+ const p_type = _ea.cc($['type'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(_edev.implement_me(), null), {
468
+ 'location 2 string': l2s,
469
+ 'reference': $,
470
+ }));
471
+ return ({
472
+ 'import': p_import,
473
+ 'type': p_type,
474
+ });
475
+ });
476
+ })]);
477
+ case 'internal': return _ea.ss($, ($) => ['internal', _ea.block(() => {
478
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(params['values']['signatures']['dictionary'], null), {
479
+ 'location 2 string': l2s,
480
+ 'reference': $,
481
+ });
482
+ })]);
483
+ default: return _ea.au($[0]);
484
+ }
485
+ }));
486
+ const p_signature = _ea.cc($['signature'], ($) => _edev.implement_me());
487
+ const p_arguments = _ea.cc($['arguments'], ($) => $.map(($) => _ea.block(() => {
488
+ return _ea.block(() => {
489
+ const p_values = _ea.cc($['values'], ($) => $.map(($) => _ea.block(() => {
490
+ return _ea.block(() => {
491
+ const benchmark = p_signature['resolved parameters']['values'];
492
+ return _i_generic.resolve_dictionary($, {
493
+ 'location 2 string': l2s,
494
+ 'map': ($, $p) => _ea.block(() => {
495
+ const linked_entry = _edev.implement_me();
496
+ return _ea.cc($['value'], ($) => _ea.cc($['state group'], ($) => {
497
+ switch ($[0]) {
498
+ case 'optional': return _ea.ss($, ($) => ['optional', _ea.block(() => {
499
+ return (0, exports.r_Optional_Value_Initialization)($, {
500
+ 'location 2 string': l2s,
501
+ 'parameters': ({
502
+ 'lookups': params['lookups'],
503
+ 'values': params['values'],
504
+ }),
505
+ });
506
+ })]);
507
+ case 'parameter': return _ea.ss($, ($) => ['parameter', _ea.block(() => {
508
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(params['values']['signature']['resolved parameters']['values'], null), {
509
+ 'location 2 string': l2s,
510
+ 'reference': $,
511
+ });
512
+ })]);
513
+ case 'required': return _ea.ss($, ($) => ['required', _ea.block(() => {
514
+ return (0, exports.r_Guaranteed_Value_Selection)($, {
515
+ 'location 2 string': l2s,
516
+ 'parameters': ({
517
+ 'lookups': params['lookups'],
518
+ 'values': params['values'],
519
+ }),
520
+ });
521
+ })]);
522
+ default: return _ea.au($[0]);
523
+ }
524
+ }));
525
+ }),
526
+ });
527
+ });
528
+ })));
529
+ const p_lookups = _ea.cc($['lookups'], ($) => $.map(($) => _ea.block(() => {
530
+ return _ea.block(() => {
531
+ const benchmark = p_signature['resolved parameters']['lookups'];
532
+ return _i_generic.resolve_dictionary($, {
533
+ 'location 2 string': l2s,
534
+ 'map': ($, $p) => _ea.block(() => {
535
+ const linked_entry = _edev.implement_me();
536
+ return _ea.cc($['value'], ($) => _ea.cc($['state group'], ($) => {
537
+ switch ($[0]) {
538
+ case 'empty stack': return _ea.ss($, ($) => ['empty stack', _ea.block(() => {
539
+ return null;
540
+ })]);
541
+ case 'not set': return _ea.ss($, ($) => ['not set', _ea.block(() => {
542
+ return null;
543
+ })]);
544
+ case 'selection': return _ea.ss($, ($) => ['selection', _ea.block(() => {
545
+ return (0, exports.r_Lookup_Selection)($, {
546
+ 'location 2 string': l2s,
547
+ 'parameters': ({
548
+ 'lookups': params['lookups'],
549
+ 'values': params['values'],
550
+ }),
551
+ });
552
+ })]);
553
+ case 'stack': return _ea.ss($, ($) => ['stack', _ea.block(() => {
554
+ return _ea.block(() => {
555
+ const p_stack = _ea.cc($['stack'], ($) => (0, exports.r_Lookup_Selection)($, {
556
+ 'location 2 string': l2s,
557
+ 'parameters': ({
558
+ 'lookups': params['lookups'],
559
+ 'values': params['values'],
560
+ }),
561
+ }));
562
+ const p_element = _ea.cc($['element'], ($) => (0, exports.r_Lookup_Selection)($, {
563
+ 'location 2 string': l2s,
564
+ 'parameters': ({
565
+ 'lookups': params['lookups'],
566
+ 'values': params['values'],
567
+ }),
568
+ }));
569
+ return ({
570
+ 'element': p_element,
571
+ 'stack': p_stack,
572
+ });
573
+ });
574
+ })]);
575
+ default: return _ea.au($[0]);
576
+ }
577
+ }));
578
+ }),
579
+ });
580
+ });
581
+ })));
582
+ return ({
583
+ 'lookups': p_lookups,
584
+ 'values': p_values,
585
+ });
586
+ });
587
+ })));
588
+ const p_constraints = _ea.cc($['constraints'], ($) => (0, exports.r_Property_Constraints)($, {
589
+ 'location 2 string': l2s,
590
+ 'parameters': ({
591
+ 'lookups': null,
592
+ 'values': ({
593
+ 'node': p_signature['type']['node'],
594
+ }),
595
+ }),
596
+ }));
597
+ return ({
598
+ 'arguments': p_arguments,
599
+ 'constraints': p_constraints,
600
+ 'location': p_location,
601
+ 'signature': p_signature,
602
+ });
603
+ });
604
+ })]);
605
+ case 'dictionary': return _ea.ss($, ($) => ['dictionary', _ea.block(() => {
606
+ const c_definition = _edev.implement_me();
607
+ return _ea.block(() => {
608
+ const p_definition = _ea.cc($['definition'], ($) => c_definition);
609
+ const p_benchmark = _ea.cc($['benchmark'], ($) => $.map(($) => _ea.block(() => {
610
+ return (0, exports.r_Benchmark)($, {
611
+ 'location 2 string': l2s,
612
+ 'parameters': ({
613
+ 'lookups': params['lookups'],
614
+ 'values': params['values'],
615
+ }),
616
+ });
617
+ })));
618
+ const p_resolver = _ea.cc($['resolver'], ($) => (0, exports.r_Node_Resolver)($, {
619
+ 'location 2 string': l2s,
620
+ 'parameters': ({
621
+ 'lookups': params['lookups'],
622
+ 'values': ({
623
+ 'current dictionary': _ea.set(p_definition),
624
+ 'current ordered dictionary': _ea.set(p_definition),
625
+ 'definition': p_definition['node'],
626
+ 'imports': params['values']['imports'],
627
+ 'linked entry': _edev.implement_me(),
628
+ 'list cursor': params['values']['list cursor'],
629
+ 'option constraints': params['values']['option constraints'],
630
+ 'signature': params['values']['signature'],
631
+ 'signatures': params['values']['signatures'],
632
+ 'types': params['values']['types'],
633
+ }),
634
+ }),
635
+ }));
636
+ return ({
637
+ 'benchmark': p_benchmark,
638
+ 'definition': p_definition,
639
+ 'resolver': p_resolver,
640
+ });
641
+ });
642
+ })]);
643
+ case 'group': return _ea.ss($, ($) => ['group', _ea.block(() => {
644
+ const c_definition = _edev.implement_me();
645
+ return (0, exports.r_Node_Resolver_Group)($, {
646
+ 'location 2 string': l2s,
647
+ 'parameters': ({
648
+ 'lookups': ({
649
+ 'parent sibling property resolvers': params['lookups']['sibling property resolvers'],
650
+ 'sibling property resolvers': params['lookups']['sibling property resolvers'],
651
+ }),
652
+ 'values': ({
653
+ 'current dictionary': params['values']['current dictionary'],
654
+ 'current ordered dictionary': params['values']['current ordered dictionary'],
655
+ 'definition': c_definition,
656
+ 'imports': params['values']['imports'],
657
+ 'linked entry': params['values']['linked entry'],
658
+ 'list cursor': params['values']['list cursor'],
659
+ 'option constraints': params['values']['option constraints'],
660
+ 'signature': params['values']['signature'],
661
+ 'signatures': params['values']['signatures'],
662
+ 'types': params['values']['types'],
663
+ }),
664
+ }),
665
+ });
666
+ })]);
667
+ case 'list': return _ea.ss($, ($) => ['list', _ea.block(() => {
668
+ const c_definition = _edev.implement_me();
669
+ return _ea.block(() => {
670
+ const p_definition = _ea.cc($['definition'], ($) => c_definition);
671
+ const p_result = _ea.cc($['result'], ($) => $.map(($) => _ea.block(() => {
672
+ return (0, exports.r_Node_Resolver_List_Result)($, {
673
+ 'location 2 string': l2s,
674
+ 'parameters': ({
675
+ 'lookups': ({
676
+ 'types': _i_generic.dictionary_to_lookup(params['values']['types']['dictionary'], null),
677
+ }),
678
+ 'values': ({
679
+ 'imports': params['values']['imports'],
680
+ }),
681
+ }),
682
+ });
683
+ })));
684
+ const p_resolver = _ea.cc($['resolver'], ($) => (0, exports.r_Node_Resolver)($, {
685
+ 'location 2 string': l2s,
686
+ 'parameters': ({
687
+ 'lookups': params['lookups'],
688
+ 'values': ({
689
+ 'current dictionary': params['values']['current dictionary'],
690
+ 'current ordered dictionary': params['values']['current ordered dictionary'],
691
+ 'definition': c_definition['node'],
692
+ 'imports': params['values']['imports'],
693
+ 'linked entry': params['values']['linked entry'],
694
+ 'list cursor': _ea.set(_edev.implement_me()),
695
+ 'option constraints': params['values']['option constraints'],
696
+ 'signature': params['values']['signature'],
697
+ 'signatures': params['values']['signatures'],
698
+ 'types': params['values']['types'],
699
+ }),
700
+ }),
701
+ }));
702
+ return ({
703
+ 'definition': p_definition,
704
+ 'resolver': p_resolver,
705
+ 'result': p_result,
706
+ });
707
+ });
708
+ })]);
709
+ case 'nothing': return _ea.ss($, ($) => ['nothing', _ea.block(() => {
710
+ const c_definition = _edev.implement_me();
711
+ return null;
712
+ })]);
713
+ case 'number': return _ea.ss($, ($) => ['number', _ea.block(() => {
714
+ const c_definition = _edev.implement_me();
715
+ return null;
716
+ })]);
717
+ case 'optional': return _ea.ss($, ($) => ['optional', _ea.block(() => {
718
+ const c_definition = _edev.implement_me();
719
+ return _ea.block(() => {
720
+ const p_constraints = _ea.cc($['constraints'], ($) => (0, exports.r_Option_Constraints)($, {
721
+ 'location 2 string': l2s,
722
+ 'parameters': ({
723
+ 'lookups': params['lookups'],
724
+ 'values': params['values'],
725
+ }),
726
+ }));
727
+ const p_resolver = _ea.cc($['resolver'], ($) => (0, exports.r_Node_Resolver)($, {
728
+ 'location 2 string': l2s,
729
+ 'parameters': ({
730
+ 'lookups': params['lookups'],
731
+ 'values': ({
732
+ 'current dictionary': params['values']['current dictionary'],
733
+ 'current ordered dictionary': params['values']['current ordered dictionary'],
734
+ 'definition': c_definition,
735
+ 'imports': params['values']['imports'],
736
+ 'linked entry': params['values']['linked entry'],
737
+ 'list cursor': params['values']['list cursor'],
738
+ 'option constraints': params['values']['option constraints'],
739
+ 'signature': params['values']['signature'],
740
+ 'signatures': params['values']['signatures'],
741
+ 'types': params['values']['types'],
742
+ }),
743
+ }),
744
+ }));
745
+ return ({
746
+ 'constraints': p_constraints,
747
+ 'resolver': p_resolver,
748
+ });
749
+ });
750
+ })]);
751
+ case 'reference': return _ea.ss($, ($) => ['reference', _ea.block(() => {
752
+ const c_definition = _edev.implement_me();
753
+ return _ea.block(() => {
754
+ const p_definition = _ea.cc($['definition'], ($) => c_definition);
755
+ const p_type = _ea.cc($['type'], ($) => _ea.cc($['state group'], ($) => {
756
+ switch ($[0]) {
757
+ case 'derived': return _ea.ss($, ($) => ['derived', _ea.block(() => {
758
+ const c_definition = _edev.implement_me();
759
+ return _ea.block(() => {
760
+ const p_value = _ea.cc($['value'], ($) => (0, exports.r_Guaranteed_Value_Selection)($, {
761
+ 'location 2 string': l2s,
762
+ 'parameters': ({
763
+ 'lookups': params['lookups'],
764
+ 'values': params['values'],
765
+ }),
766
+ }));
767
+ return ({
768
+ 'value': p_value,
769
+ });
770
+ });
771
+ })]);
772
+ case 'selected': return _ea.ss($, ($) => ['selected', _ea.block(() => {
773
+ const c_definition = _edev.implement_me();
774
+ return _ea.block(() => {
775
+ const p_definition = _ea.cc($['definition'], ($) => c_definition);
776
+ const p_lookup = _ea.cc($['lookup'], ($) => (0, exports.r_Lookup_Selection)($, {
777
+ 'location 2 string': l2s,
778
+ 'parameters': ({
779
+ 'lookups': params['lookups'],
780
+ 'values': params['values'],
781
+ }),
782
+ }));
783
+ const p_constraints = _ea.cc($['constraints'], ($) => (0, exports.r_Property_Constraints)($, {
784
+ 'location 2 string': l2s,
785
+ 'parameters': ({
786
+ 'lookups': null,
787
+ 'values': ({
788
+ 'node': p_lookup['resulting dictionary']['node'],
789
+ }),
790
+ }),
791
+ }));
792
+ return ({
793
+ 'constraints': p_constraints,
794
+ 'definition': p_definition,
795
+ 'lookup': p_lookup,
796
+ });
797
+ });
798
+ })]);
799
+ default: return _ea.au($[0]);
800
+ }
801
+ }));
802
+ return ({
803
+ 'definition': p_definition,
804
+ 'type': p_type,
805
+ });
806
+ });
807
+ })]);
808
+ case 'state group': return _ea.ss($, ($) => ['state group', _ea.block(() => {
809
+ const c_definition = _edev.implement_me();
810
+ return _ea.block(() => {
811
+ const p_definition = _ea.cc($['definition'], ($) => c_definition);
812
+ const p_states = _ea.cc($['states'], ($) => _ea.block(() => {
813
+ const benchmark = c_definition;
814
+ return _i_generic.resolve_dictionary($, {
815
+ 'location 2 string': l2s,
816
+ 'map': ($, $p) => _ea.block(() => {
817
+ const linked_entry = _edev.implement_me();
818
+ return _ea.cc($['value'], ($) => _ea.block(() => {
819
+ const p_constraints = _ea.cc($['constraints'], ($) => (0, exports.r_Option_Constraints)($, {
820
+ 'location 2 string': l2s,
821
+ 'parameters': ({
822
+ 'lookups': params['lookups'],
823
+ 'values': params['values'],
824
+ }),
825
+ }));
826
+ const p_resolver = _ea.cc($['resolver'], ($) => (0, exports.r_Node_Resolver)($, {
827
+ 'location 2 string': l2s,
828
+ 'parameters': ({
829
+ 'lookups': params['lookups'],
830
+ 'values': ({
831
+ 'current dictionary': params['values']['current dictionary'],
832
+ 'current ordered dictionary': params['values']['current ordered dictionary'],
833
+ 'definition': linked_entry['node'],
834
+ 'imports': params['values']['imports'],
835
+ 'linked entry': params['values']['linked entry'],
836
+ 'list cursor': params['values']['list cursor'],
837
+ 'option constraints': params['values']['option constraints'],
838
+ 'signature': params['values']['signature'],
839
+ 'signatures': params['values']['signatures'],
840
+ 'types': params['values']['types'],
841
+ }),
842
+ }),
843
+ }));
844
+ return ({
845
+ 'constraints': p_constraints,
846
+ 'resolver': p_resolver,
847
+ });
848
+ }));
849
+ }),
850
+ });
851
+ }));
852
+ return ({
853
+ 'definition': p_definition,
854
+ 'states': p_states,
855
+ });
856
+ });
857
+ })]);
858
+ case 'text': return _ea.ss($, ($) => ['text', _ea.block(() => {
859
+ const c_definition = _edev.implement_me();
860
+ return null;
861
+ })]);
862
+ default: return _ea.au($[0]);
863
+ }
864
+ });
865
+ });
866
+ exports.r_Node_Resolver = r_Node_Resolver;
867
+ const r_Node_Resolver_Group = ($, $p) => _ea.block(() => {
868
+ const l2s = $p['location 2 string'];
869
+ const params = $p['parameters'];
870
+ return _ea.block(() => {
871
+ const benchmark = params['values']['definition'];
872
+ return _i_generic.resolve_ordered_dictionary($, {
873
+ 'location 2 string': l2s,
874
+ 'map': ($, $p) => _ea.block(() => {
875
+ const linked_entry = _edev.implement_me();
876
+ return _ea.cc($['value'], ($) => _ea.block(() => {
877
+ const p_definition = _ea.cc($['definition'], ($) => linked_entry);
878
+ const p_resolver = _ea.cc($['resolver'], ($) => (0, exports.r_Node_Resolver)($, {
879
+ 'location 2 string': l2s,
880
+ 'parameters': ({
881
+ 'lookups': ({
882
+ 'parent sibling property resolvers': params['lookups']['sibling property resolvers'],
883
+ 'sibling property resolvers': $p['not circular dependent siblings'],
884
+ }),
885
+ 'values': ({
886
+ 'current dictionary': params['values']['current dictionary'],
887
+ 'current ordered dictionary': params['values']['current ordered dictionary'],
888
+ 'definition': linked_entry['node'],
889
+ 'imports': params['values']['imports'],
890
+ 'linked entry': params['values']['linked entry'],
891
+ 'list cursor': params['values']['list cursor'],
892
+ 'option constraints': params['values']['option constraints'],
893
+ 'signature': params['values']['signature'],
894
+ 'signatures': params['values']['signatures'],
895
+ 'types': params['values']['types'],
896
+ }),
897
+ }),
898
+ }));
899
+ return ({
900
+ 'definition': p_definition,
901
+ 'resolver': p_resolver,
902
+ });
903
+ }));
904
+ }),
905
+ });
906
+ });
907
+ });
908
+ exports.r_Node_Resolver_Group = r_Node_Resolver_Group;
909
+ const r_Node_Resolver_List_Result = ($, $p) => _ea.block(() => {
910
+ const l2s = $p['location 2 string'];
911
+ const params = $p['parameters'];
912
+ return (0, exports.r_Type_Reference)($, {
913
+ 'location 2 string': l2s,
914
+ 'parameters': ({
915
+ 'lookups': ({
916
+ 'types': params['lookups']['types'],
917
+ }),
918
+ 'values': ({
919
+ 'imports': params['values']['imports'],
920
+ }),
921
+ }),
922
+ });
923
+ });
924
+ exports.r_Node_Resolver_List_Result = r_Node_Resolver_List_Result;
925
+ const r_Number_Type = ($, $p) => _ea.block(() => {
926
+ const l2s = $p['location 2 string'];
927
+ const params = $p['parameters'];
928
+ return _ea.block(() => {
929
+ const p_precision = _ea.cc($['precision'], ($) => _ea.cc($['state group'], ($) => {
930
+ switch ($[0]) {
931
+ case 'approximation': return _ea.ss($, ($) => ['approximation', _ea.block(() => {
932
+ return _ea.block(() => {
933
+ const p_significant_digits = _ea.cc($['significant digits'], ($) => $);
934
+ return ({
935
+ 'significant digits': p_significant_digits,
936
+ });
937
+ });
938
+ })]);
939
+ case 'exact': return _ea.ss($, ($) => ['exact', _ea.block(() => {
940
+ return _ea.block(() => {
941
+ const p_decimal_separator_offset = _ea.cc($['decimal separator offset'], ($) => $.map(($) => _ea.block(() => {
942
+ return $;
943
+ })));
944
+ const p_type = _ea.cc($['type'], ($) => _ea.cc($['state group'], ($) => {
945
+ switch ($[0]) {
946
+ case 'integer': return _ea.ss($, ($) => ['integer', _ea.block(() => {
947
+ return null;
948
+ })]);
949
+ case 'natural': return _ea.ss($, ($) => ['natural', _ea.block(() => {
950
+ return null;
951
+ })]);
952
+ case 'positive natural': return _ea.ss($, ($) => ['positive natural', _ea.block(() => {
953
+ return null;
954
+ })]);
955
+ default: return _ea.au($[0]);
956
+ }
957
+ }));
958
+ return ({
959
+ 'decimal separator offset': p_decimal_separator_offset,
960
+ 'type': p_type,
961
+ });
962
+ });
963
+ })]);
964
+ default: return _ea.au($[0]);
965
+ }
966
+ }));
967
+ return ({
968
+ 'precision': p_precision,
969
+ });
970
+ });
971
+ });
972
+ exports.r_Number_Type = r_Number_Type;
973
+ const r_Option_Constraints = ($, $p) => _ea.block(() => {
974
+ const l2s = $p['location 2 string'];
975
+ const params = $p['parameters'];
976
+ return _ea.block(() => {
977
+ return _i_generic.resolve_dictionary($, {
978
+ 'location 2 string': l2s,
979
+ 'map': ($, $p) => _ea.block(() => {
980
+ return _ea.cc($['value'], ($) => _ea.cc($['state group'], ($) => {
981
+ switch ($[0]) {
982
+ case 'assert is set': return _ea.ss($, ($) => ['assert is set', _ea.block(() => {
983
+ return (0, exports.r_Possible_Value_Selection)($, {
984
+ 'location 2 string': l2s,
985
+ 'parameters': ({
986
+ 'lookups': params['lookups'],
987
+ 'values': params['values'],
988
+ }),
989
+ });
990
+ })]);
991
+ case 'state': return _ea.ss($, ($) => ['state', _ea.block(() => {
992
+ return _ea.block(() => {
993
+ const p_selection = _ea.cc($['selection'], ($) => (0, exports.r_Guaranteed_Value_Selection)($, {
994
+ 'location 2 string': l2s,
995
+ 'parameters': ({
996
+ 'lookups': params['lookups'],
997
+ 'values': params['values'],
998
+ }),
999
+ }));
1000
+ const p_selected_state_group = _ea.cc($['selected state group'], ($) => _edev.implement_me());
1001
+ const p_state = _ea.cc($['state'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(p_selected_state_group, null), {
1002
+ 'location 2 string': l2s,
1003
+ 'reference': $,
1004
+ }));
1005
+ return ({
1006
+ 'selected state group': p_selected_state_group,
1007
+ 'selection': p_selection,
1008
+ 'state': p_state,
1009
+ });
1010
+ });
1011
+ })]);
1012
+ default: return _ea.au($[0]);
1013
+ }
1014
+ }));
1015
+ }),
1016
+ });
1017
+ });
1018
+ });
1019
+ exports.r_Option_Constraints = r_Option_Constraints;
1020
+ const r_Optional_Value_Initialization = ($, $p) => _ea.block(() => {
1021
+ const l2s = $p['location 2 string'];
1022
+ const params = $p['parameters'];
1023
+ return _ea.cc($['state group'], ($) => {
1024
+ switch ($[0]) {
1025
+ case 'not set': return _ea.ss($, ($) => ['not set', _ea.block(() => {
1026
+ return null;
1027
+ })]);
1028
+ case 'selection': return _ea.ss($, ($) => ['selection', _ea.block(() => {
1029
+ return (0, exports.r_Possible_Value_Selection)($, {
1030
+ 'location 2 string': l2s,
1031
+ 'parameters': ({
1032
+ 'lookups': params['lookups'],
1033
+ 'values': params['values'],
1034
+ }),
1035
+ });
1036
+ })]);
1037
+ case 'set': return _ea.ss($, ($) => ['set', _ea.block(() => {
1038
+ return (0, exports.r_Guaranteed_Value_Selection)($, {
1039
+ 'location 2 string': l2s,
1040
+ 'parameters': ({
1041
+ 'lookups': params['lookups'],
1042
+ 'values': params['values'],
1043
+ }),
1044
+ });
1045
+ })]);
1046
+ default: return _ea.au($[0]);
1047
+ }
1048
+ });
1049
+ });
1050
+ exports.r_Optional_Value_Initialization = r_Optional_Value_Initialization;
1051
+ const r_Possible_Value_Selection = ($, $p) => _ea.block(() => {
1052
+ const l2s = $p['location 2 string'];
1053
+ const params = $p['parameters'];
1054
+ return _ea.cc($['state group'], ($) => {
1055
+ switch ($[0]) {
1056
+ case 'parameter': return _ea.ss($, ($) => ['parameter', _ea.block(() => {
1057
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(params['values']['signature']['resolved parameters']['values'], null), {
1058
+ 'location 2 string': l2s,
1059
+ 'reference': $,
1060
+ });
1061
+ })]);
1062
+ case 'result': return _ea.ss($, ($) => ['result', _ea.block(() => {
1063
+ return _ea.cc($['state group'], ($) => {
1064
+ switch ($[0]) {
1065
+ case 'optional value': return _ea.ss($, ($) => ['optional value', _ea.block(() => {
1066
+ return _ea.block(() => {
1067
+ const p_property = _ea.cc($['property'], ($) => _i_generic.get_entry(params['lookups']['sibling property resolvers'], {
1068
+ 'location 2 string': l2s,
1069
+ 'reference': $,
1070
+ }));
1071
+ const p_optional_value = _ea.cc($['optional value'], ($) => _edev.implement_me());
1072
+ const p_result = _ea.cc($['result'], ($) => (0, exports.r_Type_Reference)($, {
1073
+ 'location 2 string': l2s,
1074
+ 'parameters': ({
1075
+ 'lookups': ({
1076
+ 'types': _i_generic.dictionary_to_lookup(params['values']['types']['dictionary'], null),
1077
+ }),
1078
+ 'values': ({
1079
+ 'imports': params['values']['imports'],
1080
+ }),
1081
+ }),
1082
+ }));
1083
+ return ({
1084
+ 'optional value': p_optional_value,
1085
+ 'property': p_property,
1086
+ 'result': p_result,
1087
+ });
1088
+ });
1089
+ })]);
1090
+ case 'state group': return _ea.ss($, ($) => ['state group', _ea.block(() => {
1091
+ return _ea.block(() => {
1092
+ const p_property = _ea.cc($['property'], ($) => _i_generic.get_entry(params['lookups']['sibling property resolvers'], {
1093
+ 'location 2 string': l2s,
1094
+ 'reference': $,
1095
+ }));
1096
+ const p_state_group = _ea.cc($['state group'], ($) => _edev.implement_me());
1097
+ const p_result = _ea.cc($['result'], ($) => (0, exports.r_Type_Reference)($, {
1098
+ 'location 2 string': l2s,
1099
+ 'parameters': ({
1100
+ 'lookups': ({
1101
+ 'types': _i_generic.dictionary_to_lookup(params['values']['types']['dictionary'], null),
1102
+ }),
1103
+ 'values': ({
1104
+ 'imports': params['values']['imports'],
1105
+ }),
1106
+ }),
1107
+ }));
1108
+ return ({
1109
+ 'property': p_property,
1110
+ 'result': p_result,
1111
+ 'state group': p_state_group,
1112
+ });
1113
+ });
1114
+ })]);
1115
+ default: return _ea.au($[0]);
1116
+ }
1117
+ });
1118
+ })]);
1119
+ default: return _ea.au($[0]);
1120
+ }
1121
+ });
1122
+ });
1123
+ exports.r_Possible_Value_Selection = r_Possible_Value_Selection;
1124
+ const r_Presence = ($, $p) => _ea.block(() => {
1125
+ const l2s = $p['location 2 string'];
1126
+ const params = $p['parameters'];
1127
+ return _ea.cc($['state group'], ($) => {
1128
+ switch ($[0]) {
1129
+ case 'optional': return _ea.ss($, ($) => ['optional', _ea.block(() => {
1130
+ return null;
1131
+ })]);
1132
+ case 'required': return _ea.ss($, ($) => ['required', _ea.block(() => {
1133
+ return null;
1134
+ })]);
1135
+ default: return _ea.au($[0]);
1136
+ }
1137
+ });
1138
+ });
1139
+ exports.r_Presence = r_Presence;
1140
+ const r_Property_Constraint = ($, $p) => _ea.block(() => {
1141
+ const l2s = $p['location 2 string'];
1142
+ const params = $p['parameters'];
1143
+ return _ea.block(() => {
1144
+ const p_start = _ea.cc($['start'], ($) => _ea.cc($['state group'], ($) => {
1145
+ switch ($[0]) {
1146
+ case 'property': return _ea.ss($, ($) => ['property', _ea.block(() => {
1147
+ return null;
1148
+ })]);
1149
+ case 'sibling': return _ea.ss($, ($) => ['sibling', _ea.block(() => {
1150
+ return (0, exports.r_Reference_To_Property_Constraint)($, {
1151
+ 'location 2 string': l2s,
1152
+ 'parameters': ({
1153
+ 'lookups': ({
1154
+ 'property constraints': params['lookups']['property constraints'],
1155
+ }),
1156
+ 'values': null,
1157
+ }),
1158
+ });
1159
+ })]);
1160
+ default: return _ea.au($[0]);
1161
+ }
1162
+ }));
1163
+ const p_constraint = _ea.cc($['constraint'], ($) => (0, exports.r_Constraint)($, {
1164
+ 'location 2 string': l2s,
1165
+ 'parameters': ({
1166
+ 'lookups': null,
1167
+ 'values': ({
1168
+ 'node': _edev.implement_me(),
1169
+ }),
1170
+ }),
1171
+ }));
1172
+ return ({
1173
+ 'constraint': p_constraint,
1174
+ 'start': p_start,
1175
+ });
1176
+ });
1177
+ });
1178
+ exports.r_Property_Constraint = r_Property_Constraint;
1179
+ const r_Property_Constraints = ($, $p) => _ea.block(() => {
1180
+ const l2s = $p['location 2 string'];
1181
+ const params = $p['parameters'];
1182
+ return _ea.block(() => {
1183
+ return _i_generic.resolve_ordered_dictionary($, {
1184
+ 'location 2 string': l2s,
1185
+ 'map': ($, $p) => _ea.block(() => {
1186
+ return _ea.cc($['value'], ($) => (0, exports.r_Property_Constraint)($, {
1187
+ 'location 2 string': l2s,
1188
+ 'parameters': ({
1189
+ 'lookups': ({
1190
+ 'property constraints': $p['not circular dependent siblings'],
1191
+ }),
1192
+ 'values': null,
1193
+ }),
1194
+ }));
1195
+ }),
1196
+ });
1197
+ });
1198
+ });
1199
+ exports.r_Property_Constraints = r_Property_Constraints;
1200
+ const r_Reference_To_Property_Constraint = ($, $p) => _ea.block(() => {
1201
+ const l2s = $p['location 2 string'];
1202
+ const params = $p['parameters'];
1203
+ return _i_generic.get_entry(params['lookups']['property constraints'], {
1204
+ 'location 2 string': l2s,
1205
+ 'reference': $,
1206
+ });
1207
+ });
1208
+ exports.r_Reference_To_Property_Constraint = r_Reference_To_Property_Constraint;
1209
+ const r_Relative_Value_Selection = ($, $p) => _ea.block(() => {
1210
+ const l2s = $p['location 2 string'];
1211
+ const params = $p['parameters'];
1212
+ return _ea.block(() => {
1213
+ const p_path = _ea.cc($['path'], ($) => $['list'].map(($) => _ea.cc($['element'], ($) => _ea.cc($['state group'], ($) => {
1214
+ switch ($[0]) {
1215
+ case 'component': return _ea.ss($, ($) => ['component', _ea.block(() => {
1216
+ const c_definition = _edev.implement_me();
1217
+ return null;
1218
+ })]);
1219
+ case 'group': return _ea.ss($, ($) => ['group', _ea.block(() => {
1220
+ const c_definition = _edev.implement_me();
1221
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(c_definition['dictionary'], null), {
1222
+ 'location 2 string': l2s,
1223
+ 'reference': $,
1224
+ });
1225
+ })]);
1226
+ case 'reference': return _ea.ss($, ($) => ['reference', _ea.block(() => {
1227
+ const c_definition = _edev.implement_me();
1228
+ return _ea.block(() => {
1229
+ const p_definition = _ea.cc($['definition'], ($) => c_definition);
1230
+ return ({
1231
+ 'definition': p_definition,
1232
+ });
1233
+ });
1234
+ })]);
1235
+ default: return _ea.au($[0]);
1236
+ }
1237
+ }))));
1238
+ const p_resulting_node = _ea.cc($['resulting node'], ($) => _edev.implement_me());
1239
+ return ({
1240
+ 'path': p_path,
1241
+ 'resulting node': p_resulting_node,
1242
+ });
1243
+ });
1244
+ });
1245
+ exports.r_Relative_Value_Selection = r_Relative_Value_Selection;
1246
+ const r_Resolve_Logic = ($, $p) => _ea.block(() => {
1247
+ const l2s = $p['location 2 string'];
1248
+ const params = $p['parameters'];
1249
+ return _ea.block(() => {
1250
+ const p_signatures = _ea.cc($['signatures'], ($) => _ea.block(() => {
1251
+ const p_types = _ea.cc($['types'], ($) => (0, exports.r_Signatures)($, {
1252
+ 'location 2 string': l2s,
1253
+ 'parameters': ({
1254
+ 'lookups': null,
1255
+ 'values': ({
1256
+ 'imports': params['values']['imports'],
1257
+ 'types': params['values']['types'],
1258
+ }),
1259
+ }),
1260
+ }));
1261
+ return ({
1262
+ 'types': p_types,
1263
+ });
1264
+ }));
1265
+ const p_resolvers = _ea.cc($['resolvers'], ($) => (0, exports.r_Resolvers)($, {
1266
+ 'location 2 string': l2s,
1267
+ 'parameters': ({
1268
+ 'lookups': null,
1269
+ 'values': ({
1270
+ 'imports': params['values']['imports'],
1271
+ 'signatures': p_signatures['types'],
1272
+ 'types': params['values']['types'],
1273
+ }),
1274
+ }),
1275
+ }));
1276
+ return ({
1277
+ 'resolvers': p_resolvers,
1278
+ 'signatures': p_signatures,
1279
+ });
1280
+ });
1281
+ });
1282
+ exports.r_Resolve_Logic = r_Resolve_Logic;
1283
+ const r_Resolvers = ($, $p) => _ea.block(() => {
1284
+ const l2s = $p['location 2 string'];
1285
+ const params = $p['parameters'];
1286
+ return _ea.block(() => {
1287
+ const benchmark = params['values']['signatures'];
1288
+ return _i_generic.resolve_ordered_dictionary($, {
1289
+ 'location 2 string': l2s,
1290
+ 'map': ($, $p) => _ea.block(() => {
1291
+ const linked_entry = _edev.implement_me();
1292
+ return _ea.cc($['value'], ($) => _ea.block(() => {
1293
+ const p_signature = _ea.cc($['signature'], ($) => linked_entry);
1294
+ const p_type_resolver = _ea.cc($['type resolver'], ($) => (0, exports.r_Node_Resolver)($, {
1295
+ 'location 2 string': l2s,
1296
+ 'parameters': ({
1297
+ 'lookups': ({
1298
+ 'parent sibling property resolvers': _ea.not_set(),
1299
+ 'sibling property resolvers': _ea.not_set(),
1300
+ }),
1301
+ 'values': ({
1302
+ 'current dictionary': _ea.not_set(),
1303
+ 'current ordered dictionary': _ea.not_set(),
1304
+ 'definition': linked_entry['type']['node'],
1305
+ 'imports': _ea.set(params['values']['imports']),
1306
+ 'linked entry': _ea.not_set(),
1307
+ 'list cursor': _ea.not_set(),
1308
+ 'option constraints': _ea.not_set(),
1309
+ 'signature': p_signature,
1310
+ 'signatures': params['values']['signatures'],
1311
+ 'types': params['values']['types'],
1312
+ }),
1313
+ }),
1314
+ }));
1315
+ return ({
1316
+ 'signature': p_signature,
1317
+ 'type resolver': p_type_resolver,
1318
+ });
1319
+ }));
1320
+ }),
1321
+ });
1322
+ });
1323
+ });
1324
+ exports.r_Resolvers = r_Resolvers;
1325
+ const r_Schema = ($, $p) => _ea.block(() => {
1326
+ const l2s = $p['location 2 string'];
1327
+ const params = $p['parameters'];
1328
+ return _ea.block(() => {
1329
+ const p_imports = _ea.cc($['imports'], ($) => (0, exports.r_Imports)($, {
1330
+ 'location 2 string': l2s,
1331
+ 'parameters': ({
1332
+ 'lookups': ({
1333
+ 'sibling schemas': params['lookups']['sibling schemas'],
1334
+ }),
1335
+ 'values': null,
1336
+ }),
1337
+ }));
1338
+ const p_globals = _ea.cc($['globals'], ($) => (0, exports.r_Globals)($, {
1339
+ 'location 2 string': l2s,
1340
+ 'parameters': ({
1341
+ 'lookups': null,
1342
+ 'values': null,
1343
+ }),
1344
+ }));
1345
+ const p_types = _ea.cc($['types'], ($) => (0, exports.r_Types)($, {
1346
+ 'location 2 string': l2s,
1347
+ 'parameters': ({
1348
+ 'lookups': null,
1349
+ 'values': ({
1350
+ 'globals': _ea.set(p_globals),
1351
+ 'imports': _ea.set(p_imports),
1352
+ }),
1353
+ }),
1354
+ }));
1355
+ const p_complexity = _ea.cc($['complexity'], ($) => _ea.cc($['state group'], ($) => {
1356
+ switch ($[0]) {
1357
+ case 'constrained': return _ea.ss($, ($) => ['constrained', _ea.block(() => {
1358
+ return (0, exports.r_Resolve_Logic)($, {
1359
+ 'location 2 string': l2s,
1360
+ 'parameters': ({
1361
+ 'lookups': null,
1362
+ 'values': ({
1363
+ 'imports': p_imports,
1364
+ 'types': p_types,
1365
+ }),
1366
+ }),
1367
+ });
1368
+ })]);
1369
+ case 'unconstrained': return _ea.ss($, ($) => ['unconstrained', _ea.block(() => {
1370
+ return null;
1371
+ })]);
1372
+ default: return _ea.au($[0]);
1373
+ }
1374
+ }));
1375
+ return ({
1376
+ 'complexity': p_complexity,
1377
+ 'globals': p_globals,
1378
+ 'imports': p_imports,
1379
+ 'types': p_types,
1380
+ });
1381
+ });
1382
+ });
1383
+ exports.r_Schema = r_Schema;
1384
+ const r_Schema_Tree = ($, $p) => _ea.block(() => {
1385
+ const l2s = $p['location 2 string'];
1386
+ const params = $p['parameters'];
1387
+ return _ea.cc($['state group'], ($) => {
1388
+ switch ($[0]) {
1389
+ case 'schema': return _ea.ss($, ($) => ['schema', _ea.block(() => {
1390
+ return (0, exports.r_Schema)($, {
1391
+ 'location 2 string': l2s,
1392
+ 'parameters': ({
1393
+ 'lookups': ({
1394
+ 'sibling schemas': params['lookups']['sibling schemas'],
1395
+ }),
1396
+ 'values': null,
1397
+ }),
1398
+ });
1399
+ })]);
1400
+ case 'set': return _ea.ss($, ($) => ['set', _ea.block(() => {
1401
+ return (0, exports.r_Schemas)($, {
1402
+ 'location 2 string': l2s,
1403
+ 'parameters': ({
1404
+ 'lookups': ({
1405
+ 'sibling schemas': params['lookups']['sibling schemas'],
1406
+ }),
1407
+ 'values': null,
1408
+ }),
1409
+ });
1410
+ })]);
1411
+ default: return _ea.au($[0]);
1412
+ }
1413
+ });
1414
+ });
1415
+ exports.r_Schema_Tree = r_Schema_Tree;
1416
+ const r_Schemas = ($, $p) => _ea.block(() => {
1417
+ const l2s = $p['location 2 string'];
1418
+ const params = $p['parameters'];
1419
+ return _ea.block(() => {
1420
+ return _i_generic.resolve_ordered_dictionary($, {
1421
+ 'location 2 string': l2s,
1422
+ 'map': ($, $p) => _ea.block(() => {
1423
+ return _ea.cc($['value'], ($) => (0, exports.r_Schema_Tree)($, {
1424
+ 'location 2 string': l2s,
1425
+ 'parameters': ({
1426
+ 'lookups': ({
1427
+ 'sibling schemas': _edev.implement_me(),
1428
+ }),
1429
+ 'values': null,
1430
+ }),
1431
+ }));
1432
+ }),
1433
+ });
1434
+ });
1435
+ });
1436
+ exports.r_Schemas = r_Schemas;
1437
+ const r_Signature = ($, $p) => _ea.block(() => {
1438
+ const l2s = $p['location 2 string'];
1439
+ const params = $p['parameters'];
1440
+ return _ea.block(() => {
1441
+ const p_type = _ea.cc($['type'], ($) => params['values']['type']);
1442
+ const p_parameters = _ea.cc($['parameters'], ($) => _ea.cc($['state group'], ($) => {
1443
+ switch ($[0]) {
1444
+ case 'local': return _ea.ss($, ($) => ['local', _ea.block(() => {
1445
+ return (0, exports.r_Signature_Parameters)($, {
1446
+ 'location 2 string': l2s,
1447
+ 'parameters': ({
1448
+ 'lookups': null,
1449
+ 'values': ({
1450
+ 'imports': params['values']['imports'],
1451
+ 'types': params['values']['types'],
1452
+ }),
1453
+ }),
1454
+ });
1455
+ })]);
1456
+ case 'same as': return _ea.ss($, ($) => ['same as', _ea.block(() => {
1457
+ return _i_generic.get_entry(params['lookups']['sibling signatures'], {
1458
+ 'location 2 string': l2s,
1459
+ 'reference': $,
1460
+ });
1461
+ })]);
1462
+ default: return _ea.au($[0]);
1463
+ }
1464
+ }));
1465
+ const p_resolved_parameters = _ea.cc($['resolved parameters'], ($) => _edev.implement_me());
1466
+ return ({
1467
+ 'parameters': p_parameters,
1468
+ 'resolved parameters': p_resolved_parameters,
1469
+ 'type': p_type,
1470
+ });
1471
+ });
1472
+ });
1473
+ exports.r_Signature = r_Signature;
1474
+ const r_Signature_Parameters = ($, $p) => _ea.block(() => {
1475
+ const l2s = $p['location 2 string'];
1476
+ const params = $p['parameters'];
1477
+ return _ea.block(() => {
1478
+ const p_values = _ea.cc($['values'], ($) => _ea.block(() => {
1479
+ return _i_generic.resolve_dictionary($, {
1480
+ 'location 2 string': l2s,
1481
+ 'map': ($, $p) => _ea.block(() => {
1482
+ return _ea.cc($['value'], ($) => _ea.block(() => {
1483
+ const p_data_type = _ea.cc($['data type'], ($) => (0, exports.r_Type_Reference)($, {
1484
+ 'location 2 string': l2s,
1485
+ 'parameters': ({
1486
+ 'lookups': ({
1487
+ 'types': _i_generic.dictionary_to_lookup(params['values']['types']['dictionary'], null),
1488
+ }),
1489
+ 'values': ({
1490
+ 'imports': _ea.set(params['values']['imports']),
1491
+ }),
1492
+ }),
1493
+ }));
1494
+ const p_presence = _ea.cc($['presence'], ($) => (0, exports.r_Presence)($, {
1495
+ 'location 2 string': l2s,
1496
+ 'parameters': ({
1497
+ 'lookups': null,
1498
+ 'values': null,
1499
+ }),
1500
+ }));
1501
+ return ({
1502
+ 'data type': p_data_type,
1503
+ 'presence': p_presence,
1504
+ });
1505
+ }));
1506
+ }),
1507
+ });
1508
+ }));
1509
+ const p_lookups = _ea.cc($['lookups'], ($) => _ea.block(() => {
1510
+ return _i_generic.resolve_dictionary($, {
1511
+ 'location 2 string': l2s,
1512
+ 'map': ($, $p) => _ea.block(() => {
1513
+ return _ea.cc($['value'], ($) => _ea.block(() => {
1514
+ const p_referent = _ea.cc($['referent'], ($) => (0, exports.r_Type_Reference)($, {
1515
+ 'location 2 string': l2s,
1516
+ 'parameters': ({
1517
+ 'lookups': ({
1518
+ 'types': _i_generic.dictionary_to_lookup(params['values']['types']['dictionary'], null),
1519
+ }),
1520
+ 'values': ({
1521
+ 'imports': _ea.set(params['values']['imports']),
1522
+ }),
1523
+ }),
1524
+ }));
1525
+ const p_dictionary = _ea.cc($['dictionary'], ($) => _edev.implement_me());
1526
+ const p_type = _ea.cc($['type'], ($) => _ea.cc($['state group'], ($) => {
1527
+ switch ($[0]) {
1528
+ case 'acyclic': return _ea.ss($, ($) => ['acyclic', _ea.block(() => {
1529
+ return null;
1530
+ })]);
1531
+ case 'cyclic': return _ea.ss($, ($) => ['cyclic', _ea.block(() => {
1532
+ return null;
1533
+ })]);
1534
+ case 'stack': return _ea.ss($, ($) => ['stack', _ea.block(() => {
1535
+ return null;
1536
+ })]);
1537
+ default: return _ea.au($[0]);
1538
+ }
1539
+ }));
1540
+ const p_presence = _ea.cc($['presence'], ($) => (0, exports.r_Presence)($, {
1541
+ 'location 2 string': l2s,
1542
+ 'parameters': ({
1543
+ 'lookups': null,
1544
+ 'values': null,
1545
+ }),
1546
+ }));
1547
+ return ({
1548
+ 'dictionary': p_dictionary,
1549
+ 'presence': p_presence,
1550
+ 'referent': p_referent,
1551
+ 'type': p_type,
1552
+ });
1553
+ }));
1554
+ }),
1555
+ });
1556
+ }));
1557
+ return ({
1558
+ 'lookups': p_lookups,
1559
+ 'values': p_values,
1560
+ });
1561
+ });
1562
+ });
1563
+ exports.r_Signature_Parameters = r_Signature_Parameters;
1564
+ const r_Signatures = ($, $p) => _ea.block(() => {
1565
+ const l2s = $p['location 2 string'];
1566
+ const params = $p['parameters'];
1567
+ return _ea.block(() => {
1568
+ const benchmark = params['values']['types'];
1569
+ return _i_generic.resolve_ordered_dictionary($, {
1570
+ 'location 2 string': l2s,
1571
+ 'map': ($, $p) => _ea.block(() => {
1572
+ const linked_entry = _edev.implement_me();
1573
+ return _ea.cc($['value'], ($) => (0, exports.r_Signature)($, {
1574
+ 'location 2 string': l2s,
1575
+ 'parameters': ({
1576
+ 'lookups': ({
1577
+ 'sibling signatures': $p['not circular dependent siblings'],
1578
+ }),
1579
+ 'values': ({
1580
+ 'imports': params['values']['imports'],
1581
+ 'type': linked_entry,
1582
+ 'types': params['values']['types'],
1583
+ }),
1584
+ }),
1585
+ }));
1586
+ }),
1587
+ });
1588
+ });
1589
+ });
1590
+ exports.r_Signatures = r_Signatures;
1591
+ const r_Text_Type = ($, $p) => _ea.block(() => {
1592
+ const l2s = $p['location 2 string'];
1593
+ const params = $p['parameters'];
1594
+ return _ea.block(() => {
1595
+ const p_type = _ea.cc($['type'], ($) => _ea.cc($['state group'], ($) => {
1596
+ switch ($[0]) {
1597
+ case 'multi line': return _ea.ss($, ($) => ['multi line', _ea.block(() => {
1598
+ return null;
1599
+ })]);
1600
+ case 'single line': return _ea.ss($, ($) => ['single line', _ea.block(() => {
1601
+ return null;
1602
+ })]);
1603
+ default: return _ea.au($[0]);
1604
+ }
1605
+ }));
1606
+ return ({
1607
+ 'type': p_type,
1608
+ });
1609
+ });
1610
+ });
1611
+ exports.r_Text_Type = r_Text_Type;
1612
+ const r_Type = ($, $p) => _ea.block(() => {
1613
+ const l2s = $p['location 2 string'];
1614
+ const params = $p['parameters'];
1615
+ return _ea.block(() => {
1616
+ const p_type_parameters = _ea.cc($['type parameters'], ($) => (0, exports.r_Type_Parameters)($, {
1617
+ 'location 2 string': l2s,
1618
+ 'parameters': ({
1619
+ 'lookups': null,
1620
+ 'values': null,
1621
+ }),
1622
+ }));
1623
+ const p_node = _ea.cc($['node'], ($) => (0, exports.r_Type_Node)($, {
1624
+ 'location 2 string': l2s,
1625
+ 'parameters': ({
1626
+ 'lookups': ({
1627
+ 'noncircular sibling types': params['lookups']['noncircular sibling types'],
1628
+ 'possibly circular dependent sibling types': params['lookups']['possibly circular dependent sibling types'],
1629
+ }),
1630
+ 'values': ({
1631
+ 'globals': params['values']['globals'],
1632
+ 'imports': params['values']['imports'],
1633
+ 'type parameters': p_type_parameters,
1634
+ }),
1635
+ }),
1636
+ }));
1637
+ return ({
1638
+ 'node': p_node,
1639
+ 'type parameters': p_type_parameters,
1640
+ });
1641
+ });
1642
+ });
1643
+ exports.r_Type = r_Type;
1644
+ const r_Type_Node = ($, $p) => _ea.block(() => {
1645
+ const l2s = $p['location 2 string'];
1646
+ const params = $p['parameters'];
1647
+ return _ea.cc($['state group'], ($) => {
1648
+ switch ($[0]) {
1649
+ case 'boolean': return _ea.ss($, ($) => ['boolean', _ea.block(() => {
1650
+ return null;
1651
+ })]);
1652
+ case 'component': return _ea.ss($, ($) => ['component', _ea.block(() => {
1653
+ return _ea.cc($['state group'], ($) => {
1654
+ switch ($[0]) {
1655
+ case 'external': return _ea.ss($, ($) => ['external', _ea.block(() => {
1656
+ const c_import = params['values']['imports'].transform(($) => $, () => _ea.deprecated_panic('ABORT SELECTION'));
1657
+ return _ea.block(() => {
1658
+ const p_import = _ea.cc($['import'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(c_import, null), {
1659
+ 'location 2 string': l2s,
1660
+ 'reference': $,
1661
+ }));
1662
+ const p_type = _ea.cc($['type'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(p_import['entry']['schema']['types']['dictionary'], null), {
1663
+ 'location 2 string': l2s,
1664
+ 'reference': $,
1665
+ }));
1666
+ return ({
1667
+ 'import': p_import,
1668
+ 'type': p_type,
1669
+ });
1670
+ });
1671
+ })]);
1672
+ case 'internal': return _ea.ss($, ($) => ['internal', _ea.block(() => {
1673
+ return _i_generic.get_entry(params['lookups']['noncircular sibling types'], {
1674
+ 'location 2 string': l2s,
1675
+ 'reference': $,
1676
+ });
1677
+ })]);
1678
+ case 'internal cyclic': return _ea.ss($, ($) => ['internal cyclic', _ea.block(() => {
1679
+ return _i_generic.get_possibly_circular_dependent_sibling_entry(params['lookups']['possibly circular dependent sibling types'], {
1680
+ 'location 2 string': l2s,
1681
+ 'reference': $,
1682
+ });
1683
+ })]);
1684
+ default: return _ea.au($[0]);
1685
+ }
1686
+ });
1687
+ })]);
1688
+ case 'dictionary': return _ea.ss($, ($) => ['dictionary', _ea.block(() => {
1689
+ return (0, exports.r_Dictionary)($, {
1690
+ 'location 2 string': l2s,
1691
+ 'parameters': ({
1692
+ 'lookups': ({
1693
+ 'noncircular sibling types': params['lookups']['noncircular sibling types'],
1694
+ 'possibly circular dependent sibling types': params['lookups']['possibly circular dependent sibling types'],
1695
+ }),
1696
+ 'values': ({
1697
+ 'globals': params['values']['globals'],
1698
+ 'imports': params['values']['imports'],
1699
+ 'type parameters': params['values']['type parameters'],
1700
+ }),
1701
+ }),
1702
+ });
1703
+ })]);
1704
+ case 'group': return _ea.ss($, ($) => ['group', _ea.block(() => {
1705
+ return (0, exports.r_Group)($, {
1706
+ 'location 2 string': l2s,
1707
+ 'parameters': ({
1708
+ 'lookups': ({
1709
+ 'noncircular sibling types': params['lookups']['noncircular sibling types'],
1710
+ 'possibly circular dependent sibling types': params['lookups']['possibly circular dependent sibling types'],
1711
+ }),
1712
+ 'values': ({
1713
+ 'globals': params['values']['globals'],
1714
+ 'imports': params['values']['imports'],
1715
+ 'type parameters': params['values']['type parameters'],
1716
+ }),
1717
+ }),
1718
+ });
1719
+ })]);
1720
+ case 'list': return _ea.ss($, ($) => ['list', _ea.block(() => {
1721
+ return _ea.block(() => {
1722
+ const p_node = _ea.cc($['node'], ($) => (0, exports.r_Type_Node)($, {
1723
+ 'location 2 string': l2s,
1724
+ 'parameters': ({
1725
+ 'lookups': params['lookups'],
1726
+ 'values': params['values'],
1727
+ }),
1728
+ }));
1729
+ return ({
1730
+ 'node': p_node,
1731
+ });
1732
+ });
1733
+ })]);
1734
+ case 'nothing': return _ea.ss($, ($) => ['nothing', _ea.block(() => {
1735
+ return null;
1736
+ })]);
1737
+ case 'number': return _ea.ss($, ($) => ['number', _ea.block(() => {
1738
+ return _ea.cc($['state group'], ($) => {
1739
+ switch ($[0]) {
1740
+ case 'global': return _ea.ss($, ($) => ['global', _ea.block(() => {
1741
+ const c_globals = params['values']['globals'].transform(($) => $, () => _ea.deprecated_panic('ABORT SELECTION'));
1742
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(c_globals['number types'], null), {
1743
+ 'location 2 string': l2s,
1744
+ 'reference': $,
1745
+ });
1746
+ })]);
1747
+ case 'local': return _ea.ss($, ($) => ['local', _ea.block(() => {
1748
+ return (0, exports.r_Number_Type)($, {
1749
+ 'location 2 string': l2s,
1750
+ 'parameters': ({
1751
+ 'lookups': null,
1752
+ 'values': null,
1753
+ }),
1754
+ });
1755
+ })]);
1756
+ default: return _ea.au($[0]);
1757
+ }
1758
+ });
1759
+ })]);
1760
+ case 'optional': return _ea.ss($, ($) => ['optional', _ea.block(() => {
1761
+ return (0, exports.r_Type_Node)($, {
1762
+ 'location 2 string': l2s,
1763
+ 'parameters': ({
1764
+ 'lookups': params['lookups'],
1765
+ 'values': params['values'],
1766
+ }),
1767
+ });
1768
+ })]);
1769
+ case 'reference': return _ea.ss($, ($) => ['reference', _ea.block(() => {
1770
+ return _ea.block(() => {
1771
+ const p_referent = _ea.cc($['referent'], ($) => (0, exports.r_Type_Node_Reference)($, {
1772
+ 'location 2 string': l2s,
1773
+ 'parameters': ({
1774
+ 'lookups': ({
1775
+ 'types': params['lookups']['noncircular sibling types'],
1776
+ }),
1777
+ 'values': ({
1778
+ 'imports': params['values']['imports'],
1779
+ }),
1780
+ }),
1781
+ }));
1782
+ const p_type = _ea.cc($['type'], ($) => _ea.cc($['state group'], ($) => {
1783
+ switch ($[0]) {
1784
+ case 'derived': return _ea.ss($, ($) => ['derived', _ea.block(() => {
1785
+ return null;
1786
+ })]);
1787
+ case 'selected': return _ea.ss($, ($) => ['selected', _ea.block(() => {
1788
+ const c_dictionary = _edev.implement_me();
1789
+ return _ea.block(() => {
1790
+ const p_dictionary = _ea.cc($['dictionary'], ($) => c_dictionary);
1791
+ const p_dependency = _ea.cc($['dependency'], ($) => _ea.cc($['state group'], ($) => {
1792
+ switch ($[0]) {
1793
+ case 'acyclic': return _ea.ss($, ($) => ['acyclic', _ea.block(() => {
1794
+ return null;
1795
+ })]);
1796
+ case 'cyclic': return _ea.ss($, ($) => ['cyclic', _ea.block(() => {
1797
+ return null;
1798
+ })]);
1799
+ case 'stack': return _ea.ss($, ($) => ['stack', _ea.block(() => {
1800
+ return null;
1801
+ })]);
1802
+ default: return _ea.au($[0]);
1803
+ }
1804
+ }));
1805
+ return ({
1806
+ 'dependency': p_dependency,
1807
+ 'dictionary': p_dictionary,
1808
+ });
1809
+ });
1810
+ })]);
1811
+ default: return _ea.au($[0]);
1812
+ }
1813
+ }));
1814
+ return ({
1815
+ 'referent': p_referent,
1816
+ 'type': p_type,
1817
+ });
1818
+ });
1819
+ })]);
1820
+ case 'state group': return _ea.ss($, ($) => ['state group', _ea.block(() => {
1821
+ return _ea.block(() => {
1822
+ return _i_generic.resolve_dictionary($, {
1823
+ 'location 2 string': l2s,
1824
+ 'map': ($, $p) => _ea.block(() => {
1825
+ return _ea.cc($['value'], ($) => _ea.block(() => {
1826
+ const p_node = _ea.cc($['node'], ($) => (0, exports.r_Type_Node)($, {
1827
+ 'location 2 string': l2s,
1828
+ 'parameters': ({
1829
+ 'lookups': params['lookups'],
1830
+ 'values': params['values'],
1831
+ }),
1832
+ }));
1833
+ const p_description = _ea.cc($['description'], ($) => $.map(($) => _ea.block(() => {
1834
+ return $;
1835
+ })));
1836
+ return ({
1837
+ 'description': p_description,
1838
+ 'node': p_node,
1839
+ });
1840
+ }));
1841
+ }),
1842
+ });
1843
+ });
1844
+ })]);
1845
+ case 'text': return _ea.ss($, ($) => ['text', _ea.block(() => {
1846
+ return _ea.cc($['state group'], ($) => {
1847
+ switch ($[0]) {
1848
+ case 'global': return _ea.ss($, ($) => ['global', _ea.block(() => {
1849
+ const c_globals = params['values']['globals'].transform(($) => $, () => _ea.deprecated_panic('ABORT SELECTION'));
1850
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(c_globals['text types'], null), {
1851
+ 'location 2 string': l2s,
1852
+ 'reference': $,
1853
+ });
1854
+ })]);
1855
+ case 'local': return _ea.ss($, ($) => ['local', _ea.block(() => {
1856
+ return (0, exports.r_Text_Type)($, {
1857
+ 'location 2 string': l2s,
1858
+ 'parameters': ({
1859
+ 'lookups': null,
1860
+ 'values': null,
1861
+ }),
1862
+ });
1863
+ })]);
1864
+ default: return _ea.au($[0]);
1865
+ }
1866
+ });
1867
+ })]);
1868
+ default: return _ea.au($[0]);
1869
+ }
1870
+ });
1871
+ });
1872
+ exports.r_Type_Node = r_Type_Node;
1873
+ const r_Type_Node_Reference = ($, $p) => _ea.block(() => {
1874
+ const l2s = $p['location 2 string'];
1875
+ const params = $p['parameters'];
1876
+ return _ea.block(() => {
1877
+ const p_type_location = _ea.cc($['type location'], ($) => (0, exports.r_Type_Reference)($, {
1878
+ 'location 2 string': l2s,
1879
+ 'parameters': ({
1880
+ 'lookups': params['lookups'],
1881
+ 'values': params['values'],
1882
+ }),
1883
+ }));
1884
+ const p_tail = _ea.cc($['tail'], ($) => $['list'].map(($) => _ea.cc($['element'], ($) => _ea.cc($['state group'], ($) => {
1885
+ switch ($[0]) {
1886
+ case 'dictionary': return _ea.ss($, ($) => ['dictionary', _ea.block(() => {
1887
+ const c_definition = _edev.implement_me();
1888
+ return null;
1889
+ })]);
1890
+ case 'group': return _ea.ss($, ($) => ['group', _ea.block(() => {
1891
+ const c_definition = _edev.implement_me();
1892
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(c_definition['dictionary'], null), {
1893
+ 'location 2 string': l2s,
1894
+ 'reference': $,
1895
+ });
1896
+ })]);
1897
+ case 'list': return _ea.ss($, ($) => ['list', _ea.block(() => {
1898
+ const c_definition = _edev.implement_me();
1899
+ return null;
1900
+ })]);
1901
+ case 'optional': return _ea.ss($, ($) => ['optional', _ea.block(() => {
1902
+ const c_definition = _edev.implement_me();
1903
+ return null;
1904
+ })]);
1905
+ case 'state group': return _ea.ss($, ($) => ['state group', _ea.block(() => {
1906
+ const c_definition = _edev.implement_me();
1907
+ return _i_generic.get_entry(_i_generic.dictionary_to_lookup(c_definition, null), {
1908
+ 'location 2 string': l2s,
1909
+ 'reference': $,
1910
+ });
1911
+ })]);
1912
+ default: return _ea.au($[0]);
1913
+ }
1914
+ }))));
1915
+ const p_resulting_node = _ea.cc($['resulting node'], ($) => _edev.implement_me());
1916
+ return ({
1917
+ 'resulting node': p_resulting_node,
1918
+ 'tail': p_tail,
1919
+ 'type location': p_type_location,
1920
+ });
1921
+ });
1922
+ });
1923
+ exports.r_Type_Node_Reference = r_Type_Node_Reference;
1924
+ const r_Type_Parameters = ($, $p) => _ea.block(() => {
1925
+ const l2s = $p['location 2 string'];
1926
+ const params = $p['parameters'];
1927
+ return _ea.block(() => {
1928
+ return _i_generic.resolve_dictionary($, {
1929
+ 'location 2 string': l2s,
1930
+ 'map': ($, $p) => _ea.block(() => {
1931
+ return _ea.cc($['value'], ($) => null);
1932
+ }),
1933
+ });
1934
+ });
1935
+ });
1936
+ exports.r_Type_Parameters = r_Type_Parameters;
1937
+ const r_Type_Reference = ($, $p) => _ea.block(() => {
1938
+ const l2s = $p['location 2 string'];
1939
+ const params = $p['parameters'];
1940
+ return _ea.block(() => {
1941
+ const p_location = _ea.cc($['location'], ($) => _ea.cc($['state group'], ($) => {
1942
+ switch ($[0]) {
1943
+ case 'external': return _ea.ss($, ($) => ['external', _ea.block(() => {
1944
+ const c_import = params['values']['imports'].transform(($) => $, () => _ea.deprecated_panic('ABORT SELECTION'));
1945
+ return _ea.block(() => {
1946
+ const p_import = _ea.cc($['import'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(c_import, null), {
1947
+ 'location 2 string': l2s,
1948
+ 'reference': $,
1949
+ }));
1950
+ const p_type = _ea.cc($['type'], ($) => _i_generic.get_entry(_i_generic.dictionary_to_lookup(p_import['entry']['schema']['types']['dictionary'], null), {
1951
+ 'location 2 string': l2s,
1952
+ 'reference': $,
1953
+ }));
1954
+ return ({
1955
+ 'import': p_import,
1956
+ 'type': p_type,
1957
+ });
1958
+ });
1959
+ })]);
1960
+ case 'internal': return _ea.ss($, ($) => ['internal', _ea.block(() => {
1961
+ return _i_generic.get_entry(params['lookups']['types'], {
1962
+ 'location 2 string': l2s,
1963
+ 'reference': $,
1964
+ });
1965
+ })]);
1966
+ default: return _ea.au($[0]);
1967
+ }
1968
+ }));
1969
+ const p_resulting_node = _ea.cc($['resulting node'], ($) => _edev.implement_me());
1970
+ return ({
1971
+ 'location': p_location,
1972
+ 'resulting node': p_resulting_node,
1973
+ });
1974
+ });
1975
+ });
1976
+ exports.r_Type_Reference = r_Type_Reference;
1977
+ const r_Type_Specification = ($, $p) => _ea.block(() => {
1978
+ const l2s = $p['location 2 string'];
1979
+ const params = $p['parameters'];
1980
+ return _ea.block(() => {
1981
+ const p_schema = _ea.cc($['schema'], ($) => (0, exports.r_Schema_Tree)($, {
1982
+ 'location 2 string': l2s,
1983
+ 'parameters': ({
1984
+ 'lookups': ({
1985
+ 'sibling schemas': _ea.array_literal([]),
1986
+ }),
1987
+ 'values': null,
1988
+ }),
1989
+ }));
1990
+ const p_schema_path = _ea.cc($['schema path'], ($) => $['list'].map(($) => _ea.cc($['element'], ($) => $)));
1991
+ const p_type = _ea.cc($['type'], ($) => $);
1992
+ return ({
1993
+ 'schema': p_schema,
1994
+ 'schema path': p_schema_path,
1995
+ 'type': p_type,
1996
+ });
1997
+ });
1998
+ });
1999
+ exports.r_Type_Specification = r_Type_Specification;
2000
+ const r_Types = ($, $p) => _ea.block(() => {
2001
+ const l2s = $p['location 2 string'];
2002
+ const params = $p['parameters'];
2003
+ return _ea.block(() => {
2004
+ return _i_generic.resolve_ordered_dictionary($, {
2005
+ 'location 2 string': l2s,
2006
+ 'map': ($, $p) => _ea.block(() => {
2007
+ return _ea.cc($['value'], ($) => (0, exports.r_Type)($, {
2008
+ 'location 2 string': l2s,
2009
+ 'parameters': ({
2010
+ 'lookups': ({
2011
+ 'noncircular sibling types': $p['not circular dependent siblings'],
2012
+ 'possibly circular dependent sibling types': $p['possibly circular dependent siblings'],
2013
+ }),
2014
+ 'values': ({
2015
+ 'globals': params['values']['globals'],
2016
+ 'imports': params['values']['imports'],
2017
+ }),
2018
+ }),
2019
+ }));
2020
+ }),
2021
+ });
2022
+ });
2023
+ });
2024
+ exports.r_Types = r_Types;
2025
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9nZW5lcmF0ZWQvcGFyZXRvL3NjaGVtYXMvc2NoZW1hL3Jlc29sdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzREFBdUM7QUFDdkMsd0RBQXlDO0FBRXpDLGtFQUFtRDtBQUs1QyxNQUFNLFdBQVcsR0FBK0IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtJQUM3RSxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtJQUNuQyxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDL0IsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtRQUNsQixNQUFNLFdBQVcsR0FBa0MsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUEsb0NBQTRCLEVBQ3pHLENBQUMsRUFDRDtZQUNJLG1CQUFtQixFQUFFLEdBQUc7WUFDeEIsWUFBWSxFQUFFLENBQUM7Z0JBQ1gsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUM7Z0JBQzVCLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDO2FBQzdCLENBQUM7U0FDTCxDQUNKLENBQUMsQ0FBQTtRQUNGLE1BQU0sc0JBQXNCLEdBQTZDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFBO1FBQ3ZJLE1BQU0sT0FBTyxHQUE4QixHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFP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