pareto 0.76.1 → 0.76.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/generic/resolve.d.ts +90 -0
- package/dist/generated/generic/resolve.js +249 -0
- package/dist/generated/implementation/schemas/module/resolve.d.ts +4 -0
- package/dist/generated/implementation/schemas/module/resolve.js +149 -0
- package/dist/generated/implementation/schemas/schema/resolve.d.ts +35 -0
- package/dist/generated/implementation/schemas/schema/resolve.js +1998 -0
- package/dist/generated/interface/core/resolved.d.ts +100 -0
- package/dist/generated/interface/core/resolved.js +3 -0
- package/dist/generated/interface/core/unconstrained.d.ts +19 -0
- package/dist/generated/interface/core/unconstrained.js +3 -0
- package/dist/generated/interface/core/unresolved.d.ts +184 -0
- package/dist/generated/interface/core/unresolved.js +3 -0
- package/dist/generated/interface/schemas/module/migration_boilerplate.d.ts +50 -0
- package/dist/generated/interface/schemas/module/migration_boilerplate.js +3 -0
- package/dist/generated/interface/schemas/module/resolve.d.ts +127 -0
- package/dist/generated/interface/schemas/module/resolve.js +3 -0
- package/dist/generated/interface/schemas/module/resolved.d.ts +133 -0
- package/dist/generated/interface/schemas/module/resolved.js +3 -0
- package/dist/generated/interface/schemas/module/unresolved.d.ts +133 -0
- package/dist/generated/interface/schemas/module/unresolved.js +3 -0
- package/dist/generated/interface/schemas/schema/migration_boilerplate.d.ts +794 -0
- package/dist/generated/interface/schemas/schema/migration_boilerplate.js +3 -0
- package/dist/generated/interface/schemas/schema/resolve.d.ts +4401 -0
- package/dist/generated/interface/schemas/schema/resolve.js +3 -0
- package/dist/generated/interface/schemas/schema/resolved.d.ts +3793 -0
- package/dist/generated/interface/schemas/schema/resolved.js +3 -0
- package/dist/generated/interface/schemas/schema/unresolved.d.ts +3793 -0
- package/dist/generated/interface/schemas/schema/unresolved.js +3 -0
- package/dist/globals.d.ts +24 -0
- package/dist/globals.js +2 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +5 -0
- package/dist/shorthands/module.d.ts +8 -0
- package/dist/shorthands/module.js +29 -0
- package/dist/shorthands/schema.d.ts +139 -0
- package/dist/shorthands/schema.js +870 -0
- package/dist/transformations/unmarshall/collect_errors.d.ts +38 -0
- package/dist/transformations/unmarshall/collect_errors.js +185 -0
- package/dist/transformations/unmarshall/dynamic_post_parse.d.ts +7 -0
- package/dist/transformations/unmarshall/dynamic_post_parse.js +267 -0
- package/dist/transformations/unmarshall/post_parse_types.d.ts +77 -0
- package/dist/transformations/unmarshall/post_parse_types.js +3 -0
- package/dist/unmarshall/collect_errors.d.ts +38 -0
- package/dist/unmarshall/collect_errors.js +185 -0
- package/dist/unmarshall/dynamic_post_parse.d.ts +7 -0
- package/dist/unmarshall/dynamic_post_parse.js +267 -0
- package/dist/unmarshall/post_parse_types.d.ts +77 -0
- package/dist/unmarshall/post_parse_types.js +3 -0
- package/package.json +2 -1
|
@@ -0,0 +1,870 @@
|
|
|
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.schema_ = exports.unconstrained = exports.constrained = exports.import_ = exports.schemas = exports.resolvers = exports.signatures = exports.resolver = exports.r = exports.pc = exports.oc = exports.state_constrained = exports.state = exports.av = exports.gvs = exports.pvs = exports.ovi = exports.vst = exports.al = exports.rls = exports.lookup_parameter = exports.value_parameter_external = exports.value_parameter = exports.sig = exports.sig_params = exports.tr = exports.t = exports.part_reference = exports.reference = exports.n = exports.text = exports.type = exports.globals = exports.types = void 0;
|
|
27
|
+
const pd = __importStar(require("exupery-core-data"));
|
|
28
|
+
const unresolved_1 = require("exupery-core-data/dist/shorthands/unresolved");
|
|
29
|
+
const types = (types) => {
|
|
30
|
+
return (0, unresolved_1.wrap_dictionary)(types);
|
|
31
|
+
};
|
|
32
|
+
exports.types = types;
|
|
33
|
+
const globals = (complexity, text_types, number_types) => {
|
|
34
|
+
return {
|
|
35
|
+
'complexity': complexity === 'unconstrained'
|
|
36
|
+
? (0, unresolved_1.wrap_state_group)(['unconstrained', null])
|
|
37
|
+
: (0, unresolved_1.wrap_state_group)(['constrained', null]),
|
|
38
|
+
'text types': (0, unresolved_1.wrap_dictionary)(text_types),
|
|
39
|
+
'number types': (0, unresolved_1.wrap_dictionary)(number_types),
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
exports.globals = globals;
|
|
43
|
+
const type = (type) => {
|
|
44
|
+
return {
|
|
45
|
+
'type parameters': (0, unresolved_1.wrap_dictionary)({}),
|
|
46
|
+
'node': type,
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
exports.type = type;
|
|
50
|
+
const text = (type) => {
|
|
51
|
+
return {
|
|
52
|
+
'type': type === 'single line' ? (0, unresolved_1.wrap_state_group)(['single line', null]) : (0, unresolved_1.wrap_state_group)(['multi line', null]),
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
exports.text = text;
|
|
56
|
+
var n;
|
|
57
|
+
(function (n) {
|
|
58
|
+
n.integer = (decimal_separator_offset) => {
|
|
59
|
+
return {
|
|
60
|
+
'precision': (0, unresolved_1.wrap_state_group)(['exact', {
|
|
61
|
+
'decimal separator offset': decimal_separator_offset === undefined ? pd.not_set() : pd.set(decimal_separator_offset),
|
|
62
|
+
'type': (0, unresolved_1.wrap_state_group)(['integer', null]),
|
|
63
|
+
}])
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
n.approximation = (significant_digits) => {
|
|
67
|
+
return {
|
|
68
|
+
'precision': (0, unresolved_1.wrap_state_group)(['approximation', {
|
|
69
|
+
'significant digits': significant_digits,
|
|
70
|
+
}])
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
n.natural = (decimal_separator_offset) => {
|
|
74
|
+
return {
|
|
75
|
+
'precision': (0, unresolved_1.wrap_state_group)(['exact', {
|
|
76
|
+
'decimal separator offset': decimal_separator_offset === undefined ? pd.not_set() : pd.set(decimal_separator_offset),
|
|
77
|
+
'type': (0, unresolved_1.wrap_state_group)(['natural', null]),
|
|
78
|
+
}])
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
n.positive_natural = (decimal_separator_offset) => {
|
|
82
|
+
return {
|
|
83
|
+
'precision': (0, unresolved_1.wrap_state_group)(['exact', {
|
|
84
|
+
'decimal separator offset': decimal_separator_offset === undefined ? pd.not_set() : pd.set(decimal_separator_offset),
|
|
85
|
+
'type': (0, unresolved_1.wrap_state_group)(['positive natural', null]),
|
|
86
|
+
}])
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
})(n || (exports.n = n = {}));
|
|
90
|
+
const reference = (type) => {
|
|
91
|
+
return {
|
|
92
|
+
'location': (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(type)]),
|
|
93
|
+
'resulting node': null,
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
exports.reference = reference;
|
|
97
|
+
const part_reference = (type, tail) => {
|
|
98
|
+
return {
|
|
99
|
+
'type location': {
|
|
100
|
+
'location': (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(type)]),
|
|
101
|
+
'resulting node': null,
|
|
102
|
+
},
|
|
103
|
+
'tail': (0, unresolved_1.wrap_list)(tail),
|
|
104
|
+
'resulting node': null,
|
|
105
|
+
};
|
|
106
|
+
};
|
|
107
|
+
exports.part_reference = part_reference;
|
|
108
|
+
var t;
|
|
109
|
+
(function (t) {
|
|
110
|
+
t.boolean = () => {
|
|
111
|
+
return (0, unresolved_1.wrap_state_group)(['boolean', null]);
|
|
112
|
+
};
|
|
113
|
+
t.component = (type) => {
|
|
114
|
+
return (0, unresolved_1.wrap_state_group)(['component', (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(type)])]);
|
|
115
|
+
};
|
|
116
|
+
t.component_cyclic = (type) => {
|
|
117
|
+
return (0, unresolved_1.wrap_state_group)(['component', (0, unresolved_1.wrap_state_group)(['internal cyclic', (0, unresolved_1.wrap_reference)(type)])]);
|
|
118
|
+
};
|
|
119
|
+
t.component_external = (imp, type) => {
|
|
120
|
+
return (0, unresolved_1.wrap_state_group)(['component', (0, unresolved_1.wrap_state_group)(['external', {
|
|
121
|
+
'import': (0, unresolved_1.wrap_reference)(imp),
|
|
122
|
+
'type': (0, unresolved_1.wrap_reference)(type),
|
|
123
|
+
}])]);
|
|
124
|
+
};
|
|
125
|
+
t.dictionary = (type, ordered) => {
|
|
126
|
+
return (0, unresolved_1.wrap_state_group)(['dictionary', {
|
|
127
|
+
'node': type,
|
|
128
|
+
'ordered': ordered === 'ordered',
|
|
129
|
+
'benchmark': pd.not_set(),
|
|
130
|
+
}]);
|
|
131
|
+
};
|
|
132
|
+
t.group = (properties) => {
|
|
133
|
+
return (0, unresolved_1.wrap_state_group)(['group', (0, unresolved_1.wrap_dictionary)(properties)]);
|
|
134
|
+
};
|
|
135
|
+
t.identifier_value_pair = (type) => {
|
|
136
|
+
return (0, unresolved_1.wrap_state_group)(['identifier value pair', type]);
|
|
137
|
+
};
|
|
138
|
+
t.list = (type) => {
|
|
139
|
+
return (0, unresolved_1.wrap_state_group)(['list', {
|
|
140
|
+
'node': type,
|
|
141
|
+
'result': pd.not_set(),
|
|
142
|
+
}]);
|
|
143
|
+
};
|
|
144
|
+
t.nothing = () => {
|
|
145
|
+
return (0, unresolved_1.wrap_state_group)(['nothing', null]);
|
|
146
|
+
};
|
|
147
|
+
t.number_global = (name) => {
|
|
148
|
+
return (0, unresolved_1.wrap_state_group)(['number', (0, unresolved_1.wrap_state_group)(['global', (0, unresolved_1.wrap_reference)(name)])]);
|
|
149
|
+
};
|
|
150
|
+
t.number_local = (bt) => {
|
|
151
|
+
return (0, unresolved_1.wrap_state_group)(['number', (0, unresolved_1.wrap_state_group)(['local', bt])]);
|
|
152
|
+
};
|
|
153
|
+
t.optional = (type) => {
|
|
154
|
+
return (0, unresolved_1.wrap_state_group)(['optional', type]);
|
|
155
|
+
};
|
|
156
|
+
t.reference_derived = (type, tail) => {
|
|
157
|
+
const x = {
|
|
158
|
+
'type location': {
|
|
159
|
+
'location': (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(type)]),
|
|
160
|
+
'resulting node': null,
|
|
161
|
+
},
|
|
162
|
+
'tail': (0, unresolved_1.wrap_list)(tail),
|
|
163
|
+
'resulting node': null
|
|
164
|
+
};
|
|
165
|
+
return (0, unresolved_1.wrap_state_group)(['reference', {
|
|
166
|
+
'referent': x,
|
|
167
|
+
'type': (0, unresolved_1.wrap_state_group)(['derived', null]),
|
|
168
|
+
}]);
|
|
169
|
+
};
|
|
170
|
+
t.reference_derived_external = (imp, type, tail) => {
|
|
171
|
+
const x = {
|
|
172
|
+
'type location': {
|
|
173
|
+
'location': (0, unresolved_1.wrap_state_group)(['external', {
|
|
174
|
+
'import': (0, unresolved_1.wrap_reference)(imp),
|
|
175
|
+
'type': (0, unresolved_1.wrap_reference)(type),
|
|
176
|
+
}]),
|
|
177
|
+
'resulting node': null
|
|
178
|
+
},
|
|
179
|
+
'tail': (0, unresolved_1.wrap_list)(tail),
|
|
180
|
+
'resulting node': null
|
|
181
|
+
};
|
|
182
|
+
return (0, unresolved_1.wrap_state_group)(['reference', {
|
|
183
|
+
'referent': x,
|
|
184
|
+
'type': (0, unresolved_1.wrap_state_group)(['derived', null]),
|
|
185
|
+
}]);
|
|
186
|
+
};
|
|
187
|
+
t.reference = (type, tail, dependency) => {
|
|
188
|
+
const p_type = (0, unresolved_1.wrap_state_group)(['selected', {
|
|
189
|
+
'referent': {
|
|
190
|
+
'type location': {
|
|
191
|
+
'location': (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(type)]),
|
|
192
|
+
'resulting node': null
|
|
193
|
+
},
|
|
194
|
+
'tail': (0, unresolved_1.wrap_list)(tail),
|
|
195
|
+
'resulting node': null
|
|
196
|
+
},
|
|
197
|
+
'dictionary': null,
|
|
198
|
+
'dependency': dependency === "cyclic" ? (0, unresolved_1.wrap_state_group)(['cyclic', null]) : (0, unresolved_1.wrap_state_group)(['acyclic', null])
|
|
199
|
+
}]);
|
|
200
|
+
return (0, unresolved_1.wrap_state_group)(['reference', {
|
|
201
|
+
'referent': {
|
|
202
|
+
'type location': {
|
|
203
|
+
'location': (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(type)]),
|
|
204
|
+
'resulting node': null
|
|
205
|
+
},
|
|
206
|
+
'tail': (0, unresolved_1.wrap_list)(tail),
|
|
207
|
+
'resulting node': null
|
|
208
|
+
},
|
|
209
|
+
'type': p_type,
|
|
210
|
+
}]);
|
|
211
|
+
};
|
|
212
|
+
t.reference_stack = (type, tail) => {
|
|
213
|
+
const p_type = (0, unresolved_1.wrap_state_group)(['selected', {
|
|
214
|
+
'dictionary': null,
|
|
215
|
+
'dependency': (0, unresolved_1.wrap_state_group)(['stack', null])
|
|
216
|
+
}]);
|
|
217
|
+
return (0, unresolved_1.wrap_state_group)(['reference', {
|
|
218
|
+
'referent': {
|
|
219
|
+
'type location': {
|
|
220
|
+
'location': (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(type)]),
|
|
221
|
+
'resulting node': null
|
|
222
|
+
},
|
|
223
|
+
'tail': (0, unresolved_1.wrap_list)(tail),
|
|
224
|
+
'resulting node': null
|
|
225
|
+
},
|
|
226
|
+
'type': p_type,
|
|
227
|
+
}]);
|
|
228
|
+
};
|
|
229
|
+
t.reference_external = (imp, type, tail, dependency) => {
|
|
230
|
+
const p_type = (0, unresolved_1.wrap_state_group)(['selected', {
|
|
231
|
+
'dictionary': null,
|
|
232
|
+
'dependency': dependency === "cyclic" ? (0, unresolved_1.wrap_state_group)(['cyclic', null]) : (0, unresolved_1.wrap_state_group)(['acyclic', null])
|
|
233
|
+
}]);
|
|
234
|
+
return (0, unresolved_1.wrap_state_group)(['reference', {
|
|
235
|
+
'referent': {
|
|
236
|
+
'type location': {
|
|
237
|
+
'location': (0, unresolved_1.wrap_state_group)(['external', {
|
|
238
|
+
'import': (0, unresolved_1.wrap_reference)(imp),
|
|
239
|
+
'type': (0, unresolved_1.wrap_reference)(type),
|
|
240
|
+
}]),
|
|
241
|
+
'resulting node': null
|
|
242
|
+
},
|
|
243
|
+
'tail': (0, unresolved_1.wrap_list)(tail),
|
|
244
|
+
'resulting node': null
|
|
245
|
+
},
|
|
246
|
+
'type': p_type,
|
|
247
|
+
}]);
|
|
248
|
+
};
|
|
249
|
+
t.state_group = (states) => {
|
|
250
|
+
return (0, unresolved_1.wrap_state_group)(['state group', (0, unresolved_1.wrap_dictionary)(states)]);
|
|
251
|
+
};
|
|
252
|
+
t.text_global = (name) => {
|
|
253
|
+
return (0, unresolved_1.wrap_state_group)(['text', (0, unresolved_1.wrap_state_group)(['global', (0, unresolved_1.wrap_reference)(name)])]);
|
|
254
|
+
};
|
|
255
|
+
t.text_local = (bt) => {
|
|
256
|
+
return (0, unresolved_1.wrap_state_group)(['text', (0, unresolved_1.wrap_state_group)(['local', bt])]);
|
|
257
|
+
};
|
|
258
|
+
t.type_parameter = (name) => {
|
|
259
|
+
return (0, unresolved_1.wrap_state_group)(['type parameter', (0, unresolved_1.wrap_reference)(name)]);
|
|
260
|
+
};
|
|
261
|
+
})(t || (exports.t = t = {}));
|
|
262
|
+
var tr;
|
|
263
|
+
(function (tr) {
|
|
264
|
+
tr.d = () => {
|
|
265
|
+
return (0, unresolved_1.wrap_state_group)(['dictionary', null]);
|
|
266
|
+
};
|
|
267
|
+
tr.g = (grp) => {
|
|
268
|
+
return (0, unresolved_1.wrap_state_group)(['group', (0, unresolved_1.wrap_reference)(grp)]);
|
|
269
|
+
};
|
|
270
|
+
tr.s = (state) => {
|
|
271
|
+
return (0, unresolved_1.wrap_state_group)(['state group', (0, unresolved_1.wrap_reference)(state)]);
|
|
272
|
+
};
|
|
273
|
+
tr.o = () => {
|
|
274
|
+
return (0, unresolved_1.wrap_state_group)(['optional', null]);
|
|
275
|
+
};
|
|
276
|
+
})(tr || (exports.tr = tr = {}));
|
|
277
|
+
const sig_params = (values, lookups) => {
|
|
278
|
+
return {
|
|
279
|
+
'values': (0, unresolved_1.wrap_dictionary)(values),
|
|
280
|
+
'lookups': (0, unresolved_1.wrap_dictionary)(lookups),
|
|
281
|
+
};
|
|
282
|
+
};
|
|
283
|
+
exports.sig_params = sig_params;
|
|
284
|
+
var sig;
|
|
285
|
+
(function (sig) {
|
|
286
|
+
sig.local = (values, lookups) => {
|
|
287
|
+
return {
|
|
288
|
+
'type': null,
|
|
289
|
+
'parameters': (0, unresolved_1.wrap_state_group)(['local', {
|
|
290
|
+
'values': (0, unresolved_1.wrap_dictionary)(values),
|
|
291
|
+
'lookups': (0, unresolved_1.wrap_dictionary)(lookups),
|
|
292
|
+
}]),
|
|
293
|
+
'resolved parameters': null,
|
|
294
|
+
};
|
|
295
|
+
};
|
|
296
|
+
sig.same_as = (name) => {
|
|
297
|
+
return {
|
|
298
|
+
'type': null,
|
|
299
|
+
'parameters': (0, unresolved_1.wrap_state_group)(['same as', (0, unresolved_1.wrap_reference)(name)]),
|
|
300
|
+
'resolved parameters': null,
|
|
301
|
+
};
|
|
302
|
+
};
|
|
303
|
+
})(sig || (exports.sig = sig = {}));
|
|
304
|
+
const value_parameter = (name, presence) => {
|
|
305
|
+
return {
|
|
306
|
+
'data type': {
|
|
307
|
+
'location': (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(name)]),
|
|
308
|
+
'resulting node': null,
|
|
309
|
+
},
|
|
310
|
+
'presence': presence === 'optional'
|
|
311
|
+
? (0, unresolved_1.wrap_state_group)(['optional', null])
|
|
312
|
+
: (0, unresolved_1.wrap_state_group)(['required', null]),
|
|
313
|
+
};
|
|
314
|
+
};
|
|
315
|
+
exports.value_parameter = value_parameter;
|
|
316
|
+
const value_parameter_external = (imp, type, presence) => {
|
|
317
|
+
return {
|
|
318
|
+
'data type': {
|
|
319
|
+
'location': (0, unresolved_1.wrap_state_group)(['external', {
|
|
320
|
+
'import': (0, unresolved_1.wrap_reference)(imp),
|
|
321
|
+
'type': (0, unresolved_1.wrap_reference)(type),
|
|
322
|
+
}]),
|
|
323
|
+
'resulting node': null,
|
|
324
|
+
},
|
|
325
|
+
'presence': presence === 'optional'
|
|
326
|
+
? (0, unresolved_1.wrap_state_group)(['optional', null])
|
|
327
|
+
: (0, unresolved_1.wrap_state_group)(['required', null]),
|
|
328
|
+
};
|
|
329
|
+
};
|
|
330
|
+
exports.value_parameter_external = value_parameter_external;
|
|
331
|
+
const lookup_parameter = (name, type, presence) => {
|
|
332
|
+
return {
|
|
333
|
+
'referent': {
|
|
334
|
+
'location': (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(name)]),
|
|
335
|
+
'resulting node': null,
|
|
336
|
+
},
|
|
337
|
+
'dictionary': null,
|
|
338
|
+
'type': type === 'cyclic'
|
|
339
|
+
? (0, unresolved_1.wrap_state_group)(['cyclic', null])
|
|
340
|
+
: type === 'stack'
|
|
341
|
+
? (0, unresolved_1.wrap_state_group)(['stack', null])
|
|
342
|
+
: (0, unresolved_1.wrap_state_group)(['acyclic', null]),
|
|
343
|
+
'presence': presence === 'optional'
|
|
344
|
+
? (0, unresolved_1.wrap_state_group)(['optional', null])
|
|
345
|
+
: (0, unresolved_1.wrap_state_group)(['required', null]),
|
|
346
|
+
};
|
|
347
|
+
};
|
|
348
|
+
exports.lookup_parameter = lookup_parameter;
|
|
349
|
+
var rls;
|
|
350
|
+
(function (rls) {
|
|
351
|
+
rls.dictionary = (value_selection) => {
|
|
352
|
+
return {
|
|
353
|
+
'type': (0, unresolved_1.wrap_state_group)(['dictionary', {
|
|
354
|
+
'selection': value_selection,
|
|
355
|
+
'selected dictionary': null,
|
|
356
|
+
}]),
|
|
357
|
+
'resulting dictionary': null,
|
|
358
|
+
};
|
|
359
|
+
};
|
|
360
|
+
rls.parameter = (parameter) => {
|
|
361
|
+
return {
|
|
362
|
+
'type': (0, unresolved_1.wrap_state_group)(['parameter', (0, unresolved_1.wrap_reference)(parameter)]),
|
|
363
|
+
'resulting dictionary': null
|
|
364
|
+
};
|
|
365
|
+
};
|
|
366
|
+
rls.not_circular_dependent_siblings = () => {
|
|
367
|
+
return {
|
|
368
|
+
'type': (0, unresolved_1.wrap_state_group)(['not circular dependent siblings', null]),
|
|
369
|
+
'resulting dictionary': null
|
|
370
|
+
};
|
|
371
|
+
};
|
|
372
|
+
rls.possibly_circular_dependent_siblings = () => {
|
|
373
|
+
return {
|
|
374
|
+
'type': (0, unresolved_1.wrap_state_group)(['possibly circular dependent siblings', null]),
|
|
375
|
+
'resulting dictionary': null
|
|
376
|
+
};
|
|
377
|
+
};
|
|
378
|
+
})(rls || (exports.rls = rls = {}));
|
|
379
|
+
var al;
|
|
380
|
+
(function (al) {
|
|
381
|
+
al.not_set = () => {
|
|
382
|
+
return (0, unresolved_1.wrap_state_group)(['not set', null]);
|
|
383
|
+
};
|
|
384
|
+
al.empty_stack = () => {
|
|
385
|
+
return (0, unresolved_1.wrap_state_group)(['empty stack', null]);
|
|
386
|
+
};
|
|
387
|
+
al.stack = (stack, element) => {
|
|
388
|
+
return (0, unresolved_1.wrap_state_group)(['stack', {
|
|
389
|
+
'stack': stack,
|
|
390
|
+
'element': element,
|
|
391
|
+
}]);
|
|
392
|
+
};
|
|
393
|
+
al.dictionary = (value_selection) => {
|
|
394
|
+
return (0, unresolved_1.wrap_state_group)(['selection', {
|
|
395
|
+
'type': (0, unresolved_1.wrap_state_group)(['dictionary', {
|
|
396
|
+
'selection': value_selection,
|
|
397
|
+
'selected dictionary': null,
|
|
398
|
+
}]),
|
|
399
|
+
'resulting dictionary': null,
|
|
400
|
+
}]);
|
|
401
|
+
};
|
|
402
|
+
al.parameter = (parameter) => {
|
|
403
|
+
return (0, unresolved_1.wrap_state_group)(['selection', {
|
|
404
|
+
'type': (0, unresolved_1.wrap_state_group)(['parameter', (0, unresolved_1.wrap_reference)(parameter)]),
|
|
405
|
+
'resulting dictionary': null,
|
|
406
|
+
}]);
|
|
407
|
+
};
|
|
408
|
+
al.not_circular_dependent_siblings = () => {
|
|
409
|
+
return (0, unresolved_1.wrap_state_group)(['selection', {
|
|
410
|
+
'type': (0, unresolved_1.wrap_state_group)(['not circular dependent siblings', null]),
|
|
411
|
+
'resulting dictionary': null,
|
|
412
|
+
}]);
|
|
413
|
+
};
|
|
414
|
+
al.possibly_circular_dependent_siblings = () => {
|
|
415
|
+
return (0, unresolved_1.wrap_state_group)(['selection', {
|
|
416
|
+
'type': (0, unresolved_1.wrap_state_group)(['possibly circular dependent siblings', null]),
|
|
417
|
+
'resulting dictionary': null,
|
|
418
|
+
}]);
|
|
419
|
+
};
|
|
420
|
+
})(al || (exports.al = al = {}));
|
|
421
|
+
var vst;
|
|
422
|
+
(function (vst) {
|
|
423
|
+
vst.component = () => {
|
|
424
|
+
return (0, unresolved_1.wrap_state_group)(['component', null]);
|
|
425
|
+
};
|
|
426
|
+
vst.group = (property) => {
|
|
427
|
+
return (0, unresolved_1.wrap_state_group)(['group', (0, unresolved_1.wrap_reference)(property)]);
|
|
428
|
+
};
|
|
429
|
+
vst.reference = () => {
|
|
430
|
+
return (0, unresolved_1.wrap_state_group)(['reference', {
|
|
431
|
+
'definition': null,
|
|
432
|
+
}]);
|
|
433
|
+
};
|
|
434
|
+
// export const state_group = (
|
|
435
|
+
// type: unresolved.Type_Node_Reference<pd.Source_Location>,
|
|
436
|
+
// states: Raw_Or_Normal_Dictionary<unresolved.Relative_Value_Selection.path.L.SG.state_group.states.D<pd.Source_Location>>,
|
|
437
|
+
// ): unresolved.Relative_Value_Selection.path.L<pd.Source_Location> => {
|
|
438
|
+
// return wrap_state_group(['state group', {
|
|
439
|
+
// 'definition': null,
|
|
440
|
+
// 'type': type,
|
|
441
|
+
// 'states': wrap_dictionary(states),
|
|
442
|
+
// }])
|
|
443
|
+
// }
|
|
444
|
+
})(vst || (exports.vst = vst = {}));
|
|
445
|
+
var ovi;
|
|
446
|
+
(function (ovi) {
|
|
447
|
+
ovi.not_set = () => {
|
|
448
|
+
return (0, unresolved_1.wrap_state_group)(['not set', null]);
|
|
449
|
+
};
|
|
450
|
+
ovi.set = (value) => {
|
|
451
|
+
return (0, unresolved_1.wrap_state_group)(['set', value]);
|
|
452
|
+
};
|
|
453
|
+
ovi.selection = (selection) => {
|
|
454
|
+
return (0, unresolved_1.wrap_state_group)(['selection', selection]);
|
|
455
|
+
};
|
|
456
|
+
})(ovi || (exports.ovi = ovi = {}));
|
|
457
|
+
var pvs;
|
|
458
|
+
(function (pvs) {
|
|
459
|
+
pvs.state_group = (state_group, result) => {
|
|
460
|
+
return (0, unresolved_1.wrap_state_group)(['result', (0, unresolved_1.wrap_state_group)(['state group', {
|
|
461
|
+
'property': (0, unresolved_1.wrap_reference)(state_group),
|
|
462
|
+
'state group': null,
|
|
463
|
+
'result': result,
|
|
464
|
+
}])]);
|
|
465
|
+
};
|
|
466
|
+
pvs.optional_value = (optional_value, result) => {
|
|
467
|
+
return (0, unresolved_1.wrap_state_group)(['result', (0, unresolved_1.wrap_state_group)(['optional value', {
|
|
468
|
+
'property': (0, unresolved_1.wrap_reference)(optional_value),
|
|
469
|
+
'optional value': null,
|
|
470
|
+
'result': result,
|
|
471
|
+
}])]);
|
|
472
|
+
};
|
|
473
|
+
pvs.parameter = (parameter) => {
|
|
474
|
+
return (0, unresolved_1.wrap_state_group)(['parameter', (0, unresolved_1.wrap_reference)(parameter)]);
|
|
475
|
+
};
|
|
476
|
+
})(pvs || (exports.pvs = pvs = {}));
|
|
477
|
+
var gvs;
|
|
478
|
+
(function (gvs) {
|
|
479
|
+
let constraint;
|
|
480
|
+
(function (constraint_1) {
|
|
481
|
+
constraint_1.component = (component, constraint, tail) => {
|
|
482
|
+
return {
|
|
483
|
+
'start': (0, unresolved_1.wrap_state_group)(['constraint', (0, unresolved_1.wrap_state_group)(['component', {
|
|
484
|
+
'property': (0, unresolved_1.wrap_reference)(component),
|
|
485
|
+
'constraint': (0, unresolved_1.wrap_reference)(constraint),
|
|
486
|
+
}])]),
|
|
487
|
+
'tail': {
|
|
488
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
489
|
+
'resulting node': null,
|
|
490
|
+
},
|
|
491
|
+
'resulting node': null,
|
|
492
|
+
};
|
|
493
|
+
};
|
|
494
|
+
constraint_1.reference = (reference, constraint, tail) => {
|
|
495
|
+
return {
|
|
496
|
+
'start': (0, unresolved_1.wrap_state_group)(['constraint', (0, unresolved_1.wrap_state_group)(['reference', {
|
|
497
|
+
'property': (0, unresolved_1.wrap_reference)(reference),
|
|
498
|
+
'constraint': (0, unresolved_1.wrap_reference)(constraint),
|
|
499
|
+
}])]),
|
|
500
|
+
'tail': {
|
|
501
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
502
|
+
'resulting node': null,
|
|
503
|
+
},
|
|
504
|
+
'resulting node': null,
|
|
505
|
+
};
|
|
506
|
+
};
|
|
507
|
+
})(constraint = gvs.constraint || (gvs.constraint = {}));
|
|
508
|
+
gvs.list = (list, tail) => {
|
|
509
|
+
return {
|
|
510
|
+
'start': (0, unresolved_1.wrap_state_group)(['result', (0, unresolved_1.wrap_state_group)(['list', {
|
|
511
|
+
'property': (0, unresolved_1.wrap_reference)(list),
|
|
512
|
+
'list result': null,
|
|
513
|
+
}])]),
|
|
514
|
+
'tail': {
|
|
515
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
516
|
+
'resulting node': null,
|
|
517
|
+
},
|
|
518
|
+
'resulting node': null,
|
|
519
|
+
};
|
|
520
|
+
};
|
|
521
|
+
gvs.state_group = (state_group, result, tail) => {
|
|
522
|
+
return {
|
|
523
|
+
'start': (0, unresolved_1.wrap_state_group)(['result', (0, unresolved_1.wrap_state_group)(['state group', {
|
|
524
|
+
'property': (0, unresolved_1.wrap_reference)(state_group),
|
|
525
|
+
'state group': null,
|
|
526
|
+
'result': result,
|
|
527
|
+
}])]),
|
|
528
|
+
'tail': {
|
|
529
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
530
|
+
'resulting node': null,
|
|
531
|
+
},
|
|
532
|
+
'resulting node': null,
|
|
533
|
+
};
|
|
534
|
+
};
|
|
535
|
+
gvs.optional_value = (optional_value, result, tail) => {
|
|
536
|
+
return {
|
|
537
|
+
'start': (0, unresolved_1.wrap_state_group)(['result', (0, unresolved_1.wrap_state_group)(['optional value', {
|
|
538
|
+
'property': (0, unresolved_1.wrap_reference)(optional_value),
|
|
539
|
+
'optional value': null,
|
|
540
|
+
'result': result,
|
|
541
|
+
}])]),
|
|
542
|
+
'tail': {
|
|
543
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
544
|
+
'resulting node': null,
|
|
545
|
+
},
|
|
546
|
+
'resulting node': null,
|
|
547
|
+
};
|
|
548
|
+
};
|
|
549
|
+
gvs.parameter = (parameter, tail) => {
|
|
550
|
+
return {
|
|
551
|
+
'start': (0, unresolved_1.wrap_state_group)(['parameter', (0, unresolved_1.wrap_reference)(parameter)]),
|
|
552
|
+
'tail': {
|
|
553
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
554
|
+
'resulting node': null,
|
|
555
|
+
},
|
|
556
|
+
'resulting node': null,
|
|
557
|
+
};
|
|
558
|
+
};
|
|
559
|
+
gvs.list_cursor = (tail) => {
|
|
560
|
+
return {
|
|
561
|
+
'start': (0, unresolved_1.wrap_state_group)(['list cursor', null]),
|
|
562
|
+
'tail': {
|
|
563
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
564
|
+
'resulting node': null,
|
|
565
|
+
},
|
|
566
|
+
'resulting node': null,
|
|
567
|
+
};
|
|
568
|
+
};
|
|
569
|
+
gvs.linked_entry = (tail) => {
|
|
570
|
+
return {
|
|
571
|
+
'start': (0, unresolved_1.wrap_state_group)(['linked entry', null]),
|
|
572
|
+
'tail': {
|
|
573
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
574
|
+
'resulting node': null,
|
|
575
|
+
},
|
|
576
|
+
'resulting node': null,
|
|
577
|
+
};
|
|
578
|
+
};
|
|
579
|
+
gvs.sibling = (sibling, tail) => {
|
|
580
|
+
return {
|
|
581
|
+
'start': (0, unresolved_1.wrap_state_group)(['sibling', (0, unresolved_1.wrap_reference)(sibling)]),
|
|
582
|
+
'tail': {
|
|
583
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
584
|
+
'resulting node': null,
|
|
585
|
+
},
|
|
586
|
+
'resulting node': null,
|
|
587
|
+
};
|
|
588
|
+
};
|
|
589
|
+
gvs.parent_sibling = (parent_sibling, tail) => {
|
|
590
|
+
return {
|
|
591
|
+
'start': (0, unresolved_1.wrap_state_group)(['parent sibling', (0, unresolved_1.wrap_reference)(parent_sibling)]),
|
|
592
|
+
'tail': {
|
|
593
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
594
|
+
'resulting node': null,
|
|
595
|
+
},
|
|
596
|
+
'resulting node': null,
|
|
597
|
+
};
|
|
598
|
+
};
|
|
599
|
+
gvs.option_constraint = (constraint, tail) => {
|
|
600
|
+
return {
|
|
601
|
+
'start': (0, unresolved_1.wrap_state_group)(['option constraint', (0, unresolved_1.wrap_reference)(constraint)]),
|
|
602
|
+
'tail': {
|
|
603
|
+
'path': (0, unresolved_1.wrap_list)(tail),
|
|
604
|
+
'resulting node': null,
|
|
605
|
+
},
|
|
606
|
+
'resulting node': null,
|
|
607
|
+
};
|
|
608
|
+
};
|
|
609
|
+
})(gvs || (exports.gvs = gvs = {}));
|
|
610
|
+
var av;
|
|
611
|
+
(function (av) {
|
|
612
|
+
av.parameter = (parameter) => {
|
|
613
|
+
return (0, unresolved_1.wrap_state_group)(['parameter', (0, unresolved_1.wrap_reference)(parameter)]);
|
|
614
|
+
};
|
|
615
|
+
av.required = (value) => {
|
|
616
|
+
return (0, unresolved_1.wrap_state_group)(['required', value]);
|
|
617
|
+
};
|
|
618
|
+
av.optional = (value) => {
|
|
619
|
+
return (0, unresolved_1.wrap_state_group)(['optional', value]);
|
|
620
|
+
};
|
|
621
|
+
})(av || (exports.av = av = {}));
|
|
622
|
+
const state = (resolver) => {
|
|
623
|
+
return {
|
|
624
|
+
'constraints': (0, unresolved_1.wrap_dictionary)({}),
|
|
625
|
+
'resolver': resolver,
|
|
626
|
+
};
|
|
627
|
+
};
|
|
628
|
+
exports.state = state;
|
|
629
|
+
const state_constrained = (constraints, resolver) => {
|
|
630
|
+
return {
|
|
631
|
+
'constraints': (0, unresolved_1.wrap_dictionary)(constraints),
|
|
632
|
+
'resolver': resolver,
|
|
633
|
+
};
|
|
634
|
+
};
|
|
635
|
+
exports.state_constrained = state_constrained;
|
|
636
|
+
var oc;
|
|
637
|
+
(function (oc) {
|
|
638
|
+
oc.state = (value_selection, state) => {
|
|
639
|
+
return (0, unresolved_1.wrap_state_group)(['state', {
|
|
640
|
+
'selection': value_selection,
|
|
641
|
+
'selected state group': null,
|
|
642
|
+
'state': (0, unresolved_1.wrap_reference)(state),
|
|
643
|
+
}]);
|
|
644
|
+
};
|
|
645
|
+
oc.assert_set = (possibly_optional) => {
|
|
646
|
+
return (0, unresolved_1.wrap_state_group)(['assert is set', possibly_optional]);
|
|
647
|
+
};
|
|
648
|
+
})(oc || (exports.oc = oc = {}));
|
|
649
|
+
var pc;
|
|
650
|
+
(function (pc) {
|
|
651
|
+
pc.property = (value_selection_tail, state) => {
|
|
652
|
+
return {
|
|
653
|
+
'start': (0, unresolved_1.wrap_state_group)(['property', null]),
|
|
654
|
+
'constraint': {
|
|
655
|
+
'selection': {
|
|
656
|
+
'path': (0, unresolved_1.wrap_list)(value_selection_tail),
|
|
657
|
+
'resulting node': null,
|
|
658
|
+
},
|
|
659
|
+
'type': (0, unresolved_1.wrap_state_group)(['state', {
|
|
660
|
+
'selected state group': null,
|
|
661
|
+
'state': (0, unresolved_1.wrap_reference)(state),
|
|
662
|
+
}])
|
|
663
|
+
},
|
|
664
|
+
};
|
|
665
|
+
};
|
|
666
|
+
pc.constraint = (constraint, value_selection_tail, state) => {
|
|
667
|
+
return {
|
|
668
|
+
'start': (0, unresolved_1.wrap_state_group)(['sibling', (0, unresolved_1.wrap_reference)(constraint)]),
|
|
669
|
+
'constraint': {
|
|
670
|
+
'selection': {
|
|
671
|
+
'path': (0, unresolved_1.wrap_list)(value_selection_tail),
|
|
672
|
+
'resulting node': null,
|
|
673
|
+
},
|
|
674
|
+
'type': state === undefined
|
|
675
|
+
? (0, unresolved_1.wrap_state_group)(['optional value', {
|
|
676
|
+
'selected optional value': null,
|
|
677
|
+
}])
|
|
678
|
+
: (0, unresolved_1.wrap_state_group)(['state', {
|
|
679
|
+
'selected state group': null,
|
|
680
|
+
'state': (0, unresolved_1.wrap_reference)(state),
|
|
681
|
+
}])
|
|
682
|
+
},
|
|
683
|
+
};
|
|
684
|
+
};
|
|
685
|
+
})(pc || (exports.pc = pc = {}));
|
|
686
|
+
var r;
|
|
687
|
+
(function (r) {
|
|
688
|
+
r.text = () => {
|
|
689
|
+
return (0, unresolved_1.wrap_state_group)(['text', null]);
|
|
690
|
+
};
|
|
691
|
+
r.boolean = () => {
|
|
692
|
+
return (0, unresolved_1.wrap_state_group)(['boolean', null]);
|
|
693
|
+
};
|
|
694
|
+
r.number = () => {
|
|
695
|
+
return (0, unresolved_1.wrap_state_group)(['number', null]);
|
|
696
|
+
};
|
|
697
|
+
r.component = (type, values, lookups, constraints) => {
|
|
698
|
+
return (0, unresolved_1.wrap_state_group)(['component', {
|
|
699
|
+
'location': (0, unresolved_1.wrap_state_group)(['internal', (0, unresolved_1.wrap_reference)(type)]),
|
|
700
|
+
'signature': null,
|
|
701
|
+
'arguments': pd.set({
|
|
702
|
+
'values': values === null ? pd.not_set() : pd.set((0, unresolved_1.wrap_dictionary)(values)),
|
|
703
|
+
'lookups': lookups === null ? pd.not_set() : pd.set((0, unresolved_1.wrap_dictionary)(lookups)),
|
|
704
|
+
}),
|
|
705
|
+
'constraints': (0, unresolved_1.wrap_dictionary)(constraints === undefined ? {} : constraints),
|
|
706
|
+
}]);
|
|
707
|
+
};
|
|
708
|
+
r.component_external = (imp, type, values, lookups, constraints) => {
|
|
709
|
+
return (0, unresolved_1.wrap_state_group)(['component', {
|
|
710
|
+
'location': (0, unresolved_1.wrap_state_group)(['external', {
|
|
711
|
+
'import': (0, unresolved_1.wrap_reference)(imp),
|
|
712
|
+
'type': (0, unresolved_1.wrap_reference)(type),
|
|
713
|
+
}]),
|
|
714
|
+
'signature': null,
|
|
715
|
+
'arguments': pd.set({
|
|
716
|
+
'values': values === null ? pd.not_set() : pd.set((0, unresolved_1.wrap_dictionary)(values)),
|
|
717
|
+
'lookups': lookups === null ? pd.not_set() : pd.set((0, unresolved_1.wrap_dictionary)(lookups)),
|
|
718
|
+
}),
|
|
719
|
+
'constraints': (0, unresolved_1.wrap_dictionary)(constraints === undefined ? {} : constraints),
|
|
720
|
+
}]);
|
|
721
|
+
};
|
|
722
|
+
r.dictionary = (resolver) => {
|
|
723
|
+
return (0, unresolved_1.wrap_state_group)(['dictionary', {
|
|
724
|
+
'definition': null,
|
|
725
|
+
'resolver': resolver,
|
|
726
|
+
'benchmark': pd.not_set(),
|
|
727
|
+
}]);
|
|
728
|
+
};
|
|
729
|
+
r.dictionary_linked = (dense, selection, resolver) => {
|
|
730
|
+
return (0, unresolved_1.wrap_state_group)(['dictionary', {
|
|
731
|
+
'definition': null,
|
|
732
|
+
'resolver': resolver,
|
|
733
|
+
'benchmark': pd.set({
|
|
734
|
+
'selection': selection,
|
|
735
|
+
'resulting dictionary': null,
|
|
736
|
+
'dense': dense === 'dense',
|
|
737
|
+
}),
|
|
738
|
+
}]);
|
|
739
|
+
};
|
|
740
|
+
r.group = (properties //FIXME: remove the 'this entry' step
|
|
741
|
+
) => {
|
|
742
|
+
const location = pd.get_location_info(1);
|
|
743
|
+
return (0, unresolved_1.wrap_state_group)(['group', {
|
|
744
|
+
'location': location,
|
|
745
|
+
'dictionary': (0, unresolved_1.wrap_dictionary)(properties).dictionary.map(($) => {
|
|
746
|
+
return {
|
|
747
|
+
'location': location,
|
|
748
|
+
'entry': {
|
|
749
|
+
'definition': null,
|
|
750
|
+
'resolver': $.entry
|
|
751
|
+
},
|
|
752
|
+
};
|
|
753
|
+
})
|
|
754
|
+
}]);
|
|
755
|
+
};
|
|
756
|
+
r.list = (type_resolver) => {
|
|
757
|
+
return (0, unresolved_1.wrap_state_group)(['list', {
|
|
758
|
+
'definition': null,
|
|
759
|
+
'resolver': type_resolver,
|
|
760
|
+
'result': pd.not_set(),
|
|
761
|
+
}]);
|
|
762
|
+
};
|
|
763
|
+
r.list_with_result = (type_resolver, result) => {
|
|
764
|
+
return (0, unresolved_1.wrap_state_group)(['list', {
|
|
765
|
+
'definition': null,
|
|
766
|
+
'resolver': type_resolver,
|
|
767
|
+
'result': pd.set(result),
|
|
768
|
+
}]);
|
|
769
|
+
};
|
|
770
|
+
r.nothing = () => {
|
|
771
|
+
return (0, unresolved_1.wrap_state_group)(['nothing', null]);
|
|
772
|
+
};
|
|
773
|
+
r.optional = (type_resolver) => {
|
|
774
|
+
return (0, unresolved_1.wrap_state_group)(['optional', {
|
|
775
|
+
'constraints': (0, unresolved_1.wrap_dictionary)({}),
|
|
776
|
+
'resolver': type_resolver,
|
|
777
|
+
}]);
|
|
778
|
+
};
|
|
779
|
+
r.optional_constrained = (constraints, type_resolver) => {
|
|
780
|
+
return (0, unresolved_1.wrap_state_group)(['optional', {
|
|
781
|
+
'constraints': (0, unresolved_1.wrap_dictionary)(constraints),
|
|
782
|
+
'resolver': type_resolver,
|
|
783
|
+
}]);
|
|
784
|
+
};
|
|
785
|
+
r.reference_derived = (value_selection) => {
|
|
786
|
+
return (0, unresolved_1.wrap_state_group)(['reference', {
|
|
787
|
+
'definition': null,
|
|
788
|
+
'type': (0, unresolved_1.wrap_state_group)(['derived', {
|
|
789
|
+
'value': value_selection,
|
|
790
|
+
}])
|
|
791
|
+
}]);
|
|
792
|
+
};
|
|
793
|
+
r.reference = (lookup_selection, constraints) => {
|
|
794
|
+
return (0, unresolved_1.wrap_state_group)(['reference', {
|
|
795
|
+
'definition': null,
|
|
796
|
+
'type': (0, unresolved_1.wrap_state_group)(['selected', {
|
|
797
|
+
'definition': null,
|
|
798
|
+
'lookup': lookup_selection,
|
|
799
|
+
'constraints': (0, unresolved_1.wrap_dictionary)(constraints === undefined ? {} : constraints),
|
|
800
|
+
}])
|
|
801
|
+
}]);
|
|
802
|
+
};
|
|
803
|
+
r.reference_stack = (lookup_selection, constraints) => {
|
|
804
|
+
return (0, unresolved_1.wrap_state_group)(['reference', {
|
|
805
|
+
'definition': null,
|
|
806
|
+
'type': (0, unresolved_1.wrap_state_group)(['selected', {
|
|
807
|
+
'definition': null,
|
|
808
|
+
'lookup': lookup_selection,
|
|
809
|
+
'constraints': (0, unresolved_1.wrap_dictionary)(constraints === undefined ? {} : constraints),
|
|
810
|
+
}])
|
|
811
|
+
}]);
|
|
812
|
+
};
|
|
813
|
+
r.state_group = (states) => {
|
|
814
|
+
return (0, unresolved_1.wrap_state_group)(['state group', {
|
|
815
|
+
'definition': null,
|
|
816
|
+
'states': (0, unresolved_1.wrap_dictionary)(states),
|
|
817
|
+
}]);
|
|
818
|
+
};
|
|
819
|
+
})(r || (exports.r = r = {}));
|
|
820
|
+
const resolver = (type_resolver) => {
|
|
821
|
+
return {
|
|
822
|
+
'signature': null,
|
|
823
|
+
'type resolver': type_resolver,
|
|
824
|
+
};
|
|
825
|
+
};
|
|
826
|
+
exports.resolver = resolver;
|
|
827
|
+
const signatures = (signatures) => {
|
|
828
|
+
return {
|
|
829
|
+
'types': (0, unresolved_1.wrap_dictionary)(signatures)
|
|
830
|
+
};
|
|
831
|
+
};
|
|
832
|
+
exports.signatures = signatures;
|
|
833
|
+
const resolvers = (resolvers) => {
|
|
834
|
+
return (0, unresolved_1.wrap_dictionary)(resolvers);
|
|
835
|
+
};
|
|
836
|
+
exports.resolvers = resolvers;
|
|
837
|
+
const schemas = (schemas) => {
|
|
838
|
+
return (0, unresolved_1.wrap_dictionary)(schemas);
|
|
839
|
+
};
|
|
840
|
+
exports.schemas = schemas;
|
|
841
|
+
const import_ = (up, name) => {
|
|
842
|
+
return {
|
|
843
|
+
'schema set child': (0, unresolved_1.wrap_stack_reference)(up, name),
|
|
844
|
+
'schema': null,
|
|
845
|
+
};
|
|
846
|
+
};
|
|
847
|
+
exports.import_ = import_;
|
|
848
|
+
const constrained = (signatures, resolvers) => {
|
|
849
|
+
return {
|
|
850
|
+
'signatures': signatures,
|
|
851
|
+
'resolvers': resolvers,
|
|
852
|
+
};
|
|
853
|
+
};
|
|
854
|
+
exports.constrained = constrained;
|
|
855
|
+
const unconstrained = () => {
|
|
856
|
+
return null;
|
|
857
|
+
};
|
|
858
|
+
exports.unconstrained = unconstrained;
|
|
859
|
+
const schema_ = (imports, globals, types, resolve) => {
|
|
860
|
+
return (0, unresolved_1.wrap_state_group)(['schema', {
|
|
861
|
+
'imports': (0, unresolved_1.wrap_dictionary)(imports),
|
|
862
|
+
'globals': globals,
|
|
863
|
+
'types': types,
|
|
864
|
+
'complexity': resolve === null
|
|
865
|
+
? (0, unresolved_1.wrap_state_group)(['unconstrained', null])
|
|
866
|
+
: (0, unresolved_1.wrap_state_group)(['constrained', resolve])
|
|
867
|
+
}]);
|
|
868
|
+
};
|
|
869
|
+
exports.schema_ = schema_;
|
|
870
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Nob3J0aGFuZHMvc2NoZW1hLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0RBQXVDO0FBSXZDLDZFQU9xRDtBQUU5QyxNQUFNLEtBQUssR0FBRyxDQUNqQixLQUF1RSxFQUNuQyxFQUFFO0lBQ3RDLE9BQU8sSUFBQSw0QkFBZSxFQUFDLEtBQUssQ0FBQyxDQUFBO0FBQ2pDLENBQUMsQ0FBQTtBQUpZLFFBQUEsS0FBSyxTQUlqQjtBQUVNLE1BQU0sT0FBTyxHQUFHLENBQ25CLFVBQTJDLEVBQzNDLFVBQXlGLEVBQ3pGLFlBQTZGLEVBQ3ZELEVBQUU7SUFDeEMsT0FBTztRQUNILFlBQVksRUFBRSxVQUFVLEtBQUssZUFBZTtZQUN4QyxDQUFDLENBQUMsSUFBQSw2QkFBZ0IsRUFBQyxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMzQyxDQUFDLENBQUMsSUFBQSw2QkFBZ0IsRUFBQyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM3QyxZQUFZLEVBQUUsSUFBQSw0QkFBZSxFQUFDLFVBQVUsQ0FBQztRQUN6QyxjQUFjLEVBQUUsSUFBQSw0QkFBZSxFQUFDLFlBQVksQ0FBQztLQUNoRCxDQUFBO0FBQ0wsQ0FBQyxDQUFBO0FBWlksUUFBQSxPQUFPLFdBWW5CO0FBRU0sTUFBTSxJQUFJLEdBQUcsQ0FBQyxJQUE4QyxFQUEwQyxFQUFFO0lBQzNHLE9BQU87UUFDSCxpQkFBaUIsRUFBRSxJQUFBLDRCQUFlLEVBQUMsRUFBRSxDQUFDO1FBQ3RDLE1BQU0sRUFBRSxJQUFJO0tBQ2YsQ0FBQTtBQUNMLENBQUMsQ0FBQTtBQUxZLFFBQUEsSUFBSSxRQUtoQjtBQUVNLE1BQU0sSUFBSSxHQUFHLENBQUMsSUFBa0MsRUFBNEMsRUFBRTtJQUNqRyxPQUFPO1FBQ0gsTUFBTSxFQUFFLElBQUksS0FBSyxhQUFh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
|