pareto 0.78.2 → 0.78.4

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 (159) hide show
  1. package/dist/bin/compile_temp_schemas.js +17 -14
  2. package/dist/bin/seal.js +7 -9
  3. package/dist/bin/serialize_schemas.js +7 -9
  4. package/dist/globals.d.ts +2 -0
  5. package/dist/implementation/commands/compile_temp_schemas.d.ts +19 -0
  6. package/dist/implementation/commands/compile_temp_schemas.js +131 -0
  7. package/dist/implementation/commands/seal.d.ts +8 -0
  8. package/dist/{bin/validate.js → implementation/commands/seal.js} +13 -7
  9. package/dist/implementation/commands/serialize_schemas.d.ts +8 -0
  10. package/dist/implementation/commands/serialize_schemas.js +61 -0
  11. package/dist/implementation/generated/pareto/generic/parse/ast.js +21 -21
  12. package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.d.ts +1 -1
  13. package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.js +1 -1
  14. package/dist/implementation/generated/pareto/generic/parse/parse.js +4 -3
  15. package/dist/implementation/generated/pareto/generic/parse/string_iterator.d.ts +1 -1
  16. package/dist/implementation/generated/pareto/generic/parse/string_iterator.js +4 -4
  17. package/dist/implementation/generated/pareto/generic/parse/token.js +5 -5
  18. package/dist/implementation/generated/pareto/generic/resolve.d.ts +4 -4
  19. package/dist/implementation/generated/pareto/generic/resolve.js +2 -2
  20. package/dist/implementation/generated/pareto/schemas/module/resolve.js +33 -33
  21. package/dist/implementation/generated/pareto/schemas/schema/resolve.js +2 -2
  22. package/dist/implementation/{algorithms/operations → operations}/impure/tbd/path.d.ts +1 -1
  23. package/dist/implementation/{algorithms/operations → operations}/impure/tbd/path.js +1 -1
  24. package/dist/implementation/{algorithms/queries/unguaranteed → queries}/load_pareto_document.d.ts +10 -7
  25. package/dist/implementation/queries/load_pareto_document.js +65 -0
  26. package/dist/implementation/{algorithms/queries/unguaranteed → queries}/load_pareto_file.d.ts +3 -5
  27. package/dist/implementation/queries/load_pareto_file.js +40 -0
  28. package/dist/{exceptional/deserializers → implementation/refiners}/load_schema.d.ts +1 -1
  29. package/dist/implementation/refiners/load_schema.js +83 -0
  30. package/dist/implementation/{algorithms/transformations → transformations}/module/exupery_implementation.d.ts +1 -1
  31. package/dist/implementation/{algorithms/transformations → transformations}/module/exupery_implementation.js +2 -2
  32. package/dist/implementation/{algorithms/transformations → transformations}/module/exupery_interface.d.ts +1 -1
  33. package/dist/implementation/{algorithms/transformations → transformations}/module/exupery_interface.js +1 -1
  34. package/dist/implementation/{algorithms/transformations → transformations}/module/temp_typescript_implementation.d.ts +1 -1
  35. package/dist/implementation/{algorithms/transformations → transformations}/module/temp_typescript_implementation.js +1 -1
  36. package/dist/implementation/{algorithms/transformations → transformations}/module/temp_typescript_interface.d.ts +1 -1
  37. package/dist/implementation/{algorithms/transformations → transformations}/module/temp_typescript_interface.js +1 -1
  38. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/deserialize.d.ts +2 -2
  39. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/deserialize.js +7 -7
  40. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/main.d.ts +3 -3
  41. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/main.js +1 -1
  42. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/marshall.d.ts +3 -3
  43. package/dist/implementation/transformations/schema/exupery_implementation/marshall.js +142 -0
  44. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/migrate_boilerplate.d.ts +2 -2
  45. package/dist/implementation/transformations/schema/exupery_implementation/migrate_boilerplate.js +105 -0
  46. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/resolve.d.ts +5 -5
  47. package/dist/implementation/transformations/schema/exupery_implementation/resolve.js +300 -0
  48. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/serialize.d.ts +2 -2
  49. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/serialize.js +7 -7
  50. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/unmarshall.d.ts +3 -3
  51. package/dist/implementation/transformations/schema/exupery_implementation/unmarshall.js +158 -0
  52. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/deserialize.d.ts +1 -1
  53. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/deserialize.js +1 -1
  54. package/dist/implementation/transformations/schema/exupery_interface/dummy_resolve.js +13 -0
  55. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/main.d.ts +1 -1
  56. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/main.js +1 -1
  57. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/marshall.d.ts +1 -1
  58. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/marshall.js +1 -1
  59. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/migrate_boilerplate.d.ts +1 -1
  60. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/migrate_boilerplate.js +1 -1
  61. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/resolve.d.ts +2 -2
  62. package/dist/implementation/transformations/schema/exupery_interface/resolve.js +110 -0
  63. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/serialize.d.ts +1 -1
  64. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/serialize.js +1 -1
  65. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/types.d.ts +1 -1
  66. package/dist/implementation/transformations/schema/exupery_interface/types.js +192 -0
  67. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/unmarshall.d.ts +1 -1
  68. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/unmarshall.js +1 -1
  69. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/value_deserializers.d.ts +1 -1
  70. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/value_deserializers.js +1 -1
  71. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/value_serializers.d.ts +1 -1
  72. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/value_serializers.js +1 -1
  73. package/dist/implementation/transformations/temp/astn_schema.d.ts +10 -0
  74. package/dist/implementation/transformations/temp/astn_schema.js +140 -0
  75. package/dist/implementation/{algorithms/transformations → transformations}/temp/unmarshall_astn_ast.d.ts +2 -2
  76. package/dist/implementation/{algorithms/transformations → transformations}/temp/unmarshall_astn_ast.js +2 -2
  77. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_errors/fountain_pen.d.ts +1 -1
  78. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_errors/fountain_pen.js +1 -1
  79. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_result/astn_authoring_target.d.ts +1 -1
  80. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_result/astn_authoring_target.js +1 -1
  81. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_result/unmarshall_errors.d.ts +2 -2
  82. package/dist/implementation/transformations/unmarshall_result/unmarshall_errors.js +344 -0
  83. package/dist/interface/algorithms/procedures/{unguaranteed/compile.js → compile.js} +1 -1
  84. package/dist/interface/algorithms/procedures/{unguaranteed/seal.js → seal.js} +1 -1
  85. package/dist/interface/algorithms/procedures/{unguaranteed/serialize_schemas.js → serialize_schemas.js} +1 -1
  86. package/dist/interface/algorithms/procedures/{unguaranteed/validate.js → validate.js} +1 -1
  87. package/dist/interface/algorithms/queries/load_pareto_document.js +5 -0
  88. package/dist/interface/algorithms/queries/{unguaranteed/load_pareto_file.js → load_pareto_file.js} +2 -2
  89. package/dist/interface/generated/pareto/core/astn_source.d.ts +3 -3
  90. package/dist/interface/generated/pareto/core/astn_target.d.ts +7 -7
  91. package/dist/interface/generated/pareto/core/parse_result.d.ts +1 -1
  92. package/dist/interface/generated/pareto/core/resolve.d.ts +2 -2
  93. package/dist/interface/generated/pareto/core/resolved.d.ts +12 -12
  94. package/dist/interface/generated/pareto/core/token.d.ts +3 -3
  95. package/dist/interface/generated/pareto/core/unconstrained.d.ts +3 -3
  96. package/dist/interface/generated/pareto/core/unresolved.d.ts +10 -10
  97. package/dist/interface/generated/pareto/schemas/astn_schema/data_types/resolve.d.ts +71 -71
  98. package/dist/interface/generated/pareto/schemas/parse_tree/data_types/source.d.ts +14 -14
  99. package/dist/interface/generated/pareto/schemas/parse_tree/data_types/target.d.ts +14 -14
  100. package/dist/interface/generated/pareto/schemas/schema/data_types/resolve.d.ts +428 -428
  101. package/dist/interface/generated/pareto/schemas/schema/data_types/source.d.ts +67 -67
  102. package/dist/interface/generated/pareto/schemas/schema/data_types/target.d.ts +67 -67
  103. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/console_error.d.ts +12 -0
  104. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/console_error.js +36 -0
  105. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/console_log.d.ts +12 -0
  106. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/console_log.js +36 -0
  107. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_directory.d.ts +12 -0
  108. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_directory.js +56 -0
  109. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_file.d.ts +10 -0
  110. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_file.js +45 -0
  111. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_node.d.ts +12 -0
  112. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_node.js +58 -0
  113. package/dist/modules/pareto-fountain-pen-directory/interface/temp_types.d.ts +30 -0
  114. package/dist/modules/pareto-fountain-pen-directory/interface/temp_types.js +3 -0
  115. package/dist/temp/resolvers/module.js +2 -2
  116. package/dist/temp/resolvers/schema.js +2 -2
  117. package/dist/temp/temp_unmashall_result_types.d.ts +4 -4
  118. package/dist/temp/temporary_schemas/astn/schemas/authoring_parse_tree/$.types.astn.js +10 -10
  119. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_directory/$.types.astn.js +5 -3
  120. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding_oude_model/$.types.astn.js +10 -5
  121. package/dist/temp/temporary_schemas/pareto-static-html/schema_tree.astn.js +3 -3
  122. package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.globals.astn.js +1 -1
  123. package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.module.astn.js +1 -1
  124. package/dist/temp/temporary_schemas/pareto-static-html/schemas/static-html/$.types.astn.js +84 -0
  125. package/package.json +9 -9
  126. package/dist/bin/validate.d.ts +0 -2
  127. package/dist/exceptional/deserializers/load_schema.js +0 -83
  128. package/dist/implementation/algorithms/procedures/unguaranteed/compile_temp_schemas.d.ts +0 -19
  129. package/dist/implementation/algorithms/procedures/unguaranteed/compile_temp_schemas.js +0 -148
  130. package/dist/implementation/algorithms/procedures/unguaranteed/seal.d.ts +0 -9
  131. package/dist/implementation/algorithms/procedures/unguaranteed/seal.js +0 -41
  132. package/dist/implementation/algorithms/procedures/unguaranteed/serialize_schemas.d.ts +0 -9
  133. package/dist/implementation/algorithms/procedures/unguaranteed/serialize_schemas.js +0 -60
  134. package/dist/implementation/algorithms/procedures/unguaranteed/validate.d.ts +0 -4
  135. package/dist/implementation/algorithms/procedures/unguaranteed/validate.js +0 -45
  136. package/dist/implementation/algorithms/queries/unguaranteed/load_pareto_document.js +0 -74
  137. package/dist/implementation/algorithms/queries/unguaranteed/load_pareto_file.js +0 -17
  138. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/marshall.js +0 -142
  139. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/migrate_boilerplate.js +0 -105
  140. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/resolve.js +0 -300
  141. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/unmarshall.js +0 -158
  142. package/dist/implementation/algorithms/transformations/schema/exupery_interface/dummy_resolve.js +0 -13
  143. package/dist/implementation/algorithms/transformations/schema/exupery_interface/resolve.js +0 -110
  144. package/dist/implementation/algorithms/transformations/schema/exupery_interface/types.js +0 -192
  145. package/dist/implementation/algorithms/transformations/temp/astn_schema.d.ts +0 -10
  146. package/dist/implementation/algorithms/transformations/temp/astn_schema.js +0 -140
  147. package/dist/implementation/algorithms/transformations/unmarshall_result/unmarshall_errors.js +0 -344
  148. package/dist/interface/algorithms/queries/unguaranteed/load_pareto_document.js +0 -5
  149. package/dist/temp/temporary_schemas/pareto-static-html/schemas/html-print/$.types.astn.js +0 -81
  150. /package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/dummy_resolve.d.ts +0 -0
  151. /package/dist/interface/algorithms/procedures/{unguaranteed/compile.d.ts → compile.d.ts} +0 -0
  152. /package/dist/interface/algorithms/procedures/{unguaranteed/seal.d.ts → seal.d.ts} +0 -0
  153. /package/dist/interface/algorithms/procedures/{unguaranteed/serialize_schemas.d.ts → serialize_schemas.d.ts} +0 -0
  154. /package/dist/interface/algorithms/procedures/{unguaranteed/validate.d.ts → validate.d.ts} +0 -0
  155. /package/dist/interface/algorithms/queries/{unguaranteed/load_pareto_document.d.ts → load_pareto_document.d.ts} +0 -0
  156. /package/dist/interface/algorithms/queries/{unguaranteed/load_pareto_file.d.ts → load_pareto_file.d.ts} +0 -0
  157. /package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.globals.astn.d.ts +0 -0
  158. /package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.module.astn.d.ts +0 -0
  159. /package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.types.astn.d.ts +0 -0
@@ -0,0 +1,300 @@
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.Node_Resolver = exports.Option_Constraints = exports.Lookup_Selection = exports.Guaranteed_Value_Selection = exports.Optional_Value_Initialization = exports.Possible_Value_Selection = exports.Resolvers = void 0;
27
+ const _ea = __importStar(require("exupery-core-alg"));
28
+ const implementation_1 = require("exupery/dist/shorthands/implementation");
29
+ const interface_1 = require("exupery/dist/shorthands/interface");
30
+ const flatten_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/list/flatten");
31
+ const flatten_2 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/dictionary/flatten");
32
+ const pad_identifiers_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/dictionary/pad_identifiers");
33
+ const append_element_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/list/append_element");
34
+ const Resolvers = ($, $p) => {
35
+ return implementation_1.m.module((0, flatten_2.$$)(_ea.dictionary_literal({
36
+ "": _ea.dictionary_literal({
37
+ "generic": interface_1.import_.ancestor(2, "generic", ["resolve"], {}),
38
+ "out": interface_1.import_.ancestor(5, "interface", (0, flatten_1.$$)(_ea.list_literal([
39
+ _ea.list_literal(["generated", "pareto", "schemas"]),
40
+ $p.path,
41
+ _ea.list_literal(["data types", "source"]),
42
+ ])), {}),
43
+ "signatures": interface_1.import_.ancestor(5, "interface", (0, flatten_1.$$)(_ea.list_literal([
44
+ _ea.list_literal(["generated", "pareto", "schemas"]),
45
+ $p.path,
46
+ _ea.list_literal(["data types", "resolve"]),
47
+ ])), {}),
48
+ }),
49
+ "r ": $p.imports.map(($, key) => interface_1.import_.ancestor(1, $['schema set child'].key, ["resolve"], {}))
50
+ }), {
51
+ 'separator': "",
52
+ }), {}, (0, pad_identifiers_1.$$)($.dictionary.map(($, key) => (0, implementation_1.variable)(interface_1.t.component_imported("signatures", key, {
53
+ // "Source": t.component_imported("generic", "Location Info", {}, []),
54
+ }, []), implementation_1.i.function_(true, implementation_1.i.block([], {
55
+ "l2s": (0, implementation_1.variable)(null, implementation_1.i.select_from_parameter("location 2 string", [])),
56
+ "params": (0, implementation_1.variable)(null, implementation_1.i.select_from_parameter("parameters", []))
57
+ }, (0, exports.Node_Resolver)($['type resolver'], {
58
+ 'temp type': key,
59
+ 'temp subselection': _ea.list_literal([])
60
+ }))))), {
61
+ 'prefix': "r ",
62
+ 'suffix': "",
63
+ }));
64
+ };
65
+ exports.Resolvers = Resolvers;
66
+ const Possible_Value_Selection = ($, $p) => {
67
+ return _ea.cc($, ($) => {
68
+ switch ($[0]) {
69
+ case 'parameter': return _ea.ss($, ($) => implementation_1.s.from_variable("params", (0, flatten_1.$$)(_ea.list_literal([
70
+ _ea.list_literal(["values", $.key]),
71
+ $p.tail(),
72
+ ]))));
73
+ case 'result': return _ea.ss($, ($) => _ea.cc($, ($) => {
74
+ switch ($[0]) {
75
+ case 'state group': return _ea.ss($, ($) => implementation_1.s.implement_me()); //quite some work
76
+ case 'optional value': return _ea.ss($, ($) => implementation_1.s.implement_me()); //quite some work
77
+ default: return _ea.au($[0]);
78
+ }
79
+ }));
80
+ default: return _ea.au($[0]);
81
+ }
82
+ });
83
+ };
84
+ exports.Possible_Value_Selection = Possible_Value_Selection;
85
+ const Optional_Value_Initialization = ($, $p) => {
86
+ return _ea.cc($, ($) => {
87
+ switch ($[0]) {
88
+ case 'not set': return _ea.ss($, ($) => implementation_1.i.not_set());
89
+ case 'selection': return _ea.ss($, ($) => implementation_1.i.select((0, exports.Possible_Value_Selection)($, { 'tail': () => _ea.list_literal([]) })));
90
+ case 'set': return _ea.ss($, ($) => implementation_1.i.set(implementation_1.i.select((0, exports.Guaranteed_Value_Selection)($, { 'tail': () => _ea.list_literal([]) }))));
91
+ default: return _ea.au($[0]);
92
+ }
93
+ });
94
+ };
95
+ exports.Optional_Value_Initialization = Optional_Value_Initialization;
96
+ const Guaranteed_Value_Selection = ($, $p) => {
97
+ const tail = () => {
98
+ return (0, flatten_1.$$)(_ea.list_literal([
99
+ (0, flatten_1.$$)($.tail.path.map(($) => {
100
+ return _ea.cc($, ($) => {
101
+ switch ($[0]) {
102
+ case 'component': return _ea.ss($, ($) => _ea.list_literal([]));
103
+ case 'group': return _ea.ss($, ($) => _ea.list_literal([$.key]));
104
+ case 'reference': return _ea.ss($, ($) => _ea.cc($.definition.type, ($) => {
105
+ switch ($[0]) {
106
+ case 'derived': return _ea.ss($, ($) => _ea.list_literal([]));
107
+ case 'selected': return _ea.ss($, ($) => _ea.list_literal(["entry"]));
108
+ default: return _ea.au($[0]);
109
+ }
110
+ }));
111
+ default: return _ea.au($[0]);
112
+ }
113
+ });
114
+ })),
115
+ $p.tail()
116
+ ]));
117
+ };
118
+ return _ea.cc($.start, ($) => {
119
+ switch ($[0]) {
120
+ case 'constraint': return _ea.ss($, ($) => _ea.cc($, ($) => {
121
+ switch ($[0]) {
122
+ case 'component': return _ea.ss($, ($) => implementation_1.s.implement_me()); //simple
123
+ case 'reference': return _ea.ss($, ($) => implementation_1.s.implement_me()); //simple
124
+ default: return _ea.au($[0]);
125
+ }
126
+ }));
127
+ case 'parameter': return _ea.ss($, ($) => implementation_1.s.from_variable("params", (0, flatten_1.$$)(_ea.list_literal([
128
+ _ea.list_literal(["values", $.key]),
129
+ tail(),
130
+ ]))));
131
+ case 'result': return _ea.ss($, ($) => _ea.cc($, ($) => {
132
+ switch ($[0]) {
133
+ case 'state group': return _ea.ss($, ($) => implementation_1.s.implement_me()); // quite some work
134
+ case 'optional value': return _ea.ss($, ($) => implementation_1.s.implement_me()); // quite some work
135
+ case 'list': return _ea.ss($, ($) => implementation_1.s.implement_me()); // quite some work
136
+ default: return _ea.au($[0]);
137
+ }
138
+ }));
139
+ case 'list cursor': return _ea.ss($, ($) => implementation_1.s.from_variable("list cursor", tail()));
140
+ case 'linked entry': return _ea.ss($, ($) => implementation_1.s.from_variable("linked entry", tail()));
141
+ case 'option constraint': return _ea.ss($, ($) => implementation_1.s.from_variable(`c ${$.key}`, //FIXME: do the upsteps
142
+ tail()));
143
+ case 'sibling': return _ea.ss($, ($) => implementation_1.s.from_variable(`p ${$.key}`, tail()));
144
+ case 'parent sibling': return _ea.ss($, ($) => implementation_1.s.from_variable(`p ${$.key}`, //FIXME: do the upstep
145
+ tail()));
146
+ default: return _ea.au($[0]);
147
+ }
148
+ });
149
+ };
150
+ exports.Guaranteed_Value_Selection = Guaranteed_Value_Selection;
151
+ const Lookup_Selection = ($, $p) => {
152
+ return _ea.cc($.type, ($) => {
153
+ switch ($[0]) {
154
+ case 'dictionary': return _ea.ss($, ($) => implementation_1.s.call(implementation_1.s.from_variable_import(" i generic", "dictionary to lookup", []), (0, exports.Guaranteed_Value_Selection)($.selection, {
155
+ 'tail': () => $['selected dictionary'].ordered
156
+ ? _ea.list_literal(["dictionary"])
157
+ : _ea.list_literal([]),
158
+ }), {}, []));
159
+ case 'not circular dependent siblings': return _ea.ss($, ($) => implementation_1.s.from_parameter("not circular dependent siblings", []));
160
+ case 'parameter': return _ea.ss($, ($) => implementation_1.s.from_variable("params", ["lookups", $.key]));
161
+ case 'possibly circular dependent siblings': return _ea.ss($, ($) => implementation_1.s.from_parameter("possibly circular dependent siblings", []));
162
+ default: return _ea.au($[0]);
163
+ }
164
+ });
165
+ };
166
+ exports.Lookup_Selection = Lookup_Selection;
167
+ const Option_Constraints = ($, $p) => {
168
+ return implementation_1.i.block([], (0, pad_identifiers_1.$$)($, { 'prefix': "c ", 'suffix': "" }).map(($) => (0, implementation_1.variable)(null, implementation_1.i.select(_ea.cc($, ($) => {
169
+ switch ($[0]) {
170
+ case 'state': return _ea.ss($, ($) => implementation_1.s.implement_me()); // medium work
171
+ case 'assert is set': return _ea.ss($, ($) => implementation_1.s.optional_transform((0, exports.Possible_Value_Selection)($, { 'tail': () => _ea.list_literal([]) }), implementation_1.s.from_context([]), implementation_1.s.abort(), []));
172
+ default: return _ea.au($[0]);
173
+ }
174
+ })))), $p.sub());
175
+ };
176
+ exports.Option_Constraints = Option_Constraints;
177
+ const Node_Resolver = ($, $p) => {
178
+ return _ea.cc($, ($) => {
179
+ switch ($[0]) {
180
+ case 'number': return _ea.ss($, ($) => implementation_1.i.select_from_context([]));
181
+ case 'boolean': return _ea.ss($, ($) => implementation_1.i.select_from_context([]));
182
+ case 'nothing': return _ea.ss($, ($) => implementation_1.i.null_());
183
+ case 'reference': return _ea.ss($, ($) => {
184
+ return implementation_1.i.select(_ea.cc($.type, ($) => {
185
+ switch ($[0]) {
186
+ case 'derived': return _ea.ss($, ($) => (0, exports.Guaranteed_Value_Selection)($.value, { 'tail': () => _ea.list_literal([]) }));
187
+ case 'selected': return _ea.ss($, ($) => {
188
+ const context = $;
189
+ return _ea.cc($.definition.dependency, ($) => {
190
+ switch ($[0]) {
191
+ case 'acyclic': return _ea.ss($, ($) => implementation_1.s.call(implementation_1.s.from_variable_import(" i generic", "get entry", []), (0, exports.Lookup_Selection)(context.lookup, {}), {
192
+ "reference": implementation_1.i.select_from_context([]),
193
+ "location 2 string": implementation_1.i.select_from_variable("l2s", []),
194
+ }, []));
195
+ case 'cyclic': return _ea.ss($, ($) => implementation_1.s.call(implementation_1.s.from_variable_import(" i generic", "get possibly circular dependent sibling entry", []), (0, exports.Lookup_Selection)(context.lookup, {}), {
196
+ "reference": implementation_1.i.select_from_context([]),
197
+ "location 2 string": implementation_1.i.select_from_variable("l2s", []),
198
+ }, []));
199
+ case 'stack': return _ea.ss($, ($) => implementation_1.s.call(implementation_1.s.from_variable_import(" i generic", "get entry from stack", []), (0, exports.Lookup_Selection)(context.lookup, {}), {
200
+ "reference": implementation_1.i.select_from_context([]),
201
+ "location 2 string": implementation_1.i.select_from_variable("l2s", []),
202
+ }, []));
203
+ default: return _ea.au($[0]);
204
+ }
205
+ });
206
+ });
207
+ default: return _ea.au($[0]);
208
+ }
209
+ }));
210
+ });
211
+ case 'text': return _ea.ss($, ($) => implementation_1.i.select_from_context([]));
212
+ case 'component': return _ea.ss($, ($) => implementation_1.i.call(_ea.cc($.location, ($) => {
213
+ switch ($[0]) {
214
+ case 'external': return _ea.ss($, ($) => implementation_1.s.from_variable_import(` i r ${$.import.key}`, `r ${$.type.key}`, []));
215
+ case 'internal': return _ea.ss($, ($) => implementation_1.s.from_variable(`r ${$.key}`, []));
216
+ default: return _ea.au($[0]);
217
+ }
218
+ }), implementation_1.i.select_from_context([]), {
219
+ "location 2 string": implementation_1.i.select_from_variable("l2s", []),
220
+ "parameters": $.arguments.transform(($) => implementation_1.i.group({
221
+ "values": $.values.transform(($) => implementation_1.i.group($.map(($) => _ea.cc($, ($) => {
222
+ switch ($[0]) {
223
+ case 'optional': return _ea.ss($, ($) => (0, exports.Optional_Value_Initialization)($, null));
224
+ case 'parameter': return _ea.ss($, ($) => implementation_1.i.select_from_variable("params", ["values", $.key]));
225
+ case 'required': return _ea.ss($, ($) => implementation_1.i.select((0, exports.Guaranteed_Value_Selection)($, { 'tail': () => _ea.list_literal([]) })));
226
+ default: return _ea.au($[0]);
227
+ }
228
+ }))), () => implementation_1.i.select_from_variable("params", ["values"])),
229
+ "lookups": $.lookups.transform(($) => implementation_1.i.group($.map(($) => _ea.cc($, ($) => {
230
+ switch ($[0]) {
231
+ case 'empty stack': return _ea.ss($, ($) => implementation_1.i.list_literal([]));
232
+ case 'not set': return _ea.ss($, ($) => implementation_1.i.not_set());
233
+ case 'selection': return _ea.ss($, ($) => implementation_1.i.select((0, exports.Lookup_Selection)($, {})));
234
+ case 'stack': return _ea.ss($, ($) => implementation_1.i.implement_me()); // quite some work
235
+ default: return _ea.au($[0]);
236
+ }
237
+ }))), () => implementation_1.i.select_from_variable("params", ["lookups"])),
238
+ }), () => implementation_1.i.select_from_variable("params", []))
239
+ }));
240
+ case 'dictionary': return _ea.ss($, ($) => implementation_1.i.block([], $.benchmark.transform(($) => _ea.dictionary_literal({
241
+ // "linked entry": e.call(
242
+ // s.from_context([]), //Value_Selection($.selection, { 'tail': pa.list_literal([]) }),
243
+ // e.string("FIXME", 'backtick'),
244
+ // ),
245
+ "benchmark": (0, implementation_1.variable)(null, implementation_1.i.select((0, exports.Guaranteed_Value_Selection)($.selection, { 'tail': () => _ea.list_literal([]) }))),
246
+ }), () => _ea.dictionary_literal({})), implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", $.definition.ordered ? "resolve ordered dictionary" : "resolve dictionary", []), implementation_1.i.select_from_context([]), {
247
+ //"denseness benchmark": e.not_set(),
248
+ "map": implementation_1.i.function_(true, implementation_1.i.block([], $.benchmark.transform(($) => _ea.dictionary_literal({
249
+ // "linked entry": e.call(
250
+ // s.from_context([]), //Value_Selection($.selection, { 'tail': pa.list_literal([]) }),
251
+ // e.string("FIXME", 'backtick'),
252
+ // ),
253
+ "linked entry": (0, implementation_1.variable)(null, implementation_1.i.implement_me()), // quite some work; a call to __get_entry() from the selection (Guaranteed_Value_Selection), and then transform an optional value
254
+ }), () => _ea.dictionary_literal({})), implementation_1.i.change_context(implementation_1.s.from_context(["value"]), (0, exports.Node_Resolver)($.resolver, {
255
+ 'temp type': $p['temp type'],
256
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
257
+ 'element': interface_1.sub.dictionary(),
258
+ }),
259
+ })))),
260
+ "location 2 string": implementation_1.i.select_from_variable("l2s", []),
261
+ })));
262
+ case 'group': return _ea.ss($, ($) => implementation_1.i.block($['ordered list'].map(($) => (0, implementation_1.temp_ordered_variable)(`p ${$.key}`, interface_1.t.component_imported("out", $p['temp type'], {}, (0, append_element_1.$$)($p['temp subselection'], {
263
+ 'element': interface_1.sub.group($.key),
264
+ })), implementation_1.i.change_context(implementation_1.s.from_context([$.key]), (0, exports.Node_Resolver)($.value.resolver, {
265
+ 'temp type': $p['temp type'],
266
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
267
+ 'element': interface_1.sub.group($.key),
268
+ }),
269
+ })))), {}, implementation_1.i.group($.dictionary.map(($, key) => implementation_1.i.select_from_variable(`p ${key}`, [])))));
270
+ case 'list': return _ea.ss($, ($) => {
271
+ return implementation_1.i.array_map(implementation_1.s.from_context(["list"]), implementation_1.i.change_context(implementation_1.s.from_context(["element"]), (0, exports.Node_Resolver)($.resolver, {
272
+ 'temp type': $p['temp type'],
273
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
274
+ 'element': interface_1.sub.list(),
275
+ }),
276
+ })));
277
+ });
278
+ case 'optional': return _ea.ss($, ($) => implementation_1.i.optional_map(implementation_1.s.from_context([]), (0, exports.Option_Constraints)($.constraints, {
279
+ 'sub': () => (0, exports.Node_Resolver)($['resolver'], {
280
+ 'temp type': $p['temp type'],
281
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
282
+ 'element': interface_1.sub.optional(),
283
+ }),
284
+ })
285
+ })));
286
+ case 'state group': return _ea.ss($, ($) => implementation_1.i.switch_(implementation_1.s.from_context(['state group']), $.states.map(($, key) => implementation_1.i.case_(key, (0, exports.Option_Constraints)($.constraints, {
287
+ 'sub': () => (0, exports.Node_Resolver)($['resolver'], {
288
+ 'temp type': $p['temp type'],
289
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
290
+ 'element': interface_1.sub.state_group(key),
291
+ }),
292
+ })
293
+ }))), interface_1.t.component_imported("out", $p['temp type'], {}, $p['temp subselection'])));
294
+ // case 'type parameter': return _ea.ss($, ($) => _edev.implement_me()) // a lot of work: the resolvers need to be passed to this resolve function
295
+ default: return _ea.au($[0]);
296
+ }
297
+ });
298
+ };
299
+ exports.Node_Resolver = Node_Resolver;
300
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi90cmFuc2Zvcm1hdGlvbnMvc2NoZW1hL2V4dXBlcnlfaW1wbGVtZW50YXRpb24vcmVzb2x2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLHNEQUF1QztBQU92QywyRUFBaUc7QUFDakcsaUVBQTBFO0FBRTFFLG9IQUE4SDtBQUM5SCwwSEFBMEk7QUFFMUksMElBQTBKO0FBQzFKLGtJQUF1STtBQUloSSxNQUFNLFNBQVMsR0FBRyxDQUNyQixDQUFnQixFQUNoQixFQUdDLEVBQ3dDLEVBQUU7SUFDM0MsT0FBTyxrQkFBQyxDQUFDLE1BQU0sQ0FDWCxJQUFBLFlBQXFCLEVBQ2pCLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQztRQUNuQixFQUFFLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDO1lBQ3ZCLFNBQVMsRUFBRSxtQkFBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzFELEtBQUssRUFBRSxtQkFBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLElBQUEsWUFBZSxFQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUM7Z0JBQ3JFLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUNwRCxFQUFFLENBQUMsSUFBSTtnQkFDUCxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQzdDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLFlBQVksRUFBRSxtQkFBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLElBQUEsWUFBZSxFQUFDLEdBQUcsQ0FBQyxZQUFZLENB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
@@ -1,9 +1,9 @@
1
1
  import * as _edata from 'exupery-core-data';
2
2
  import * as _et from 'exupery-core-types';
3
- import * as _in from "../../../../../interface/generated/pareto/schemas/schema/data_types/source";
3
+ import * as _in from "../../../../interface/generated/pareto/schemas/schema/data_types/source";
4
4
  import * as _out from "exupery/dist/interface/generated/pareto/schemas/implementation/data_types/target";
5
5
  export declare const Schema: ($: _in.Schema, $p: {
6
- "path": _et.Array<string>;
6
+ "path": _et.List<string>;
7
7
  "imports": _in.Imports;
8
8
  "constrained": boolean;
9
9
  }) => _out.Module_Set.D<_edata.Source_Location>;
@@ -32,15 +32,15 @@ const flatten_2 = require("pareto-standard-operations/dist/implementation/algori
32
32
  const Schema = ($, $p) => {
33
33
  return implementation_1.m.module((0, flatten_1.$$)(_ea.dictionary_literal({
34
34
  "": _ea.dictionary_literal({
35
- "signatures": interface_1.import_.ancestor(5, "interface", (0, flatten_2.$$)(_ea.array_literal([
36
- _ea.array_literal(["generated", "pareto", "schemas"]),
35
+ "signatures": interface_1.import_.ancestor(5, "interface", (0, flatten_2.$$)(_ea.list_literal([
36
+ _ea.list_literal(["generated", "pareto", "schemas"]),
37
37
  $p.path,
38
- _ea.array_literal(["serialize"])
38
+ _ea.list_literal(["serialize"])
39
39
  ])), {}),
40
- "serialize": interface_1.import_.ancestor(2, "generic", (0, flatten_2.$$)(_ea.array_literal([
41
- _ea.array_literal(["serialize"]),
40
+ "serialize": interface_1.import_.ancestor(2, "generic", (0, flatten_2.$$)(_ea.list_literal([
41
+ _ea.list_literal(["serialize"]),
42
42
  ])), {}),
43
- "marshall": interface_1.import_.sibling("marshall", (0, flatten_2.$$)(_ea.array_literal([])), {}),
43
+ "marshall": interface_1.import_.sibling("marshall", (0, flatten_2.$$)(_ea.list_literal([])), {}),
44
44
  }),
45
45
  "r ": $p.imports.map(($, key) => interface_1.import_.ancestor(1, $['schema set child'].key, ["serialize"], {}))
46
46
  }), {
@@ -50,4 +50,4 @@ const Schema = ($, $p) => {
50
50
  }))))));
51
51
  };
52
52
  exports.Schema = Schema;
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL2FsZ29yaXRobXMvdHJhbnNmb3JtYXRpb25zL3NjaGVtYS9leHVwZXJ5X2ltcGxlbWVudGF0aW9uL3NlcmlhbGl6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLHNEQUF1QztBQU92QywyRUFBMEU7QUFDMUUsaUVBQW1FO0FBR25FLDBIQUEwSTtBQUMxSSxvSEFBOEg7QUFLdkgsTUFBTSxNQUFNLEdBQUcsQ0FDbEIsQ0FBYSxFQUNiLEVBSUMsRUFDd0MsRUFBRTtJQUMzQyxPQUFPLGtCQUFDLENBQUMsTUFBTSxDQUNYLElBQUEsWUFBcUIsRUFDakIsR0FBRyxDQUFDLGtCQUFrQixDQUFDO1FBQ25CLEVBQUUsRUFBRSxHQUFHLENBQUMsa0JBQWtCLENBQUM7WUFDdkIsWUFBWSxFQUFFLG1CQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsSUFBQSxZQUFlLEVBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQztnQkFDN0UsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7Z0JBQ3JELEVBQUUsQ0FBQyxJQUFJO2dCQUNQLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUNuQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDUixXQUFXLEVBQUUsbUJBQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxJQUFBLFlBQWUsRUFBQyxHQUFHLENBQUMsYUFBYSxDQUFDO2dCQUMxRSxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDbkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsVUFBVSxFQUFFLG1CQUFPLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxJQUFBLFlBQWUsRUFBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEVBQ3pFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztTQUNYLENBQUM7UUFDRixJQUFJLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxtQkFBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDdEcsQ0FBQyxFQUNGO1FBQ0ksV0FBVyxFQUFFLEVBQUU7S0FDbEIsQ0FDSixFQUNELEVBQUUsRUFDRixDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFBLHlCQUFRLEVBQ3ZDLGFBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFDL0Msa0JBQUMsQ0FBQyxTQUFTLENBQ1AsSUFBSSxFQUNKLGtCQUFDLENBQUMsSUFBSSxDQUNGLGtCQUFDLENBQUMsb0JBQW9CLENBQUMsY0FBYyxFQUFFLFVBQVUsRUFBRSxFQUFFLENBQUMsRUFDdEQsa0JBQUMsQ0FBQyxJQUFJLENBQ0Ysa0JBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUM5QyxrQkFBQyxDQUFDLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxFQUN6QjtRQUNJLG1CQUFtQixFQUFFLGtCQUFDLENBQUMscUJBQXFCLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxDQUFDO0tBQ3hFLENBQ0osQ0FDSixDQUNKLENBRUosQ0FBQyxDQUNMLENBQUE7QUFDTCxDQUFDLENBQUE7QUFoRFksUUFBQSxNQUFNLFVBZ0RsQiJ9
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGxlbWVudGF0aW9uL3RyYW5zZm9ybWF0aW9ucy9zY2hlbWEvZXh1cGVyeV9pbXBsZW1lbnRhdGlvbi9zZXJpYWxpemUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxzREFBdUM7QUFPdkMsMkVBQTBFO0FBQzFFLGlFQUFtRTtBQUduRSwwSEFBMEk7QUFDMUksb0hBQThIO0FBS3ZILE1BQU0sTUFBTSxHQUFHLENBQ2xCLENBQWEsRUFDYixFQUlDLEVBQ3dDLEVBQUU7SUFDM0MsT0FBTyxrQkFBQyxDQUFDLE1BQU0sQ0FDWCxJQUFBLFlBQXFCLEVBQ2pCLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQztRQUNuQixFQUFFLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDO1lBQ3ZCLFlBQVksRUFBRSxtQkFBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLElBQUEsWUFBZSxFQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUM7Z0JBQzVFLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUNwRCxFQUFFLENBQUMsSUFBSTtnQkFDUCxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDbEMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsV0FBVyxFQUFFLG1CQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsSUFBQSxZQUFlLEVBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQztnQkFDekUsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2xDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLFVBQVUsRUFBRSxtQkFBTyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsSUFBQSxZQUFlLEVBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUN4RSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7U0FDWCxDQUFDO1FBQ0YsSUFBSSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsbUJBQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQ3RHLENBQUMsRUFDRjtRQUNJLFdBQVcsRUFBRSxFQUFFO0tBQ2xCLENBQ0osRUFDRCxFQUFFLEVBQ0YsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBQSx5QkFBUSxFQUN2QyxhQUFDLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQy9DLGtCQUFDLENBQUMsU0FBUyxDQUNQLElBQUksRUFDSixrQkFBQyxDQUFDLElBQUksQ0FDRixrQkFBQyxDQUFDLG9CQUFvQixDQUFDLGNBQWMsRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLEVBQ3RELGtCQUFDLENBQUMsSUFBSSxDQUNGLGtCQUFDLENBQUMsb0JBQW9CLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFDOUMsa0JBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsRUFDekI7UUFDSSxtQkFBbUIsRUFBRSxrQkFBQyxDQUFDLHFCQUFxQixDQUFDLG1CQUFtQixFQUFFLEVBQUUsQ0FBQztLQUN4RSxDQUNKLENBQ0osQ0FDSixDQUVKLENBQUMsQ0FDTCxDQUFBO0FBQ0wsQ0FBQyxDQUFBO0FBaERZLFFBQUEsTUFBTSxVQWdEbEIifQ==
@@ -1,15 +1,15 @@
1
1
  import * as _edata from 'exupery-core-data';
2
2
  import * as _et from 'exupery-core-types';
3
- import * as _in from "../../../../../interface/generated/pareto/schemas/schema/data_types/source";
3
+ import * as _in from "../../../../interface/generated/pareto/schemas/schema/data_types/source";
4
4
  import * as _out from "exupery/dist/interface/generated/pareto/schemas/implementation/data_types/target";
5
5
  import * as _out_interface from "exupery/dist/interface/generated/pareto/schemas/interface/data_types/target";
6
6
  export declare const Schema: ($: _in.Schema, $p: {
7
- "path": _et.Array<string>;
7
+ "path": _et.List<string>;
8
8
  "imports": _in.Imports;
9
9
  "constrained": boolean;
10
10
  }) => _out.Module_Set.D<_edata.Source_Location>;
11
11
  export declare const Type_Node: ($: _in.Type_Node, $p: {
12
12
  "temp type": string;
13
- "temp subselection": _et.Array<_out_interface.Type.SG.component.sub_selection.L<_edata.Source_Location>>;
13
+ "temp subselection": _et.List<_out_interface.Type.SG.component.sub_selection.L<_edata.Source_Location>>;
14
14
  "constrained": boolean;
15
15
  }) => _out.Initialization<_edata.Source_Location>;
@@ -0,0 +1,158 @@
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.Type_Node = exports.Schema = void 0;
27
+ const _ea = __importStar(require("exupery-core-alg"));
28
+ const implementation_1 = require("exupery/dist/shorthands/implementation");
29
+ const interface_1 = require("exupery/dist/shorthands/interface");
30
+ const flatten_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/dictionary/flatten");
31
+ const flatten_2 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/list/flatten");
32
+ const append_element_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/list/append_element");
33
+ const Schema = ($, $p) => {
34
+ return implementation_1.m.module((0, flatten_1.$$)(_ea.dictionary_literal({
35
+ "": _ea.dictionary_literal({
36
+ "generic": interface_1.import_.ancestor(2, "generic", ["unmarshall"], {}),
37
+ "signatures": interface_1.import_.ancestor(5, "interface", (0, flatten_2.$$)(_ea.list_literal([
38
+ _ea.list_literal(["generated", "pareto", "schemas"]),
39
+ $p.path,
40
+ _ea.list_literal(["unmarshall"]),
41
+ ])), {}),
42
+ "in": interface_1.import_.ancestor(5, "interface", ["generated", "pareto", "core", "astn source"], {}),
43
+ "out": interface_1.import_.ancestor(5, "interface", (0, flatten_2.$$)(_ea.list_literal([
44
+ _ea.list_literal(["generated", "pareto", "schemas"]),
45
+ $p.path,
46
+ _ea.list_literal(["data types", "target"]),
47
+ ])), $p.constrained ? { "Source": interface_1.t.component_imported("in", "Range", {}, []) } : {}),
48
+ }),
49
+ "r ": $p.imports.map(($, key) => interface_1.import_.ancestor(1, $['schema set child'].key, ["unmarshall"], {}))
50
+ }), {
51
+ 'separator': "",
52
+ }), {}, $.types.dictionary.map(($, key) => (0, implementation_1.variable)(interface_1.t.component_imported("signatures", key, {}, []), implementation_1.i.function_(true, (0, exports.Type_Node)($.node, {
53
+ 'temp type': key,
54
+ 'temp subselection': _ea.list_literal([]),
55
+ 'constrained': $p.constrained
56
+ })))));
57
+ };
58
+ exports.Schema = Schema;
59
+ const Type_Node = ($, $p) => {
60
+ return _ea.cc($, ($) => {
61
+ switch ($[0]) {
62
+ case 'number': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", "process number", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({
63
+ "deserializer": implementation_1.i.select_from_parameter("value deserializers", _ea.cc($, ($) => {
64
+ switch ($[0]) {
65
+ case 'global': return _ea.ss($, ($) => ["custom numbers", $.key]);
66
+ case 'local': return _ea.ss($, ($) => ["default number"]);
67
+ default: return _ea.au($[0]);
68
+ }
69
+ })),
70
+ })));
71
+ case 'boolean': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", "process boolean", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({
72
+ "deserializer": implementation_1.i.select_from_parameter("value deserializers", ["boolean"]),
73
+ })));
74
+ case 'nothing': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", "process nothing", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({})));
75
+ case 'reference': return _ea.ss($, ($) => _ea.cc($.type, ($) => {
76
+ switch ($[0]) {
77
+ case 'derived': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", "process derived reference", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({})));
78
+ case 'selected': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", _ea.cc($.dependency, ($) => {
79
+ switch ($[0]) {
80
+ case 'acyclic': return "process selected reference";
81
+ case 'cyclic': return "process selected reference";
82
+ case 'stack': return "process stack reference";
83
+ default: return _ea.au($[0]);
84
+ }
85
+ }), []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({})));
86
+ default: return _ea.au($[0]);
87
+ }
88
+ }));
89
+ case 'text': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", "process text", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({})));
90
+ case 'component': return _ea.ss($, ($) => implementation_1.i.call(_ea.cc($, ($) => {
91
+ switch ($[0]) {
92
+ case 'external': return _ea.ss($, ($) => implementation_1.s.from_variable_import(` i r ${$.import.key}`, $.type.key, []));
93
+ case 'internal': return _ea.ss($, ($) => implementation_1.s.from_variable($.key, []));
94
+ case 'internal cyclic': return _ea.ss($, ($) => implementation_1.s.from_variable($.key, []));
95
+ default: return _ea.au($[0]);
96
+ }
97
+ }), implementation_1.i.select_from_context([]), _ea.dictionary_literal({
98
+ "value deserializers": implementation_1.i.select_from_parameter("value deserializers", []),
99
+ })));
100
+ case 'dictionary': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", $p.constrained ? "process unresolved dictionary" : "process unconstrained dictionary", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({
101
+ "value": implementation_1.i.function_(false, (0, exports.Type_Node)($.node, {
102
+ 'temp type': $p['temp type'],
103
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
104
+ 'element': interface_1.sub.dictionary(),
105
+ }),
106
+ 'constrained': $p.constrained
107
+ })),
108
+ })));
109
+ case 'group': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", "process group", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({
110
+ "properties": implementation_1.i.function_(false, implementation_1.i.group($.dictionary.map(($, key) => implementation_1.i.change_context(implementation_1.s.call(implementation_1.s.from_variable_import(" i generic", "get entry", []), implementation_1.s.from_context([]), _ea.dictionary_literal({
111
+ "key": implementation_1.i.string(key, 'quote'),
112
+ }), []), (0, exports.Type_Node)($.node, {
113
+ 'temp type': $p['temp type'],
114
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
115
+ 'element': interface_1.sub.group(key),
116
+ }),
117
+ 'constrained': $p.constrained
118
+ }))))),
119
+ })));
120
+ case 'list': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", $p.constrained ? "process unresolved list" : "process unconstrained list", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({
121
+ "value": implementation_1.i.function_(false, (0, exports.Type_Node)($.node, {
122
+ 'temp type': $p['temp type'],
123
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
124
+ 'element': interface_1.sub.list(),
125
+ }),
126
+ 'constrained': $p.constrained
127
+ })),
128
+ })));
129
+ case 'optional': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", "process optional", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({
130
+ "value": implementation_1.i.function_(false, (0, exports.Type_Node)($, {
131
+ 'temp type': $p['temp type'],
132
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
133
+ 'element': interface_1.sub.optional(),
134
+ }),
135
+ 'constrained': $p.constrained
136
+ })),
137
+ })));
138
+ case 'state group': return _ea.ss($, ($) => implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", $p.constrained ? "process unresolved state group" : "process unconstrained state group", []), implementation_1.i.select_from_context([]), _ea.dictionary_literal({
139
+ "states": implementation_1.i.dictionary_literal($.map(($, key) => implementation_1.i.function_(false, implementation_1.i.case_(key, (0, exports.Type_Node)($.node, {
140
+ 'temp type': $p['temp type'],
141
+ 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
142
+ 'element': interface_1.sub.state_group(key),
143
+ }),
144
+ 'constrained': $p.constrained
145
+ })), interface_1.t.component_imported("out", $p['temp type'], {}, (0, append_element_1.$$)($p['temp subselection'], { 'element': interface_1.sub.group("SG") })))))
146
+ })));
147
+ // case 'type parameter': return _ea.ss($, ($) => i.call(
148
+ // s.from_variable_import(" i generic", "process type parameter", []),
149
+ // i.select_from_context([]),
150
+ // _ea.dictionary_literal({
151
+ // })
152
+ // ))
153
+ default: return _ea.au($[0]);
154
+ }
155
+ });
156
+ };
157
+ exports.Type_Node = Type_Node;
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5tYXJzaGFsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi90cmFuc2Zvcm1hdGlvbnMvc2NoZW1hL2V4dXBlcnlfaW1wbGVtZW50YXRpb24vdW5tYXJzaGFsbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLHNEQUF1QztBQU92QywyRUFBMEU7QUFDMUUsaUVBQW1FO0FBR25FLDBIQUEwSTtBQUMxSSxvSEFBOEg7QUFDOUgsa0lBQXVJO0FBSWhJLE1BQU0sTUFBTSxHQUFHLENBQ2xCLENBQWEsRUFDYixFQUlDLEVBQ3dDLEVBQUU7SUFDM0MsT0FBTyxrQkFBQyxDQUFDLE1BQU0sQ0FDWCxJQUFBLFlBQXFCLEVBQ2pCLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQztRQUNuQixFQUFFLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDO1lBQ3ZCLFNBQVMsRUFBRSxtQkFBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzdELFlBQVksRUFBRSxtQkFBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLElBQUEsWUFBZSxFQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUM7Z0JBQzVFLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUNwRCxFQUFFLENBQUMsSUFBSTtnQkFDUCxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDbkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsSUFBSSxFQUFFLG1CQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxhQUFhLENBQUMsRUFBRSxF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