@likec4/language-server 1.58.0 → 1.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/index.d.mts +3 -3
- package/dist/browser/index.mjs +32 -1
- package/dist/browser/worker.mjs +40 -1
- package/dist/chunks/LikeC4FileSystem.mjs +537 -0
- package/dist/{_chunks → chunks}/icons.d.mts +1 -0
- package/dist/chunks/icons.mjs +5219 -0
- package/dist/{_chunks → chunks}/module.d.mts +192 -182
- package/dist/chunks/module.mjs +8196 -0
- package/dist/{_chunks → chunks}/protocol.d.mts +12 -11
- package/dist/chunks/rolldown-runtime.mjs +9 -0
- package/dist/chunks/utils.mjs +2317 -0
- package/dist/filesystem/index.d.mts +2 -2
- package/dist/filesystem/index.mjs +4 -1
- package/dist/icons.d.mts +1 -1
- package/dist/icons.mjs +3 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.mjs +110 -1
- package/dist/likec4lib.d.mts +2 -2
- package/dist/likec4lib.mjs +15 -1
- package/dist/module.d.mts +1 -1
- package/dist/module.mjs +4 -1
- package/dist/protocol.d.mts +1 -1
- package/dist/protocol.mjs +79 -1
- package/package.json +20 -20
- package/src/test/index.ts +1 -0
- package/src/test/testServices.ts +40 -1
- package/src/test/vitestFixture.ts +58 -0
- package/dist/_chunks/LikeC4FileSystem.mjs +0 -3
- package/dist/_chunks/common-exports.mjs +0 -1
- package/dist/_chunks/icons.mjs +0 -2
- package/dist/_chunks/module.mjs +0 -49
- package/dist/_chunks/utils.mjs +0 -1
|
@@ -0,0 +1,2317 @@
|
|
|
1
|
+
import { t as __name } from "./rolldown-runtime.mjs";
|
|
2
|
+
import { t as LibIcons } from "./icons.mjs";
|
|
3
|
+
import { isLikeC4Builtin } from "../likec4lib.mjs";
|
|
4
|
+
import { compareNaturalHierarchically, nonexhaustive } from "@likec4/core/utils";
|
|
5
|
+
import { errorFromLogRecord, getMessageOnlyFormatter, getTextFormatter, loggable, logger } from "@likec4/log";
|
|
6
|
+
import * as langium from "langium";
|
|
7
|
+
import { loadGrammarFromJson } from "langium";
|
|
8
|
+
import prettyMs from "pretty-ms";
|
|
9
|
+
import { withoutTrailingSlash } from "ufo";
|
|
10
|
+
|
|
11
|
+
//#region src/logger.ts
|
|
12
|
+
const logger$1 = logger.getChild("server");
|
|
13
|
+
/**
|
|
14
|
+
* Logs an error as warning (not critical)
|
|
15
|
+
*/
|
|
16
|
+
function logWarnError(err) {
|
|
17
|
+
logger$1.warn(loggable(err));
|
|
18
|
+
}
|
|
19
|
+
function getTelemetrySink(connection) {
|
|
20
|
+
const messageOnly = getMessageOnlyFormatter();
|
|
21
|
+
return (logObj) => {
|
|
22
|
+
try {
|
|
23
|
+
switch (logObj.level) {
|
|
24
|
+
case "error":
|
|
25
|
+
case "fatal": {
|
|
26
|
+
const category = logObj.category.join(".");
|
|
27
|
+
if (category === "likec4.config") break;
|
|
28
|
+
const err = errorFromLogRecord(logObj);
|
|
29
|
+
if (err) connection.telemetry.logEvent({
|
|
30
|
+
eventName: "error",
|
|
31
|
+
message: `${err.name}: ${err.message}`,
|
|
32
|
+
category,
|
|
33
|
+
...err.stack && { stack: err.stack }
|
|
34
|
+
});
|
|
35
|
+
else connection.telemetry.logEvent({
|
|
36
|
+
eventName: "error",
|
|
37
|
+
message: messageOnly(logObj),
|
|
38
|
+
category
|
|
39
|
+
});
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
} catch (e) {
|
|
44
|
+
console.error("Error while logging to LSP connection:", e);
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
//#endregion
|
|
50
|
+
//#region src/filesystem/noop.ts
|
|
51
|
+
var NoopFileSystemProvider = class {
|
|
52
|
+
scanProjectFiles() {
|
|
53
|
+
return Promise.resolve([]);
|
|
54
|
+
}
|
|
55
|
+
scanDirectory() {
|
|
56
|
+
return Promise.resolve([]);
|
|
57
|
+
}
|
|
58
|
+
readFile(uri) {
|
|
59
|
+
if (isLikeC4Builtin(uri)) return Promise.resolve(LibIcons);
|
|
60
|
+
throw new Error(`No file system is available (${uri.toString()})`);
|
|
61
|
+
}
|
|
62
|
+
readDirectory() {
|
|
63
|
+
return Promise.resolve([]);
|
|
64
|
+
}
|
|
65
|
+
loadProjectConfig() {
|
|
66
|
+
throw new Error("No file system is available.");
|
|
67
|
+
}
|
|
68
|
+
writeFile() {
|
|
69
|
+
throw new Error("No file system is available.");
|
|
70
|
+
}
|
|
71
|
+
deleteFile() {
|
|
72
|
+
throw new Error("No file system is available.");
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* A no-op file system watcher.
|
|
77
|
+
*/
|
|
78
|
+
var NoopFileSystemWatcher = class {
|
|
79
|
+
constructor() {
|
|
80
|
+
logger$1.debug`NoopFileSystemWatcher created`;
|
|
81
|
+
}
|
|
82
|
+
watch() {}
|
|
83
|
+
dispose() {
|
|
84
|
+
return Promise.resolve();
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
var NoopLikeC4ManualLayouts = class {
|
|
88
|
+
constructor() {
|
|
89
|
+
logger$1.debug`NoopLikeC4ManualLayouts created`;
|
|
90
|
+
}
|
|
91
|
+
handleFileSystemUpdate() {
|
|
92
|
+
return Promise.resolve();
|
|
93
|
+
}
|
|
94
|
+
readSnapshot() {
|
|
95
|
+
return Promise.resolve(null);
|
|
96
|
+
}
|
|
97
|
+
read() {
|
|
98
|
+
return Promise.resolve(null);
|
|
99
|
+
}
|
|
100
|
+
write() {
|
|
101
|
+
return Promise.reject(/* @__PURE__ */ new Error("NoopLikeC4ManualLayouts: write operation is not supported"));
|
|
102
|
+
}
|
|
103
|
+
remove() {
|
|
104
|
+
return Promise.resolve(null);
|
|
105
|
+
}
|
|
106
|
+
clearCaches() {}
|
|
107
|
+
onManualLayoutUpdate() {
|
|
108
|
+
return { dispose: () => {} };
|
|
109
|
+
}
|
|
110
|
+
dispose() {}
|
|
111
|
+
};
|
|
112
|
+
const NoFileSystemWatcher = { fileSystemWatcher: () => new NoopFileSystemWatcher() };
|
|
113
|
+
const NoFileSystem = {
|
|
114
|
+
fileSystemProvider: () => new NoopFileSystemProvider(),
|
|
115
|
+
...NoFileSystemWatcher
|
|
116
|
+
};
|
|
117
|
+
const NoLikeC4ManualLayouts = { manualLayouts: () => new NoopLikeC4ManualLayouts() };
|
|
118
|
+
|
|
119
|
+
//#endregion
|
|
120
|
+
//#region src/utils/compareByUri.ts
|
|
121
|
+
const compare = compareNaturalHierarchically("/");
|
|
122
|
+
/**
|
|
123
|
+
* Compare two URIs by their path
|
|
124
|
+
* (natural hierarchical comparison)
|
|
125
|
+
*
|
|
126
|
+
* @example
|
|
127
|
+
* const withUri = [
|
|
128
|
+
* { uri: URI.file('/b/c') },
|
|
129
|
+
* { uri: URI.file('/b') },
|
|
130
|
+
* { uri: URI.file('/a/b/c') },
|
|
131
|
+
* ]
|
|
132
|
+
* withUri.sort(compareByUri).map(x => x.uri.path)
|
|
133
|
+
* // [
|
|
134
|
+
* // '/a/b/c',
|
|
135
|
+
* // '/b',
|
|
136
|
+
* // '/b/c',
|
|
137
|
+
* // ]
|
|
138
|
+
*/
|
|
139
|
+
const compareByUri = (a, b) => compare(withoutTrailingSlash(a.uri.path), withoutTrailingSlash(b.uri.path));
|
|
140
|
+
const compareDeepFirst = compareNaturalHierarchically("/", true);
|
|
141
|
+
/**
|
|
142
|
+
* Compare two URIs by their path
|
|
143
|
+
* (natural hierarchical comparison, deep first)
|
|
144
|
+
*
|
|
145
|
+
* @example
|
|
146
|
+
* const withUri = [
|
|
147
|
+
* { uri: URI.file('/b/c') },
|
|
148
|
+
* { uri: URI.file('/b') },
|
|
149
|
+
* { uri: URI.file('/a/b/c') },
|
|
150
|
+
* ]
|
|
151
|
+
* withUri.sort(compareByUriDeepFirst).map(x => x.uri.path)
|
|
152
|
+
* // [
|
|
153
|
+
* // '/b/c',
|
|
154
|
+
* // '/b',
|
|
155
|
+
* // '/a/b/c',
|
|
156
|
+
* // ]
|
|
157
|
+
*/
|
|
158
|
+
const compareByUriDeepFirst = (a, b) => compareDeepFirst(withoutTrailingSlash(a.uri.path), withoutTrailingSlash(b.uri.path));
|
|
159
|
+
|
|
160
|
+
//#endregion
|
|
161
|
+
//#region src/utils/disposable.ts
|
|
162
|
+
var ADisposable = class {
|
|
163
|
+
toDispose = [];
|
|
164
|
+
isDisposed = false;
|
|
165
|
+
onDispose(...disposable) {
|
|
166
|
+
this.toDispose.push(...disposable);
|
|
167
|
+
}
|
|
168
|
+
dispose() {
|
|
169
|
+
this.throwIfDisposed();
|
|
170
|
+
this.isDisposed = true;
|
|
171
|
+
let item;
|
|
172
|
+
while (item = this.toDispose.pop()) try {
|
|
173
|
+
item.dispose();
|
|
174
|
+
} catch (e) {
|
|
175
|
+
logWarnError(e);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
throwIfDisposed() {
|
|
179
|
+
if (this.isDisposed) logger$1.warn("this has already been disposed");
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
//#endregion
|
|
184
|
+
//#region src/generated/ast.ts
|
|
185
|
+
/******************************************************************************
|
|
186
|
+
* This file was generated by langium-cli 3.5.2.
|
|
187
|
+
* DO NOT EDIT MANUALLY!
|
|
188
|
+
******************************************************************************/
|
|
189
|
+
const AnyProperty = "AnyProperty";
|
|
190
|
+
function isAnyProperty(item) {
|
|
191
|
+
return reflection.isInstance(item, AnyProperty);
|
|
192
|
+
}
|
|
193
|
+
const ColorLiteral = "ColorLiteral";
|
|
194
|
+
function isColorLiteral(item) {
|
|
195
|
+
return reflection.isInstance(item, ColorLiteral);
|
|
196
|
+
}
|
|
197
|
+
const DeploymentElement = "DeploymentElement";
|
|
198
|
+
function isDeploymentElement(item) {
|
|
199
|
+
return reflection.isInstance(item, DeploymentElement);
|
|
200
|
+
}
|
|
201
|
+
const DeploymentNodeOrElementKind = "DeploymentNodeOrElementKind";
|
|
202
|
+
const DeploymentViewRule = "DeploymentViewRule";
|
|
203
|
+
function isDeploymentViewRule(item) {
|
|
204
|
+
return reflection.isInstance(item, DeploymentViewRule);
|
|
205
|
+
}
|
|
206
|
+
const DynamicViewProperty = "DynamicViewProperty";
|
|
207
|
+
const DynamicViewRule = "DynamicViewRule";
|
|
208
|
+
function isDynamicViewRule(item) {
|
|
209
|
+
return reflection.isInstance(item, DynamicViewRule);
|
|
210
|
+
}
|
|
211
|
+
const ElementProperty = "ElementProperty";
|
|
212
|
+
function isElementProperty(item) {
|
|
213
|
+
return reflection.isInstance(item, ElementProperty);
|
|
214
|
+
}
|
|
215
|
+
const ExpressionV2 = "ExpressionV2";
|
|
216
|
+
function isExpressionV2(item) {
|
|
217
|
+
return reflection.isInstance(item, ExpressionV2);
|
|
218
|
+
}
|
|
219
|
+
const ExtendElementOrRelation = "ExtendElementOrRelation";
|
|
220
|
+
function isExtendElementOrRelation(item) {
|
|
221
|
+
return reflection.isInstance(item, ExtendElementOrRelation);
|
|
222
|
+
}
|
|
223
|
+
const ExtendElementProperty = "ExtendElementProperty";
|
|
224
|
+
const ExtendRelationProperty = "ExtendRelationProperty";
|
|
225
|
+
const FqnExpr = "FqnExpr";
|
|
226
|
+
function isFqnExpr(item) {
|
|
227
|
+
return reflection.isInstance(item, FqnExpr);
|
|
228
|
+
}
|
|
229
|
+
const FqnExprOrWhere = "FqnExprOrWhere";
|
|
230
|
+
function isFqnExprOrWhere(item) {
|
|
231
|
+
return reflection.isInstance(item, FqnExprOrWhere);
|
|
232
|
+
}
|
|
233
|
+
const FqnExprOrWith = "FqnExprOrWith";
|
|
234
|
+
function isFqnExprOrWith(item) {
|
|
235
|
+
return reflection.isInstance(item, FqnExprOrWith);
|
|
236
|
+
}
|
|
237
|
+
const FqnReferenceable = "FqnReferenceable";
|
|
238
|
+
const LikeC4View = "LikeC4View";
|
|
239
|
+
function isLikeC4View(item) {
|
|
240
|
+
return reflection.isInstance(item, LikeC4View);
|
|
241
|
+
}
|
|
242
|
+
const MetadataProperty = "MetadataProperty";
|
|
243
|
+
function isMetadataProperty(item) {
|
|
244
|
+
return reflection.isInstance(item, MetadataProperty);
|
|
245
|
+
}
|
|
246
|
+
const MetadataValue = "MetadataValue";
|
|
247
|
+
const ModelElement = "ModelElement";
|
|
248
|
+
const ModelReferenceable = "ModelReferenceable";
|
|
249
|
+
const Referenceable = "Referenceable";
|
|
250
|
+
const RelationExpr = "RelationExpr";
|
|
251
|
+
function isRelationExpr(item) {
|
|
252
|
+
return reflection.isInstance(item, RelationExpr);
|
|
253
|
+
}
|
|
254
|
+
const RelationExprOrWhere = "RelationExprOrWhere";
|
|
255
|
+
function isRelationExprOrWhere(item) {
|
|
256
|
+
return reflection.isInstance(item, RelationExprOrWhere);
|
|
257
|
+
}
|
|
258
|
+
const RelationExprOrWith = "RelationExprOrWith";
|
|
259
|
+
function isRelationExprOrWith(item) {
|
|
260
|
+
return reflection.isInstance(item, RelationExprOrWith);
|
|
261
|
+
}
|
|
262
|
+
const RelationProperty = "RelationProperty";
|
|
263
|
+
const RelationshipStyleProperty = "RelationshipStyleProperty";
|
|
264
|
+
function isRelationshipStyleProperty(item) {
|
|
265
|
+
return reflection.isInstance(item, RelationshipStyleProperty);
|
|
266
|
+
}
|
|
267
|
+
const SizeProperty = "SizeProperty";
|
|
268
|
+
function isSizeProperty(item) {
|
|
269
|
+
return reflection.isInstance(item, SizeProperty);
|
|
270
|
+
}
|
|
271
|
+
const StepOrSeries = "StepOrSeries";
|
|
272
|
+
function isStepOrSeries(item) {
|
|
273
|
+
return reflection.isInstance(item, StepOrSeries);
|
|
274
|
+
}
|
|
275
|
+
const StepStatement = "StepStatement";
|
|
276
|
+
function isStepStatement(item) {
|
|
277
|
+
return reflection.isInstance(item, StepStatement);
|
|
278
|
+
}
|
|
279
|
+
const StringProperty = "StringProperty";
|
|
280
|
+
function isStringProperty(item) {
|
|
281
|
+
return reflection.isInstance(item, StringProperty);
|
|
282
|
+
}
|
|
283
|
+
const StyleProperty = "StyleProperty";
|
|
284
|
+
function isStyleProperty(item) {
|
|
285
|
+
return reflection.isInstance(item, StyleProperty);
|
|
286
|
+
}
|
|
287
|
+
const TryStep = "TryStep";
|
|
288
|
+
function isTryStep(item) {
|
|
289
|
+
return reflection.isInstance(item, TryStep);
|
|
290
|
+
}
|
|
291
|
+
const ViewProperty = "ViewProperty";
|
|
292
|
+
function isViewProperty(item) {
|
|
293
|
+
return reflection.isInstance(item, ViewProperty);
|
|
294
|
+
}
|
|
295
|
+
const ViewRule = "ViewRule";
|
|
296
|
+
function isViewRule(item) {
|
|
297
|
+
return reflection.isInstance(item, ViewRule);
|
|
298
|
+
}
|
|
299
|
+
const ViewRuleStyleOrGlobalRef = "ViewRuleStyleOrGlobalRef";
|
|
300
|
+
function isViewRuleStyleOrGlobalRef(item) {
|
|
301
|
+
return reflection.isInstance(item, ViewRuleStyleOrGlobalRef);
|
|
302
|
+
}
|
|
303
|
+
const WhereElement = "WhereElement";
|
|
304
|
+
function isWhereElement(item) {
|
|
305
|
+
return reflection.isInstance(item, WhereElement);
|
|
306
|
+
}
|
|
307
|
+
const WhereElementExpression = "WhereElementExpression";
|
|
308
|
+
function isWhereElementExpression(item) {
|
|
309
|
+
return reflection.isInstance(item, WhereElementExpression);
|
|
310
|
+
}
|
|
311
|
+
const WhereExpression = "WhereExpression";
|
|
312
|
+
const WhereKindEqual = "WhereKindEqual";
|
|
313
|
+
function isWhereKindEqual(item) {
|
|
314
|
+
return reflection.isInstance(item, WhereKindEqual);
|
|
315
|
+
}
|
|
316
|
+
const WhereMetadataEqual = "WhereMetadataEqual";
|
|
317
|
+
function isWhereMetadataEqual(item) {
|
|
318
|
+
return reflection.isInstance(item, WhereMetadataEqual);
|
|
319
|
+
}
|
|
320
|
+
const WhereRelation = "WhereRelation";
|
|
321
|
+
function isWhereRelation(item) {
|
|
322
|
+
return reflection.isInstance(item, WhereRelation);
|
|
323
|
+
}
|
|
324
|
+
const WhereRelationExpression = "WhereRelationExpression";
|
|
325
|
+
function isWhereRelationExpression(item) {
|
|
326
|
+
return reflection.isInstance(item, WhereRelationExpression);
|
|
327
|
+
}
|
|
328
|
+
const WhereTagEqual = "WhereTagEqual";
|
|
329
|
+
function isWhereTagEqual(item) {
|
|
330
|
+
return reflection.isInstance(item, WhereTagEqual);
|
|
331
|
+
}
|
|
332
|
+
const AbstractStep = "AbstractStep";
|
|
333
|
+
const AltSteps = "AltSteps";
|
|
334
|
+
function isAltSteps(item) {
|
|
335
|
+
return reflection.isInstance(item, AltSteps);
|
|
336
|
+
}
|
|
337
|
+
const ArrowProperty = "ArrowProperty";
|
|
338
|
+
function isArrowProperty(item) {
|
|
339
|
+
return reflection.isInstance(item, ArrowProperty);
|
|
340
|
+
}
|
|
341
|
+
const BorderProperty = "BorderProperty";
|
|
342
|
+
function isBorderProperty(item) {
|
|
343
|
+
return reflection.isInstance(item, BorderProperty);
|
|
344
|
+
}
|
|
345
|
+
const CatchBlock = "CatchBlock";
|
|
346
|
+
function isCatchBlock(item) {
|
|
347
|
+
return reflection.isInstance(item, CatchBlock);
|
|
348
|
+
}
|
|
349
|
+
const ColorProperty = "ColorProperty";
|
|
350
|
+
function isColorProperty(item) {
|
|
351
|
+
return reflection.isInstance(item, ColorProperty);
|
|
352
|
+
}
|
|
353
|
+
const CustomColor = "CustomColor";
|
|
354
|
+
const CustomElementProperties = "CustomElementProperties";
|
|
355
|
+
function isCustomElementProperties(item) {
|
|
356
|
+
return reflection.isInstance(item, CustomElementProperties);
|
|
357
|
+
}
|
|
358
|
+
const CustomRelationProperties = "CustomRelationProperties";
|
|
359
|
+
function isCustomRelationProperties(item) {
|
|
360
|
+
return reflection.isInstance(item, CustomRelationProperties);
|
|
361
|
+
}
|
|
362
|
+
const DeployedInstance = "DeployedInstance";
|
|
363
|
+
function isDeployedInstance(item) {
|
|
364
|
+
return reflection.isInstance(item, DeployedInstance);
|
|
365
|
+
}
|
|
366
|
+
const DeployedInstanceBody = "DeployedInstanceBody";
|
|
367
|
+
function isDeployedInstanceBody(item) {
|
|
368
|
+
return reflection.isInstance(item, DeployedInstanceBody);
|
|
369
|
+
}
|
|
370
|
+
const DeploymentNode = "DeploymentNode";
|
|
371
|
+
function isDeploymentNode(item) {
|
|
372
|
+
return reflection.isInstance(item, DeploymentNode);
|
|
373
|
+
}
|
|
374
|
+
const DeploymentNodeBody = "DeploymentNodeBody";
|
|
375
|
+
function isDeploymentNodeBody(item) {
|
|
376
|
+
return reflection.isInstance(item, DeploymentNodeBody);
|
|
377
|
+
}
|
|
378
|
+
const DeploymentNodeKind = "DeploymentNodeKind";
|
|
379
|
+
function isDeploymentNodeKind(item) {
|
|
380
|
+
return reflection.isInstance(item, DeploymentNodeKind);
|
|
381
|
+
}
|
|
382
|
+
const DeploymentRelation = "DeploymentRelation";
|
|
383
|
+
function isDeploymentRelation(item) {
|
|
384
|
+
return reflection.isInstance(item, DeploymentRelation);
|
|
385
|
+
}
|
|
386
|
+
const DeploymentRelationBody = "DeploymentRelationBody";
|
|
387
|
+
function isDeploymentRelationBody(item) {
|
|
388
|
+
return reflection.isInstance(item, DeploymentRelationBody);
|
|
389
|
+
}
|
|
390
|
+
const DeploymentView = "DeploymentView";
|
|
391
|
+
function isDeploymentView(item) {
|
|
392
|
+
return reflection.isInstance(item, DeploymentView);
|
|
393
|
+
}
|
|
394
|
+
const DeploymentViewBody = "DeploymentViewBody";
|
|
395
|
+
function isDeploymentViewBody(item) {
|
|
396
|
+
return reflection.isInstance(item, DeploymentViewBody);
|
|
397
|
+
}
|
|
398
|
+
const DeploymentViewRulePredicate = "DeploymentViewRulePredicate";
|
|
399
|
+
function isDeploymentViewRulePredicate(item) {
|
|
400
|
+
return reflection.isInstance(item, DeploymentViewRulePredicate);
|
|
401
|
+
}
|
|
402
|
+
const DeploymentViewRuleStyle = "DeploymentViewRuleStyle";
|
|
403
|
+
function isDeploymentViewRuleStyle(item) {
|
|
404
|
+
return reflection.isInstance(item, DeploymentViewRuleStyle);
|
|
405
|
+
}
|
|
406
|
+
const DirectedRelationExpr = "DirectedRelationExpr";
|
|
407
|
+
function isDirectedRelationExpr(item) {
|
|
408
|
+
return reflection.isInstance(item, DirectedRelationExpr);
|
|
409
|
+
}
|
|
410
|
+
const DynamicView = "DynamicView";
|
|
411
|
+
function isDynamicView(item) {
|
|
412
|
+
return reflection.isInstance(item, DynamicView);
|
|
413
|
+
}
|
|
414
|
+
const DynamicViewBody = "DynamicViewBody";
|
|
415
|
+
function isDynamicViewBody(item) {
|
|
416
|
+
return reflection.isInstance(item, DynamicViewBody);
|
|
417
|
+
}
|
|
418
|
+
const DynamicViewDisplayVariantProperty = "DynamicViewDisplayVariantProperty";
|
|
419
|
+
function isDynamicViewDisplayVariantProperty(item) {
|
|
420
|
+
return reflection.isInstance(item, DynamicViewDisplayVariantProperty);
|
|
421
|
+
}
|
|
422
|
+
const DynamicViewGlobalPredicateRef = "DynamicViewGlobalPredicateRef";
|
|
423
|
+
function isDynamicViewGlobalPredicateRef(item) {
|
|
424
|
+
return reflection.isInstance(item, DynamicViewGlobalPredicateRef);
|
|
425
|
+
}
|
|
426
|
+
const DynamicViewIncludePredicate = "DynamicViewIncludePredicate";
|
|
427
|
+
function isDynamicViewIncludePredicate(item) {
|
|
428
|
+
return reflection.isInstance(item, DynamicViewIncludePredicate);
|
|
429
|
+
}
|
|
430
|
+
const DynamicViewRef = "DynamicViewRef";
|
|
431
|
+
const Element = "Element";
|
|
432
|
+
function isElement(item) {
|
|
433
|
+
return reflection.isInstance(item, Element);
|
|
434
|
+
}
|
|
435
|
+
const ElementBody = "ElementBody";
|
|
436
|
+
function isElementBody(item) {
|
|
437
|
+
return reflection.isInstance(item, ElementBody);
|
|
438
|
+
}
|
|
439
|
+
const ElementKind = "ElementKind";
|
|
440
|
+
function isElementKind(item) {
|
|
441
|
+
return reflection.isInstance(item, ElementKind);
|
|
442
|
+
}
|
|
443
|
+
const ElementKindExpression = "ElementKindExpression";
|
|
444
|
+
function isElementKindExpression(item) {
|
|
445
|
+
return reflection.isInstance(item, ElementKindExpression);
|
|
446
|
+
}
|
|
447
|
+
const ElementRef = "ElementRef";
|
|
448
|
+
function isElementRef(item) {
|
|
449
|
+
return reflection.isInstance(item, ElementRef);
|
|
450
|
+
}
|
|
451
|
+
const ElementStringProperty = "ElementStringProperty";
|
|
452
|
+
function isElementStringProperty(item) {
|
|
453
|
+
return reflection.isInstance(item, ElementStringProperty);
|
|
454
|
+
}
|
|
455
|
+
const ElementStyleProperty = "ElementStyleProperty";
|
|
456
|
+
function isElementStyleProperty(item) {
|
|
457
|
+
return reflection.isInstance(item, ElementStyleProperty);
|
|
458
|
+
}
|
|
459
|
+
const ElementTagExpression = "ElementTagExpression";
|
|
460
|
+
function isElementTagExpression(item) {
|
|
461
|
+
return reflection.isInstance(item, ElementTagExpression);
|
|
462
|
+
}
|
|
463
|
+
const ElementView = "ElementView";
|
|
464
|
+
function isElementView(item) {
|
|
465
|
+
return reflection.isInstance(item, ElementView);
|
|
466
|
+
}
|
|
467
|
+
const ElementViewBody = "ElementViewBody";
|
|
468
|
+
function isElementViewBody(item) {
|
|
469
|
+
return reflection.isInstance(item, ElementViewBody);
|
|
470
|
+
}
|
|
471
|
+
const ElementViewRef = "ElementViewRef";
|
|
472
|
+
const Expressions = "Expressions";
|
|
473
|
+
function isExpressions(item) {
|
|
474
|
+
return reflection.isInstance(item, Expressions);
|
|
475
|
+
}
|
|
476
|
+
const ExtendDeployment = "ExtendDeployment";
|
|
477
|
+
function isExtendDeployment(item) {
|
|
478
|
+
return reflection.isInstance(item, ExtendDeployment);
|
|
479
|
+
}
|
|
480
|
+
const ExtendDeploymentBody = "ExtendDeploymentBody";
|
|
481
|
+
function isExtendDeploymentBody(item) {
|
|
482
|
+
return reflection.isInstance(item, ExtendDeploymentBody);
|
|
483
|
+
}
|
|
484
|
+
const ExtendElement = "ExtendElement";
|
|
485
|
+
function isExtendElement(item) {
|
|
486
|
+
return reflection.isInstance(item, ExtendElement);
|
|
487
|
+
}
|
|
488
|
+
const ExtendElementBody = "ExtendElementBody";
|
|
489
|
+
function isExtendElementBody(item) {
|
|
490
|
+
return reflection.isInstance(item, ExtendElementBody);
|
|
491
|
+
}
|
|
492
|
+
const ExtendRelation = "ExtendRelation";
|
|
493
|
+
function isExtendRelation(item) {
|
|
494
|
+
return reflection.isInstance(item, ExtendRelation);
|
|
495
|
+
}
|
|
496
|
+
const ExtendRelationBody = "ExtendRelationBody";
|
|
497
|
+
function isExtendRelationBody(item) {
|
|
498
|
+
return reflection.isInstance(item, ExtendRelationBody);
|
|
499
|
+
}
|
|
500
|
+
const FinallyBlock = "FinallyBlock";
|
|
501
|
+
function isFinallyBlock(item) {
|
|
502
|
+
return reflection.isInstance(item, FinallyBlock);
|
|
503
|
+
}
|
|
504
|
+
const FqnExpressions = "FqnExpressions";
|
|
505
|
+
function isFqnExpressions(item) {
|
|
506
|
+
return reflection.isInstance(item, FqnExpressions);
|
|
507
|
+
}
|
|
508
|
+
const FqnExprWhere = "FqnExprWhere";
|
|
509
|
+
function isFqnExprWhere(item) {
|
|
510
|
+
return reflection.isInstance(item, FqnExprWhere);
|
|
511
|
+
}
|
|
512
|
+
const FqnExprWith = "FqnExprWith";
|
|
513
|
+
function isFqnExprWith(item) {
|
|
514
|
+
return reflection.isInstance(item, FqnExprWith);
|
|
515
|
+
}
|
|
516
|
+
const FqnRef = "FqnRef";
|
|
517
|
+
function isFqnRef(item) {
|
|
518
|
+
return reflection.isInstance(item, FqnRef);
|
|
519
|
+
}
|
|
520
|
+
const FqnRefExpr = "FqnRefExpr";
|
|
521
|
+
function isFqnRefExpr(item) {
|
|
522
|
+
return reflection.isInstance(item, FqnRefExpr);
|
|
523
|
+
}
|
|
524
|
+
const GlobalDynamicPredicateGroup = "GlobalDynamicPredicateGroup";
|
|
525
|
+
function isGlobalDynamicPredicateGroup(item) {
|
|
526
|
+
return reflection.isInstance(item, GlobalDynamicPredicateGroup);
|
|
527
|
+
}
|
|
528
|
+
const GlobalPredicateGroup = "GlobalPredicateGroup";
|
|
529
|
+
function isGlobalPredicateGroup(item) {
|
|
530
|
+
return reflection.isInstance(item, GlobalPredicateGroup);
|
|
531
|
+
}
|
|
532
|
+
const Globals = "Globals";
|
|
533
|
+
function isGlobals(item) {
|
|
534
|
+
return reflection.isInstance(item, Globals);
|
|
535
|
+
}
|
|
536
|
+
const GlobalStyle = "GlobalStyle";
|
|
537
|
+
function isGlobalStyle(item) {
|
|
538
|
+
return reflection.isInstance(item, GlobalStyle);
|
|
539
|
+
}
|
|
540
|
+
const GlobalStyleGroup = "GlobalStyleGroup";
|
|
541
|
+
function isGlobalStyleGroup(item) {
|
|
542
|
+
return reflection.isInstance(item, GlobalStyleGroup);
|
|
543
|
+
}
|
|
544
|
+
const GlobalStyleId = "GlobalStyleId";
|
|
545
|
+
const HexColor = "HexColor";
|
|
546
|
+
function isHexColor(item) {
|
|
547
|
+
return reflection.isInstance(item, HexColor);
|
|
548
|
+
}
|
|
549
|
+
const IconColorProperty = "IconColorProperty";
|
|
550
|
+
function isIconColorProperty(item) {
|
|
551
|
+
return reflection.isInstance(item, IconColorProperty);
|
|
552
|
+
}
|
|
553
|
+
const IconPositionProperty = "IconPositionProperty";
|
|
554
|
+
function isIconPositionProperty(item) {
|
|
555
|
+
return reflection.isInstance(item, IconPositionProperty);
|
|
556
|
+
}
|
|
557
|
+
const IconProperty = "IconProperty";
|
|
558
|
+
function isIconProperty(item) {
|
|
559
|
+
return reflection.isInstance(item, IconProperty);
|
|
560
|
+
}
|
|
561
|
+
const IconSizeProperty = "IconSizeProperty";
|
|
562
|
+
function isIconSizeProperty(item) {
|
|
563
|
+
return reflection.isInstance(item, IconSizeProperty);
|
|
564
|
+
}
|
|
565
|
+
const Imported = "Imported";
|
|
566
|
+
function isImported(item) {
|
|
567
|
+
return reflection.isInstance(item, Imported);
|
|
568
|
+
}
|
|
569
|
+
const ImportsFromPoject = "ImportsFromPoject";
|
|
570
|
+
function isImportsFromPoject(item) {
|
|
571
|
+
return reflection.isInstance(item, ImportsFromPoject);
|
|
572
|
+
}
|
|
573
|
+
const IncomingRelationExpr = "IncomingRelationExpr";
|
|
574
|
+
function isIncomingRelationExpr(item) {
|
|
575
|
+
return reflection.isInstance(item, IncomingRelationExpr);
|
|
576
|
+
}
|
|
577
|
+
const InOutRelationExpr = "InOutRelationExpr";
|
|
578
|
+
function isInOutRelationExpr(item) {
|
|
579
|
+
return reflection.isInstance(item, InOutRelationExpr);
|
|
580
|
+
}
|
|
581
|
+
const LibIcon = "LibIcon";
|
|
582
|
+
function isLibIcon(item) {
|
|
583
|
+
return reflection.isInstance(item, LibIcon);
|
|
584
|
+
}
|
|
585
|
+
const LikeC4Grammar$1 = "LikeC4Grammar";
|
|
586
|
+
function isLikeC4Grammar(item) {
|
|
587
|
+
return reflection.isInstance(item, LikeC4Grammar$1);
|
|
588
|
+
}
|
|
589
|
+
const LikeC4Lib = "LikeC4Lib";
|
|
590
|
+
function isLikeC4Lib(item) {
|
|
591
|
+
return reflection.isInstance(item, LikeC4Lib);
|
|
592
|
+
}
|
|
593
|
+
const LineProperty = "LineProperty";
|
|
594
|
+
function isLineProperty(item) {
|
|
595
|
+
return reflection.isInstance(item, LineProperty);
|
|
596
|
+
}
|
|
597
|
+
const LinkProperty = "LinkProperty";
|
|
598
|
+
function isLinkProperty(item) {
|
|
599
|
+
return reflection.isInstance(item, LinkProperty);
|
|
600
|
+
}
|
|
601
|
+
const MarkdownOrString = "MarkdownOrString";
|
|
602
|
+
function isMarkdownOrString(item) {
|
|
603
|
+
return reflection.isInstance(item, MarkdownOrString);
|
|
604
|
+
}
|
|
605
|
+
const MetadataArray = "MetadataArray";
|
|
606
|
+
function isMetadataArray(item) {
|
|
607
|
+
return reflection.isInstance(item, MetadataArray);
|
|
608
|
+
}
|
|
609
|
+
const MetadataAttribute = "MetadataAttribute";
|
|
610
|
+
function isMetadataAttribute(item) {
|
|
611
|
+
return reflection.isInstance(item, MetadataAttribute);
|
|
612
|
+
}
|
|
613
|
+
const MetadataBody = "MetadataBody";
|
|
614
|
+
function isMetadataBody(item) {
|
|
615
|
+
return reflection.isInstance(item, MetadataBody);
|
|
616
|
+
}
|
|
617
|
+
const Model = "Model";
|
|
618
|
+
function isModel(item) {
|
|
619
|
+
return reflection.isInstance(item, Model);
|
|
620
|
+
}
|
|
621
|
+
const ModelDeployments = "ModelDeployments";
|
|
622
|
+
function isModelDeployments(item) {
|
|
623
|
+
return reflection.isInstance(item, ModelDeployments);
|
|
624
|
+
}
|
|
625
|
+
const ModelViews = "ModelViews";
|
|
626
|
+
function isModelViews(item) {
|
|
627
|
+
return reflection.isInstance(item, ModelViews);
|
|
628
|
+
}
|
|
629
|
+
const MultipleProperty = "MultipleProperty";
|
|
630
|
+
function isMultipleProperty(item) {
|
|
631
|
+
return reflection.isInstance(item, MultipleProperty);
|
|
632
|
+
}
|
|
633
|
+
const NavigateToProperty = "NavigateToProperty";
|
|
634
|
+
function isNavigateToProperty(item) {
|
|
635
|
+
return reflection.isInstance(item, NavigateToProperty);
|
|
636
|
+
}
|
|
637
|
+
const NotationProperty = "NotationProperty";
|
|
638
|
+
function isNotationProperty(item) {
|
|
639
|
+
return reflection.isInstance(item, NotationProperty);
|
|
640
|
+
}
|
|
641
|
+
const NotesProperty = "NotesProperty";
|
|
642
|
+
function isNotesProperty(item) {
|
|
643
|
+
return reflection.isInstance(item, NotesProperty);
|
|
644
|
+
}
|
|
645
|
+
const OpacityProperty = "OpacityProperty";
|
|
646
|
+
function isOpacityProperty(item) {
|
|
647
|
+
return reflection.isInstance(item, OpacityProperty);
|
|
648
|
+
}
|
|
649
|
+
const OutgoingRelationExpr = "OutgoingRelationExpr";
|
|
650
|
+
function isOutgoingRelationExpr(item) {
|
|
651
|
+
return reflection.isInstance(item, OutgoingRelationExpr);
|
|
652
|
+
}
|
|
653
|
+
const PaddingSizeProperty = "PaddingSizeProperty";
|
|
654
|
+
function isPaddingSizeProperty(item) {
|
|
655
|
+
return reflection.isInstance(item, PaddingSizeProperty);
|
|
656
|
+
}
|
|
657
|
+
const Relation = "Relation";
|
|
658
|
+
function isRelation(item) {
|
|
659
|
+
return reflection.isInstance(item, Relation);
|
|
660
|
+
}
|
|
661
|
+
const RelationBody = "RelationBody";
|
|
662
|
+
function isRelationBody(item) {
|
|
663
|
+
return reflection.isInstance(item, RelationBody);
|
|
664
|
+
}
|
|
665
|
+
const RelationExprWhere = "RelationExprWhere";
|
|
666
|
+
function isRelationExprWhere(item) {
|
|
667
|
+
return reflection.isInstance(item, RelationExprWhere);
|
|
668
|
+
}
|
|
669
|
+
const RelationExprWith = "RelationExprWith";
|
|
670
|
+
function isRelationExprWith(item) {
|
|
671
|
+
return reflection.isInstance(item, RelationExprWith);
|
|
672
|
+
}
|
|
673
|
+
const RelationKindDotRef = "RelationKindDotRef";
|
|
674
|
+
function isRelationKindDotRef(item) {
|
|
675
|
+
return reflection.isInstance(item, RelationKindDotRef);
|
|
676
|
+
}
|
|
677
|
+
const RelationNavigateToProperty = "RelationNavigateToProperty";
|
|
678
|
+
function isRelationNavigateToProperty(item) {
|
|
679
|
+
return reflection.isInstance(item, RelationNavigateToProperty);
|
|
680
|
+
}
|
|
681
|
+
const RelationshipKind = "RelationshipKind";
|
|
682
|
+
function isRelationshipKind(item) {
|
|
683
|
+
return reflection.isInstance(item, RelationshipKind);
|
|
684
|
+
}
|
|
685
|
+
const RelationStringProperty = "RelationStringProperty";
|
|
686
|
+
function isRelationStringProperty(item) {
|
|
687
|
+
return reflection.isInstance(item, RelationStringProperty);
|
|
688
|
+
}
|
|
689
|
+
const RelationStyleProperty = "RelationStyleProperty";
|
|
690
|
+
function isRelationStyleProperty(item) {
|
|
691
|
+
return reflection.isInstance(item, RelationStyleProperty);
|
|
692
|
+
}
|
|
693
|
+
const RGBAColor = "RGBAColor";
|
|
694
|
+
function isRGBAColor(item) {
|
|
695
|
+
return reflection.isInstance(item, RGBAColor);
|
|
696
|
+
}
|
|
697
|
+
const ShapeProperty = "ShapeProperty";
|
|
698
|
+
function isShapeProperty(item) {
|
|
699
|
+
return reflection.isInstance(item, ShapeProperty);
|
|
700
|
+
}
|
|
701
|
+
const ShapeSizeProperty = "ShapeSizeProperty";
|
|
702
|
+
function isShapeSizeProperty(item) {
|
|
703
|
+
return reflection.isInstance(item, ShapeSizeProperty);
|
|
704
|
+
}
|
|
705
|
+
const SpecificationColor = "SpecificationColor";
|
|
706
|
+
function isSpecificationColor(item) {
|
|
707
|
+
return reflection.isInstance(item, SpecificationColor);
|
|
708
|
+
}
|
|
709
|
+
const SpecificationDeploymentNodeKind = "SpecificationDeploymentNodeKind";
|
|
710
|
+
function isSpecificationDeploymentNodeKind(item) {
|
|
711
|
+
return reflection.isInstance(item, SpecificationDeploymentNodeKind);
|
|
712
|
+
}
|
|
713
|
+
const SpecificationElementKind = "SpecificationElementKind";
|
|
714
|
+
function isSpecificationElementKind(item) {
|
|
715
|
+
return reflection.isInstance(item, SpecificationElementKind);
|
|
716
|
+
}
|
|
717
|
+
const SpecificationElementStringProperty = "SpecificationElementStringProperty";
|
|
718
|
+
function isSpecificationElementStringProperty(item) {
|
|
719
|
+
return reflection.isInstance(item, SpecificationElementStringProperty);
|
|
720
|
+
}
|
|
721
|
+
const SpecificationRelationshipKind = "SpecificationRelationshipKind";
|
|
722
|
+
function isSpecificationRelationshipKind(item) {
|
|
723
|
+
return reflection.isInstance(item, SpecificationRelationshipKind);
|
|
724
|
+
}
|
|
725
|
+
const SpecificationRelationshipStringProperty = "SpecificationRelationshipStringProperty";
|
|
726
|
+
function isSpecificationRelationshipStringProperty(item) {
|
|
727
|
+
return reflection.isInstance(item, SpecificationRelationshipStringProperty);
|
|
728
|
+
}
|
|
729
|
+
const SpecificationRule = "SpecificationRule";
|
|
730
|
+
function isSpecificationRule(item) {
|
|
731
|
+
return reflection.isInstance(item, SpecificationRule);
|
|
732
|
+
}
|
|
733
|
+
const SpecificationTag = "SpecificationTag";
|
|
734
|
+
function isSpecificationTag(item) {
|
|
735
|
+
return reflection.isInstance(item, SpecificationTag);
|
|
736
|
+
}
|
|
737
|
+
const StepsBlock = "StepsBlock";
|
|
738
|
+
function isStepsBlock(item) {
|
|
739
|
+
return reflection.isInstance(item, StepsBlock);
|
|
740
|
+
}
|
|
741
|
+
const StrictFqnElementRef = "StrictFqnElementRef";
|
|
742
|
+
function isStrictFqnElementRef(item) {
|
|
743
|
+
return reflection.isInstance(item, StrictFqnElementRef);
|
|
744
|
+
}
|
|
745
|
+
const StrictFqnRef = "StrictFqnRef";
|
|
746
|
+
function isStrictFqnRef(item) {
|
|
747
|
+
return reflection.isInstance(item, StrictFqnRef);
|
|
748
|
+
}
|
|
749
|
+
const Tag = "Tag";
|
|
750
|
+
function isTag(item) {
|
|
751
|
+
return reflection.isInstance(item, "Tag");
|
|
752
|
+
}
|
|
753
|
+
const TagRef = "TagRef";
|
|
754
|
+
function isTagRef(item) {
|
|
755
|
+
return reflection.isInstance(item, TagRef);
|
|
756
|
+
}
|
|
757
|
+
const Tags = "Tags";
|
|
758
|
+
function isTags(item) {
|
|
759
|
+
return reflection.isInstance(item, Tags);
|
|
760
|
+
}
|
|
761
|
+
const TextSizeProperty = "TextSizeProperty";
|
|
762
|
+
function isTextSizeProperty(item) {
|
|
763
|
+
return reflection.isInstance(item, TextSizeProperty);
|
|
764
|
+
}
|
|
765
|
+
const ViewRef = "ViewRef";
|
|
766
|
+
const ViewRuleAncestors = "ViewRuleAncestors";
|
|
767
|
+
function isViewRuleAncestors(item) {
|
|
768
|
+
return reflection.isInstance(item, ViewRuleAncestors);
|
|
769
|
+
}
|
|
770
|
+
const ViewRuleAutoLayout = "ViewRuleAutoLayout";
|
|
771
|
+
function isViewRuleAutoLayout(item) {
|
|
772
|
+
return reflection.isInstance(item, ViewRuleAutoLayout);
|
|
773
|
+
}
|
|
774
|
+
const ViewRuleGlobalPredicateRef = "ViewRuleGlobalPredicateRef";
|
|
775
|
+
function isViewRuleGlobalPredicateRef(item) {
|
|
776
|
+
return reflection.isInstance(item, ViewRuleGlobalPredicateRef);
|
|
777
|
+
}
|
|
778
|
+
const ViewRuleGlobalStyle = "ViewRuleGlobalStyle";
|
|
779
|
+
function isViewRuleGlobalStyle(item) {
|
|
780
|
+
return reflection.isInstance(item, ViewRuleGlobalStyle);
|
|
781
|
+
}
|
|
782
|
+
const ViewRuleGroup = "ViewRuleGroup";
|
|
783
|
+
function isViewRuleGroup(item) {
|
|
784
|
+
return reflection.isInstance(item, ViewRuleGroup);
|
|
785
|
+
}
|
|
786
|
+
const ViewRulePredicate = "ViewRulePredicate";
|
|
787
|
+
function isViewRulePredicate(item) {
|
|
788
|
+
return reflection.isInstance(item, ViewRulePredicate);
|
|
789
|
+
}
|
|
790
|
+
const ViewRuleRank = "ViewRuleRank";
|
|
791
|
+
function isViewRuleRank(item) {
|
|
792
|
+
return reflection.isInstance(item, ViewRuleRank);
|
|
793
|
+
}
|
|
794
|
+
const ViewRuleStyle = "ViewRuleStyle";
|
|
795
|
+
function isViewRuleStyle(item) {
|
|
796
|
+
return reflection.isInstance(item, ViewRuleStyle);
|
|
797
|
+
}
|
|
798
|
+
const ViewStringProperty = "ViewStringProperty";
|
|
799
|
+
function isViewStringProperty(item) {
|
|
800
|
+
return reflection.isInstance(item, ViewStringProperty);
|
|
801
|
+
}
|
|
802
|
+
const WhereBinaryExpression = "WhereBinaryExpression";
|
|
803
|
+
function isWhereBinaryExpression(item) {
|
|
804
|
+
return reflection.isInstance(item, WhereBinaryExpression);
|
|
805
|
+
}
|
|
806
|
+
const WhereElementKind = "WhereElementKind";
|
|
807
|
+
function isWhereElementKind(item) {
|
|
808
|
+
return reflection.isInstance(item, WhereElementKind);
|
|
809
|
+
}
|
|
810
|
+
const WhereElementMetadata = "WhereElementMetadata";
|
|
811
|
+
function isWhereElementMetadata(item) {
|
|
812
|
+
return reflection.isInstance(item, WhereElementMetadata);
|
|
813
|
+
}
|
|
814
|
+
const WhereElementNegation = "WhereElementNegation";
|
|
815
|
+
function isWhereElementNegation(item) {
|
|
816
|
+
return reflection.isInstance(item, WhereElementNegation);
|
|
817
|
+
}
|
|
818
|
+
const WhereElementTag = "WhereElementTag";
|
|
819
|
+
function isWhereElementTag(item) {
|
|
820
|
+
return reflection.isInstance(item, WhereElementTag);
|
|
821
|
+
}
|
|
822
|
+
const WhereRelationKind = "WhereRelationKind";
|
|
823
|
+
function isWhereRelationKind(item) {
|
|
824
|
+
return reflection.isInstance(item, WhereRelationKind);
|
|
825
|
+
}
|
|
826
|
+
const WhereRelationMetadata = "WhereRelationMetadata";
|
|
827
|
+
function isWhereRelationMetadata(item) {
|
|
828
|
+
return reflection.isInstance(item, WhereRelationMetadata);
|
|
829
|
+
}
|
|
830
|
+
const WhereRelationNegation = "WhereRelationNegation";
|
|
831
|
+
function isWhereRelationNegation(item) {
|
|
832
|
+
return reflection.isInstance(item, WhereRelationNegation);
|
|
833
|
+
}
|
|
834
|
+
const WhereRelationParticipantKind = "WhereRelationParticipantKind";
|
|
835
|
+
function isWhereRelationParticipantKind(item) {
|
|
836
|
+
return reflection.isInstance(item, WhereRelationParticipantKind);
|
|
837
|
+
}
|
|
838
|
+
const WhereRelationParticipantMetadata = "WhereRelationParticipantMetadata";
|
|
839
|
+
function isWhereRelationParticipantMetadata(item) {
|
|
840
|
+
return reflection.isInstance(item, WhereRelationParticipantMetadata);
|
|
841
|
+
}
|
|
842
|
+
const WhereRelationParticipantTag = "WhereRelationParticipantTag";
|
|
843
|
+
function isWhereRelationParticipantTag(item) {
|
|
844
|
+
return reflection.isInstance(item, WhereRelationParticipantTag);
|
|
845
|
+
}
|
|
846
|
+
const WhereRelationTag = "WhereRelationTag";
|
|
847
|
+
function isWhereRelationTag(item) {
|
|
848
|
+
return reflection.isInstance(item, WhereRelationTag);
|
|
849
|
+
}
|
|
850
|
+
const WildcardExpression = "WildcardExpression";
|
|
851
|
+
function isWildcardExpression(item) {
|
|
852
|
+
return reflection.isInstance(item, WildcardExpression);
|
|
853
|
+
}
|
|
854
|
+
const Step = "Step";
|
|
855
|
+
function isStep(item) {
|
|
856
|
+
return reflection.isInstance(item, Step);
|
|
857
|
+
}
|
|
858
|
+
const StepSeries = "StepSeries";
|
|
859
|
+
function isStepSeries(item) {
|
|
860
|
+
return reflection.isInstance(item, StepSeries);
|
|
861
|
+
}
|
|
862
|
+
const SubflowStep = "SubflowStep";
|
|
863
|
+
function isSubflowStep(item) {
|
|
864
|
+
return reflection.isInstance(item, SubflowStep);
|
|
865
|
+
}
|
|
866
|
+
const TryBlock = "TryBlock";
|
|
867
|
+
function isTryBlock(item) {
|
|
868
|
+
return reflection.isInstance(item, TryBlock);
|
|
869
|
+
}
|
|
870
|
+
var LikeC4AstReflection = class extends langium.AbstractAstReflection {
|
|
871
|
+
getAllTypes() {
|
|
872
|
+
return [
|
|
873
|
+
AbstractStep,
|
|
874
|
+
AltSteps,
|
|
875
|
+
AnyProperty,
|
|
876
|
+
ArrowProperty,
|
|
877
|
+
BorderProperty,
|
|
878
|
+
CatchBlock,
|
|
879
|
+
ColorLiteral,
|
|
880
|
+
ColorProperty,
|
|
881
|
+
CustomColor,
|
|
882
|
+
CustomElementProperties,
|
|
883
|
+
CustomRelationProperties,
|
|
884
|
+
DeployedInstance,
|
|
885
|
+
DeployedInstanceBody,
|
|
886
|
+
DeploymentElement,
|
|
887
|
+
DeploymentNode,
|
|
888
|
+
DeploymentNodeBody,
|
|
889
|
+
DeploymentNodeKind,
|
|
890
|
+
DeploymentNodeOrElementKind,
|
|
891
|
+
DeploymentRelation,
|
|
892
|
+
DeploymentRelationBody,
|
|
893
|
+
DeploymentView,
|
|
894
|
+
DeploymentViewBody,
|
|
895
|
+
DeploymentViewRule,
|
|
896
|
+
DeploymentViewRulePredicate,
|
|
897
|
+
DeploymentViewRuleStyle,
|
|
898
|
+
DirectedRelationExpr,
|
|
899
|
+
DynamicView,
|
|
900
|
+
DynamicViewBody,
|
|
901
|
+
DynamicViewDisplayVariantProperty,
|
|
902
|
+
DynamicViewGlobalPredicateRef,
|
|
903
|
+
DynamicViewIncludePredicate,
|
|
904
|
+
DynamicViewProperty,
|
|
905
|
+
DynamicViewRef,
|
|
906
|
+
DynamicViewRule,
|
|
907
|
+
Element,
|
|
908
|
+
ElementBody,
|
|
909
|
+
ElementKind,
|
|
910
|
+
ElementKindExpression,
|
|
911
|
+
ElementProperty,
|
|
912
|
+
ElementRef,
|
|
913
|
+
ElementStringProperty,
|
|
914
|
+
ElementStyleProperty,
|
|
915
|
+
ElementTagExpression,
|
|
916
|
+
ElementView,
|
|
917
|
+
ElementViewBody,
|
|
918
|
+
ElementViewRef,
|
|
919
|
+
ExpressionV2,
|
|
920
|
+
Expressions,
|
|
921
|
+
ExtendDeployment,
|
|
922
|
+
ExtendDeploymentBody,
|
|
923
|
+
ExtendElement,
|
|
924
|
+
ExtendElementBody,
|
|
925
|
+
ExtendElementOrRelation,
|
|
926
|
+
ExtendElementProperty,
|
|
927
|
+
ExtendRelation,
|
|
928
|
+
ExtendRelationBody,
|
|
929
|
+
ExtendRelationProperty,
|
|
930
|
+
FinallyBlock,
|
|
931
|
+
FqnExpr,
|
|
932
|
+
FqnExprOrWhere,
|
|
933
|
+
FqnExprOrWith,
|
|
934
|
+
FqnExprWhere,
|
|
935
|
+
FqnExprWith,
|
|
936
|
+
FqnExpressions,
|
|
937
|
+
FqnRef,
|
|
938
|
+
FqnRefExpr,
|
|
939
|
+
FqnReferenceable,
|
|
940
|
+
GlobalDynamicPredicateGroup,
|
|
941
|
+
GlobalPredicateGroup,
|
|
942
|
+
GlobalStyle,
|
|
943
|
+
GlobalStyleGroup,
|
|
944
|
+
GlobalStyleId,
|
|
945
|
+
Globals,
|
|
946
|
+
HexColor,
|
|
947
|
+
IconColorProperty,
|
|
948
|
+
IconPositionProperty,
|
|
949
|
+
IconProperty,
|
|
950
|
+
IconSizeProperty,
|
|
951
|
+
Imported,
|
|
952
|
+
ImportsFromPoject,
|
|
953
|
+
InOutRelationExpr,
|
|
954
|
+
IncomingRelationExpr,
|
|
955
|
+
LibIcon,
|
|
956
|
+
LikeC4Grammar$1,
|
|
957
|
+
LikeC4Lib,
|
|
958
|
+
LikeC4View,
|
|
959
|
+
LineProperty,
|
|
960
|
+
LinkProperty,
|
|
961
|
+
MarkdownOrString,
|
|
962
|
+
MetadataArray,
|
|
963
|
+
MetadataAttribute,
|
|
964
|
+
MetadataBody,
|
|
965
|
+
MetadataProperty,
|
|
966
|
+
MetadataValue,
|
|
967
|
+
Model,
|
|
968
|
+
ModelDeployments,
|
|
969
|
+
ModelElement,
|
|
970
|
+
ModelReferenceable,
|
|
971
|
+
ModelViews,
|
|
972
|
+
MultipleProperty,
|
|
973
|
+
NavigateToProperty,
|
|
974
|
+
NotationProperty,
|
|
975
|
+
NotesProperty,
|
|
976
|
+
OpacityProperty,
|
|
977
|
+
OutgoingRelationExpr,
|
|
978
|
+
PaddingSizeProperty,
|
|
979
|
+
RGBAColor,
|
|
980
|
+
Referenceable,
|
|
981
|
+
Relation,
|
|
982
|
+
RelationBody,
|
|
983
|
+
RelationExpr,
|
|
984
|
+
RelationExprOrWhere,
|
|
985
|
+
RelationExprOrWith,
|
|
986
|
+
RelationExprWhere,
|
|
987
|
+
RelationExprWith,
|
|
988
|
+
RelationKindDotRef,
|
|
989
|
+
RelationNavigateToProperty,
|
|
990
|
+
RelationProperty,
|
|
991
|
+
RelationStringProperty,
|
|
992
|
+
RelationStyleProperty,
|
|
993
|
+
RelationshipKind,
|
|
994
|
+
RelationshipStyleProperty,
|
|
995
|
+
ShapeProperty,
|
|
996
|
+
ShapeSizeProperty,
|
|
997
|
+
SizeProperty,
|
|
998
|
+
SpecificationColor,
|
|
999
|
+
SpecificationDeploymentNodeKind,
|
|
1000
|
+
SpecificationElementKind,
|
|
1001
|
+
SpecificationElementStringProperty,
|
|
1002
|
+
SpecificationRelationshipKind,
|
|
1003
|
+
SpecificationRelationshipStringProperty,
|
|
1004
|
+
SpecificationRule,
|
|
1005
|
+
SpecificationTag,
|
|
1006
|
+
Step,
|
|
1007
|
+
StepOrSeries,
|
|
1008
|
+
StepSeries,
|
|
1009
|
+
StepStatement,
|
|
1010
|
+
StepsBlock,
|
|
1011
|
+
StrictFqnElementRef,
|
|
1012
|
+
StrictFqnRef,
|
|
1013
|
+
StringProperty,
|
|
1014
|
+
StyleProperty,
|
|
1015
|
+
SubflowStep,
|
|
1016
|
+
"Tag",
|
|
1017
|
+
TagRef,
|
|
1018
|
+
Tags,
|
|
1019
|
+
TextSizeProperty,
|
|
1020
|
+
TryBlock,
|
|
1021
|
+
TryStep,
|
|
1022
|
+
ViewProperty,
|
|
1023
|
+
ViewRef,
|
|
1024
|
+
ViewRule,
|
|
1025
|
+
ViewRuleAncestors,
|
|
1026
|
+
ViewRuleAutoLayout,
|
|
1027
|
+
ViewRuleGlobalPredicateRef,
|
|
1028
|
+
ViewRuleGlobalStyle,
|
|
1029
|
+
ViewRuleGroup,
|
|
1030
|
+
ViewRulePredicate,
|
|
1031
|
+
ViewRuleRank,
|
|
1032
|
+
ViewRuleStyle,
|
|
1033
|
+
ViewRuleStyleOrGlobalRef,
|
|
1034
|
+
ViewStringProperty,
|
|
1035
|
+
WhereBinaryExpression,
|
|
1036
|
+
WhereElement,
|
|
1037
|
+
WhereElementExpression,
|
|
1038
|
+
WhereElementKind,
|
|
1039
|
+
WhereElementMetadata,
|
|
1040
|
+
WhereElementNegation,
|
|
1041
|
+
WhereElementTag,
|
|
1042
|
+
WhereExpression,
|
|
1043
|
+
WhereKindEqual,
|
|
1044
|
+
WhereMetadataEqual,
|
|
1045
|
+
WhereRelation,
|
|
1046
|
+
WhereRelationExpression,
|
|
1047
|
+
WhereRelationKind,
|
|
1048
|
+
WhereRelationMetadata,
|
|
1049
|
+
WhereRelationNegation,
|
|
1050
|
+
WhereRelationParticipantKind,
|
|
1051
|
+
WhereRelationParticipantMetadata,
|
|
1052
|
+
WhereRelationParticipantTag,
|
|
1053
|
+
WhereRelationTag,
|
|
1054
|
+
WhereTagEqual,
|
|
1055
|
+
WildcardExpression
|
|
1056
|
+
];
|
|
1057
|
+
}
|
|
1058
|
+
computeIsSubtype(subtype, supertype) {
|
|
1059
|
+
switch (subtype) {
|
|
1060
|
+
case AltSteps:
|
|
1061
|
+
case StepOrSeries:
|
|
1062
|
+
case TryStep: return this.isSubtype(StepStatement, supertype);
|
|
1063
|
+
case ArrowProperty:
|
|
1064
|
+
case LineProperty: return this.isSubtype(RelationshipStyleProperty, supertype);
|
|
1065
|
+
case BorderProperty:
|
|
1066
|
+
case IconColorProperty:
|
|
1067
|
+
case IconPositionProperty:
|
|
1068
|
+
case MultipleProperty:
|
|
1069
|
+
case OpacityProperty:
|
|
1070
|
+
case ShapeProperty: return this.isSubtype(StyleProperty, supertype);
|
|
1071
|
+
case CatchBlock:
|
|
1072
|
+
case FinallyBlock: return this.isSubtype(TryStep, supertype);
|
|
1073
|
+
case ColorProperty: return this.isSubtype("RelationshipStyleProperty", supertype) || this.isSubtype("StyleProperty", supertype);
|
|
1074
|
+
case DeployedInstance:
|
|
1075
|
+
case DeploymentNode: return this.isSubtype("DeploymentElement", supertype) || this.isSubtype("Referenceable", supertype);
|
|
1076
|
+
case DeploymentNodeKind:
|
|
1077
|
+
case ElementKind: return this.isSubtype(DeploymentNodeOrElementKind, supertype);
|
|
1078
|
+
case DeploymentView:
|
|
1079
|
+
case DynamicView:
|
|
1080
|
+
case ElementView: return this.isSubtype(LikeC4View, supertype);
|
|
1081
|
+
case DeploymentViewRulePredicate:
|
|
1082
|
+
case DeploymentViewRuleStyle:
|
|
1083
|
+
case ViewRuleAncestors: return this.isSubtype(DeploymentViewRule, supertype);
|
|
1084
|
+
case DirectedRelationExpr:
|
|
1085
|
+
case IncomingRelationExpr:
|
|
1086
|
+
case InOutRelationExpr:
|
|
1087
|
+
case OutgoingRelationExpr: return this.isSubtype(RelationExpr, supertype);
|
|
1088
|
+
case DynamicViewDisplayVariantProperty: return this.isSubtype(DynamicViewProperty, supertype);
|
|
1089
|
+
case DynamicViewGlobalPredicateRef:
|
|
1090
|
+
case DynamicViewIncludePredicate: return this.isSubtype(DynamicViewRule, supertype);
|
|
1091
|
+
case DynamicViewProperty:
|
|
1092
|
+
case ElementProperty:
|
|
1093
|
+
case NavigateToProperty:
|
|
1094
|
+
case RelationProperty:
|
|
1095
|
+
case RelationshipStyleProperty:
|
|
1096
|
+
case StringProperty:
|
|
1097
|
+
case StyleProperty: return this.isSubtype(AnyProperty, supertype);
|
|
1098
|
+
case Element: return this.isSubtype("FqnReferenceable", supertype) || this.isSubtype("ModelElement", supertype) || this.isSubtype("ModelReferenceable", supertype) || this.isSubtype("Referenceable", supertype);
|
|
1099
|
+
case ElementKindExpression:
|
|
1100
|
+
case ElementTagExpression:
|
|
1101
|
+
case FqnRefExpr:
|
|
1102
|
+
case WildcardExpression: return this.isSubtype(FqnExpr, supertype);
|
|
1103
|
+
case ElementStringProperty: return this.isSubtype("ElementProperty", supertype) || this.isSubtype("StringProperty", supertype);
|
|
1104
|
+
case ElementStyleProperty: return this.isSubtype(ElementProperty, supertype);
|
|
1105
|
+
case ExtendDeployment:
|
|
1106
|
+
case Referenceable: return this.isSubtype(FqnReferenceable, supertype);
|
|
1107
|
+
case ExtendElement: return this.isSubtype("ExtendElementOrRelation", supertype) || this.isSubtype("FqnReferenceable", supertype);
|
|
1108
|
+
case ExtendElementOrRelation:
|
|
1109
|
+
case Relation: return this.isSubtype(ModelElement, supertype);
|
|
1110
|
+
case ExtendRelation: return this.isSubtype(ExtendElementOrRelation, supertype);
|
|
1111
|
+
case FqnExpr:
|
|
1112
|
+
case FqnExprWhere: return this.isSubtype(FqnExprOrWhere, supertype);
|
|
1113
|
+
case FqnExprOrWhere:
|
|
1114
|
+
case FqnExprWith: return this.isSubtype(FqnExprOrWith, supertype);
|
|
1115
|
+
case FqnExprOrWith:
|
|
1116
|
+
case RelationExprOrWith: return this.isSubtype(ExpressionV2, supertype);
|
|
1117
|
+
case HexColor:
|
|
1118
|
+
case RGBAColor: return this.isSubtype(ColorLiteral, supertype);
|
|
1119
|
+
case IconProperty: return this.isSubtype("ElementProperty", supertype) || this.isSubtype("StyleProperty", supertype);
|
|
1120
|
+
case IconSizeProperty:
|
|
1121
|
+
case PaddingSizeProperty:
|
|
1122
|
+
case ShapeSizeProperty:
|
|
1123
|
+
case TextSizeProperty: return this.isSubtype("SizeProperty", supertype) || this.isSubtype("StyleProperty", supertype);
|
|
1124
|
+
case Imported: return this.isSubtype("ModelReferenceable", supertype) || this.isSubtype("Referenceable", supertype);
|
|
1125
|
+
case LinkProperty: return this.isSubtype("ElementProperty", supertype) || this.isSubtype("ExtendElementProperty", supertype) || this.isSubtype("ExtendRelationProperty", supertype) || this.isSubtype("RelationProperty", supertype) || this.isSubtype("ViewProperty", supertype);
|
|
1126
|
+
case MarkdownOrString:
|
|
1127
|
+
case MetadataArray: return this.isSubtype(MetadataValue, supertype);
|
|
1128
|
+
case MetadataAttribute:
|
|
1129
|
+
case NotationProperty:
|
|
1130
|
+
case NotesProperty:
|
|
1131
|
+
case SpecificationElementStringProperty:
|
|
1132
|
+
case SpecificationRelationshipStringProperty: return this.isSubtype(StringProperty, supertype);
|
|
1133
|
+
case MetadataBody: return this.isSubtype(MetadataProperty, supertype);
|
|
1134
|
+
case MetadataProperty: return this.isSubtype("ElementProperty", supertype) || this.isSubtype("ExtendElementProperty", supertype) || this.isSubtype("ExtendRelationProperty", supertype) || this.isSubtype("RelationProperty", supertype);
|
|
1135
|
+
case RelationExpr:
|
|
1136
|
+
case RelationExprWhere: return this.isSubtype(RelationExprOrWhere, supertype);
|
|
1137
|
+
case RelationExprOrWhere:
|
|
1138
|
+
case RelationExprWith: return this.isSubtype(RelationExprOrWith, supertype);
|
|
1139
|
+
case RelationNavigateToProperty:
|
|
1140
|
+
case RelationStyleProperty: return this.isSubtype(RelationProperty, supertype);
|
|
1141
|
+
case RelationStringProperty: return this.isSubtype("RelationProperty", supertype) || this.isSubtype("StringProperty", supertype);
|
|
1142
|
+
case Step:
|
|
1143
|
+
case StepSeries: return this.isSubtype("AbstractStep", supertype) || this.isSubtype("StepOrSeries", supertype);
|
|
1144
|
+
case SubflowStep: return this.isSubtype("StepStatement", supertype) || this.isSubtype("StepsBlock", supertype);
|
|
1145
|
+
case TryBlock: return this.isSubtype("StepsBlock", supertype) || this.isSubtype("TryStep", supertype);
|
|
1146
|
+
case ViewProperty: return this.isSubtype("AnyProperty", supertype) || this.isSubtype("DynamicViewProperty", supertype);
|
|
1147
|
+
case ViewRuleAutoLayout: return this.isSubtype("DeploymentViewRule", supertype) || this.isSubtype("DynamicViewRule", supertype) || this.isSubtype("ViewRule", supertype);
|
|
1148
|
+
case ViewRuleGlobalPredicateRef:
|
|
1149
|
+
case ViewRuleGroup:
|
|
1150
|
+
case ViewRulePredicate:
|
|
1151
|
+
case ViewRuleRank: return this.isSubtype(ViewRule, supertype);
|
|
1152
|
+
case ViewRuleGlobalStyle:
|
|
1153
|
+
case ViewRuleStyle: return this.isSubtype(ViewRuleStyleOrGlobalRef, supertype);
|
|
1154
|
+
case ViewRuleStyleOrGlobalRef: return this.isSubtype("DynamicViewRule", supertype) || this.isSubtype("ViewRule", supertype);
|
|
1155
|
+
case ViewStringProperty: return this.isSubtype("StringProperty", supertype) || this.isSubtype("ViewProperty", supertype);
|
|
1156
|
+
case WhereBinaryExpression: return this.isSubtype("WhereElementExpression", supertype) || this.isSubtype("WhereRelationExpression", supertype);
|
|
1157
|
+
case WhereElement:
|
|
1158
|
+
case WhereElementNegation: return this.isSubtype(WhereElementExpression, supertype);
|
|
1159
|
+
case WhereElementExpression:
|
|
1160
|
+
case WhereRelationExpression: return this.isSubtype(WhereExpression, supertype);
|
|
1161
|
+
case WhereElementKind: return this.isSubtype("WhereElement", supertype) || this.isSubtype("WhereKindEqual", supertype);
|
|
1162
|
+
case WhereElementMetadata: return this.isSubtype("WhereElement", supertype) || this.isSubtype("WhereMetadataEqual", supertype);
|
|
1163
|
+
case WhereElementTag: return this.isSubtype("WhereElement", supertype) || this.isSubtype("WhereTagEqual", supertype);
|
|
1164
|
+
case WhereRelation:
|
|
1165
|
+
case WhereRelationNegation: return this.isSubtype(WhereRelationExpression, supertype);
|
|
1166
|
+
case WhereRelationKind:
|
|
1167
|
+
case WhereRelationParticipantKind: return this.isSubtype("WhereKindEqual", supertype) || this.isSubtype("WhereRelation", supertype);
|
|
1168
|
+
case WhereRelationMetadata:
|
|
1169
|
+
case WhereRelationParticipantMetadata: return this.isSubtype("WhereMetadataEqual", supertype) || this.isSubtype("WhereRelation", supertype);
|
|
1170
|
+
case WhereRelationParticipantTag:
|
|
1171
|
+
case WhereRelationTag: return this.isSubtype("WhereRelation", supertype) || this.isSubtype("WhereTagEqual", supertype);
|
|
1172
|
+
default: return false;
|
|
1173
|
+
}
|
|
1174
|
+
}
|
|
1175
|
+
getReferenceType(refInfo) {
|
|
1176
|
+
const referenceId = `${refInfo.container.$type}:${refInfo.property}`;
|
|
1177
|
+
switch (referenceId) {
|
|
1178
|
+
case "AbstractStep:kind":
|
|
1179
|
+
case "DeploymentRelation:kind":
|
|
1180
|
+
case "ExtendRelation:kind":
|
|
1181
|
+
case "OutgoingRelationExpr:kind":
|
|
1182
|
+
case "Relation:kind":
|
|
1183
|
+
case "RelationKindDotRef:kind":
|
|
1184
|
+
case "Step:kind":
|
|
1185
|
+
case "StepSeries:kind":
|
|
1186
|
+
case "WhereRelationKind:value": return RelationshipKind;
|
|
1187
|
+
case "ColorProperty:customColor":
|
|
1188
|
+
case "IconColorProperty:customColor": return CustomColor;
|
|
1189
|
+
case "DeploymentNode:kind": return DeploymentNodeKind;
|
|
1190
|
+
case "DynamicViewGlobalPredicateRef:predicate": return GlobalDynamicPredicateGroup;
|
|
1191
|
+
case "DynamicViewRef:view": return DynamicView;
|
|
1192
|
+
case "Element:kind":
|
|
1193
|
+
case "ElementKindExpression:kind": return ElementKind;
|
|
1194
|
+
case "ElementViewRef:view": return ElementView;
|
|
1195
|
+
case "FqnRef:value":
|
|
1196
|
+
case "StrictFqnRef:value": return Referenceable;
|
|
1197
|
+
case "IconProperty:libicon": return LibIcon;
|
|
1198
|
+
case "Imported:imported":
|
|
1199
|
+
case "StrictFqnElementRef:el": return Element;
|
|
1200
|
+
case "TagRef:tag": return "Tag";
|
|
1201
|
+
case "ViewRef:view": return LikeC4View;
|
|
1202
|
+
case "ViewRuleGlobalPredicateRef:predicate": return GlobalPredicateGroup;
|
|
1203
|
+
case "ViewRuleGlobalStyle:style": return GlobalStyleId;
|
|
1204
|
+
case "WhereElementKind:value":
|
|
1205
|
+
case "WhereRelationParticipantKind:value": return DeploymentNodeOrElementKind;
|
|
1206
|
+
default: throw new Error(`${referenceId} is not a valid reference id.`);
|
|
1207
|
+
}
|
|
1208
|
+
}
|
|
1209
|
+
getTypeMetaData(type) {
|
|
1210
|
+
switch (type) {
|
|
1211
|
+
case AbstractStep: return {
|
|
1212
|
+
name: AbstractStep,
|
|
1213
|
+
properties: [
|
|
1214
|
+
{ name: "custom" },
|
|
1215
|
+
{ name: "dotKind" },
|
|
1216
|
+
{ name: "kind" },
|
|
1217
|
+
{ name: "target" },
|
|
1218
|
+
{ name: "title" }
|
|
1219
|
+
]
|
|
1220
|
+
};
|
|
1221
|
+
case AltSteps: return {
|
|
1222
|
+
name: AltSteps,
|
|
1223
|
+
properties: [{
|
|
1224
|
+
name: "branches",
|
|
1225
|
+
defaultValue: []
|
|
1226
|
+
}, { name: "title" }]
|
|
1227
|
+
};
|
|
1228
|
+
case ArrowProperty: return {
|
|
1229
|
+
name: ArrowProperty,
|
|
1230
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1231
|
+
};
|
|
1232
|
+
case BorderProperty: return {
|
|
1233
|
+
name: BorderProperty,
|
|
1234
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1235
|
+
};
|
|
1236
|
+
case CatchBlock: return {
|
|
1237
|
+
name: CatchBlock,
|
|
1238
|
+
properties: [
|
|
1239
|
+
{ name: "catch" },
|
|
1240
|
+
{ name: "title" },
|
|
1241
|
+
{ name: "try" }
|
|
1242
|
+
]
|
|
1243
|
+
};
|
|
1244
|
+
case ColorProperty: return {
|
|
1245
|
+
name: ColorProperty,
|
|
1246
|
+
properties: [
|
|
1247
|
+
{ name: "customColor" },
|
|
1248
|
+
{ name: "key" },
|
|
1249
|
+
{ name: "themeColor" }
|
|
1250
|
+
]
|
|
1251
|
+
};
|
|
1252
|
+
case CustomColor: return {
|
|
1253
|
+
name: CustomColor,
|
|
1254
|
+
properties: [{ name: "name" }]
|
|
1255
|
+
};
|
|
1256
|
+
case CustomElementProperties: return {
|
|
1257
|
+
name: CustomElementProperties,
|
|
1258
|
+
properties: [{
|
|
1259
|
+
name: "props",
|
|
1260
|
+
defaultValue: []
|
|
1261
|
+
}]
|
|
1262
|
+
};
|
|
1263
|
+
case CustomRelationProperties: return {
|
|
1264
|
+
name: CustomRelationProperties,
|
|
1265
|
+
properties: [{
|
|
1266
|
+
name: "props",
|
|
1267
|
+
defaultValue: []
|
|
1268
|
+
}]
|
|
1269
|
+
};
|
|
1270
|
+
case DeployedInstance: return {
|
|
1271
|
+
name: DeployedInstance,
|
|
1272
|
+
properties: [
|
|
1273
|
+
{ name: "body" },
|
|
1274
|
+
{ name: "name" },
|
|
1275
|
+
{ name: "summary" },
|
|
1276
|
+
{ name: "target" },
|
|
1277
|
+
{ name: "title" }
|
|
1278
|
+
]
|
|
1279
|
+
};
|
|
1280
|
+
case DeployedInstanceBody: return {
|
|
1281
|
+
name: DeployedInstanceBody,
|
|
1282
|
+
properties: [
|
|
1283
|
+
{
|
|
1284
|
+
name: "elements",
|
|
1285
|
+
defaultValue: []
|
|
1286
|
+
},
|
|
1287
|
+
{
|
|
1288
|
+
name: "props",
|
|
1289
|
+
defaultValue: []
|
|
1290
|
+
},
|
|
1291
|
+
{ name: "tags" }
|
|
1292
|
+
]
|
|
1293
|
+
};
|
|
1294
|
+
case DeploymentNode: return {
|
|
1295
|
+
name: DeploymentNode,
|
|
1296
|
+
properties: [
|
|
1297
|
+
{ name: "body" },
|
|
1298
|
+
{ name: "kind" },
|
|
1299
|
+
{ name: "name" },
|
|
1300
|
+
{ name: "summary" },
|
|
1301
|
+
{ name: "title" }
|
|
1302
|
+
]
|
|
1303
|
+
};
|
|
1304
|
+
case DeploymentNodeBody: return {
|
|
1305
|
+
name: DeploymentNodeBody,
|
|
1306
|
+
properties: [
|
|
1307
|
+
{
|
|
1308
|
+
name: "elements",
|
|
1309
|
+
defaultValue: []
|
|
1310
|
+
},
|
|
1311
|
+
{
|
|
1312
|
+
name: "props",
|
|
1313
|
+
defaultValue: []
|
|
1314
|
+
},
|
|
1315
|
+
{ name: "tags" }
|
|
1316
|
+
]
|
|
1317
|
+
};
|
|
1318
|
+
case DeploymentNodeKind: return {
|
|
1319
|
+
name: DeploymentNodeKind,
|
|
1320
|
+
properties: [{ name: "name" }]
|
|
1321
|
+
};
|
|
1322
|
+
case DeploymentRelation: return {
|
|
1323
|
+
name: DeploymentRelation,
|
|
1324
|
+
properties: [
|
|
1325
|
+
{ name: "body" },
|
|
1326
|
+
{ name: "description" },
|
|
1327
|
+
{ name: "dotKind" },
|
|
1328
|
+
{ name: "kind" },
|
|
1329
|
+
{ name: "source" },
|
|
1330
|
+
{ name: "tags" },
|
|
1331
|
+
{ name: "target" },
|
|
1332
|
+
{ name: "technology" },
|
|
1333
|
+
{ name: "title" }
|
|
1334
|
+
]
|
|
1335
|
+
};
|
|
1336
|
+
case DeploymentRelationBody: return {
|
|
1337
|
+
name: DeploymentRelationBody,
|
|
1338
|
+
properties: [{
|
|
1339
|
+
name: "props",
|
|
1340
|
+
defaultValue: []
|
|
1341
|
+
}, { name: "tags" }]
|
|
1342
|
+
};
|
|
1343
|
+
case DeploymentView: return {
|
|
1344
|
+
name: DeploymentView,
|
|
1345
|
+
properties: [{ name: "body" }, { name: "name" }]
|
|
1346
|
+
};
|
|
1347
|
+
case DeploymentViewBody: return {
|
|
1348
|
+
name: DeploymentViewBody,
|
|
1349
|
+
properties: [
|
|
1350
|
+
{
|
|
1351
|
+
name: "props",
|
|
1352
|
+
defaultValue: []
|
|
1353
|
+
},
|
|
1354
|
+
{
|
|
1355
|
+
name: "rules",
|
|
1356
|
+
defaultValue: []
|
|
1357
|
+
},
|
|
1358
|
+
{ name: "tags" }
|
|
1359
|
+
]
|
|
1360
|
+
};
|
|
1361
|
+
case DeploymentViewRulePredicate: return {
|
|
1362
|
+
name: DeploymentViewRulePredicate,
|
|
1363
|
+
properties: [{ name: "expr" }, {
|
|
1364
|
+
name: "isInclude",
|
|
1365
|
+
defaultValue: false
|
|
1366
|
+
}]
|
|
1367
|
+
};
|
|
1368
|
+
case DeploymentViewRuleStyle: return {
|
|
1369
|
+
name: DeploymentViewRuleStyle,
|
|
1370
|
+
properties: [{
|
|
1371
|
+
name: "props",
|
|
1372
|
+
defaultValue: []
|
|
1373
|
+
}, { name: "targets" }]
|
|
1374
|
+
};
|
|
1375
|
+
case DirectedRelationExpr: return {
|
|
1376
|
+
name: DirectedRelationExpr,
|
|
1377
|
+
properties: [{ name: "source" }, { name: "target" }]
|
|
1378
|
+
};
|
|
1379
|
+
case DynamicView: return {
|
|
1380
|
+
name: DynamicView,
|
|
1381
|
+
properties: [{ name: "body" }, { name: "name" }]
|
|
1382
|
+
};
|
|
1383
|
+
case DynamicViewBody: return {
|
|
1384
|
+
name: DynamicViewBody,
|
|
1385
|
+
properties: [
|
|
1386
|
+
{
|
|
1387
|
+
name: "props",
|
|
1388
|
+
defaultValue: []
|
|
1389
|
+
},
|
|
1390
|
+
{
|
|
1391
|
+
name: "rules",
|
|
1392
|
+
defaultValue: []
|
|
1393
|
+
},
|
|
1394
|
+
{
|
|
1395
|
+
name: "steps",
|
|
1396
|
+
defaultValue: []
|
|
1397
|
+
},
|
|
1398
|
+
{ name: "tags" }
|
|
1399
|
+
]
|
|
1400
|
+
};
|
|
1401
|
+
case DynamicViewDisplayVariantProperty: return {
|
|
1402
|
+
name: DynamicViewDisplayVariantProperty,
|
|
1403
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1404
|
+
};
|
|
1405
|
+
case DynamicViewGlobalPredicateRef: return {
|
|
1406
|
+
name: DynamicViewGlobalPredicateRef,
|
|
1407
|
+
properties: [{ name: "predicate" }]
|
|
1408
|
+
};
|
|
1409
|
+
case DynamicViewIncludePredicate: return {
|
|
1410
|
+
name: DynamicViewIncludePredicate,
|
|
1411
|
+
properties: [{ name: "exprs" }]
|
|
1412
|
+
};
|
|
1413
|
+
case DynamicViewRef: return {
|
|
1414
|
+
name: DynamicViewRef,
|
|
1415
|
+
properties: [{ name: "view" }]
|
|
1416
|
+
};
|
|
1417
|
+
case Element: return {
|
|
1418
|
+
name: Element,
|
|
1419
|
+
properties: [
|
|
1420
|
+
{ name: "body" },
|
|
1421
|
+
{ name: "kind" },
|
|
1422
|
+
{ name: "name" },
|
|
1423
|
+
{
|
|
1424
|
+
name: "props",
|
|
1425
|
+
defaultValue: []
|
|
1426
|
+
}
|
|
1427
|
+
]
|
|
1428
|
+
};
|
|
1429
|
+
case ElementBody: return {
|
|
1430
|
+
name: ElementBody,
|
|
1431
|
+
properties: [
|
|
1432
|
+
{
|
|
1433
|
+
name: "elements",
|
|
1434
|
+
defaultValue: []
|
|
1435
|
+
},
|
|
1436
|
+
{
|
|
1437
|
+
name: "props",
|
|
1438
|
+
defaultValue: []
|
|
1439
|
+
},
|
|
1440
|
+
{ name: "tags" }
|
|
1441
|
+
]
|
|
1442
|
+
};
|
|
1443
|
+
case ElementKind: return {
|
|
1444
|
+
name: ElementKind,
|
|
1445
|
+
properties: [{ name: "name" }]
|
|
1446
|
+
};
|
|
1447
|
+
case ElementKindExpression: return {
|
|
1448
|
+
name: ElementKindExpression,
|
|
1449
|
+
properties: [{
|
|
1450
|
+
name: "isEqual",
|
|
1451
|
+
defaultValue: false
|
|
1452
|
+
}, { name: "kind" }]
|
|
1453
|
+
};
|
|
1454
|
+
case ElementRef: return {
|
|
1455
|
+
name: ElementRef,
|
|
1456
|
+
properties: [{ name: "modelElement" }]
|
|
1457
|
+
};
|
|
1458
|
+
case ElementStringProperty: return {
|
|
1459
|
+
name: ElementStringProperty,
|
|
1460
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1461
|
+
};
|
|
1462
|
+
case ElementStyleProperty: return {
|
|
1463
|
+
name: ElementStyleProperty,
|
|
1464
|
+
properties: [{ name: "key" }, {
|
|
1465
|
+
name: "props",
|
|
1466
|
+
defaultValue: []
|
|
1467
|
+
}]
|
|
1468
|
+
};
|
|
1469
|
+
case ElementTagExpression: return {
|
|
1470
|
+
name: ElementTagExpression,
|
|
1471
|
+
properties: [{
|
|
1472
|
+
name: "isEqual",
|
|
1473
|
+
defaultValue: false
|
|
1474
|
+
}, { name: "tag" }]
|
|
1475
|
+
};
|
|
1476
|
+
case ElementView: return {
|
|
1477
|
+
name: ElementView,
|
|
1478
|
+
properties: [
|
|
1479
|
+
{ name: "body" },
|
|
1480
|
+
{ name: "extends" },
|
|
1481
|
+
{ name: "name" },
|
|
1482
|
+
{ name: "viewOf" }
|
|
1483
|
+
]
|
|
1484
|
+
};
|
|
1485
|
+
case ElementViewBody: return {
|
|
1486
|
+
name: ElementViewBody,
|
|
1487
|
+
properties: [
|
|
1488
|
+
{
|
|
1489
|
+
name: "props",
|
|
1490
|
+
defaultValue: []
|
|
1491
|
+
},
|
|
1492
|
+
{
|
|
1493
|
+
name: "rules",
|
|
1494
|
+
defaultValue: []
|
|
1495
|
+
},
|
|
1496
|
+
{ name: "tags" }
|
|
1497
|
+
]
|
|
1498
|
+
};
|
|
1499
|
+
case ElementViewRef: return {
|
|
1500
|
+
name: ElementViewRef,
|
|
1501
|
+
properties: [{ name: "view" }]
|
|
1502
|
+
};
|
|
1503
|
+
case Expressions: return {
|
|
1504
|
+
name: Expressions,
|
|
1505
|
+
properties: [{ name: "prev" }, { name: "value" }]
|
|
1506
|
+
};
|
|
1507
|
+
case ExtendDeployment: return {
|
|
1508
|
+
name: ExtendDeployment,
|
|
1509
|
+
properties: [{ name: "body" }, { name: "deploymentNode" }]
|
|
1510
|
+
};
|
|
1511
|
+
case ExtendDeploymentBody: return {
|
|
1512
|
+
name: ExtendDeploymentBody,
|
|
1513
|
+
properties: [
|
|
1514
|
+
{
|
|
1515
|
+
name: "elements",
|
|
1516
|
+
defaultValue: []
|
|
1517
|
+
},
|
|
1518
|
+
{
|
|
1519
|
+
name: "props",
|
|
1520
|
+
defaultValue: []
|
|
1521
|
+
},
|
|
1522
|
+
{ name: "tags" }
|
|
1523
|
+
]
|
|
1524
|
+
};
|
|
1525
|
+
case ExtendElement: return {
|
|
1526
|
+
name: ExtendElement,
|
|
1527
|
+
properties: [{ name: "body" }, { name: "element" }]
|
|
1528
|
+
};
|
|
1529
|
+
case ExtendElementBody: return {
|
|
1530
|
+
name: ExtendElementBody,
|
|
1531
|
+
properties: [
|
|
1532
|
+
{
|
|
1533
|
+
name: "elements",
|
|
1534
|
+
defaultValue: []
|
|
1535
|
+
},
|
|
1536
|
+
{
|
|
1537
|
+
name: "props",
|
|
1538
|
+
defaultValue: []
|
|
1539
|
+
},
|
|
1540
|
+
{ name: "tags" }
|
|
1541
|
+
]
|
|
1542
|
+
};
|
|
1543
|
+
case ExtendRelation: return {
|
|
1544
|
+
name: ExtendRelation,
|
|
1545
|
+
properties: [
|
|
1546
|
+
{ name: "body" },
|
|
1547
|
+
{ name: "dotKind" },
|
|
1548
|
+
{ name: "kind" },
|
|
1549
|
+
{ name: "source" },
|
|
1550
|
+
{ name: "target" },
|
|
1551
|
+
{ name: "title" }
|
|
1552
|
+
]
|
|
1553
|
+
};
|
|
1554
|
+
case ExtendRelationBody: return {
|
|
1555
|
+
name: ExtendRelationBody,
|
|
1556
|
+
properties: [{
|
|
1557
|
+
name: "props",
|
|
1558
|
+
defaultValue: []
|
|
1559
|
+
}, { name: "tags" }]
|
|
1560
|
+
};
|
|
1561
|
+
case FinallyBlock: return {
|
|
1562
|
+
name: FinallyBlock,
|
|
1563
|
+
properties: [
|
|
1564
|
+
{ name: "finally" },
|
|
1565
|
+
{ name: "title" },
|
|
1566
|
+
{ name: "tryCatch" }
|
|
1567
|
+
]
|
|
1568
|
+
};
|
|
1569
|
+
case FqnExpressions: return {
|
|
1570
|
+
name: FqnExpressions,
|
|
1571
|
+
properties: [{ name: "prev" }, { name: "value" }]
|
|
1572
|
+
};
|
|
1573
|
+
case FqnExprWhere: return {
|
|
1574
|
+
name: FqnExprWhere,
|
|
1575
|
+
properties: [{ name: "subject" }, { name: "where" }]
|
|
1576
|
+
};
|
|
1577
|
+
case FqnExprWith: return {
|
|
1578
|
+
name: FqnExprWith,
|
|
1579
|
+
properties: [{ name: "custom" }, { name: "subject" }]
|
|
1580
|
+
};
|
|
1581
|
+
case FqnRef: return {
|
|
1582
|
+
name: FqnRef,
|
|
1583
|
+
properties: [{ name: "parent" }, { name: "value" }]
|
|
1584
|
+
};
|
|
1585
|
+
case FqnRefExpr: return {
|
|
1586
|
+
name: FqnRefExpr,
|
|
1587
|
+
properties: [{ name: "ref" }, { name: "selector" }]
|
|
1588
|
+
};
|
|
1589
|
+
case GlobalDynamicPredicateGroup: return {
|
|
1590
|
+
name: GlobalDynamicPredicateGroup,
|
|
1591
|
+
properties: [{ name: "name" }, {
|
|
1592
|
+
name: "predicates",
|
|
1593
|
+
defaultValue: []
|
|
1594
|
+
}]
|
|
1595
|
+
};
|
|
1596
|
+
case GlobalPredicateGroup: return {
|
|
1597
|
+
name: GlobalPredicateGroup,
|
|
1598
|
+
properties: [{ name: "name" }, {
|
|
1599
|
+
name: "predicates",
|
|
1600
|
+
defaultValue: []
|
|
1601
|
+
}]
|
|
1602
|
+
};
|
|
1603
|
+
case Globals: return {
|
|
1604
|
+
name: Globals,
|
|
1605
|
+
properties: [
|
|
1606
|
+
{ name: "name" },
|
|
1607
|
+
{
|
|
1608
|
+
name: "predicates",
|
|
1609
|
+
defaultValue: []
|
|
1610
|
+
},
|
|
1611
|
+
{
|
|
1612
|
+
name: "styles",
|
|
1613
|
+
defaultValue: []
|
|
1614
|
+
}
|
|
1615
|
+
]
|
|
1616
|
+
};
|
|
1617
|
+
case GlobalStyle: return {
|
|
1618
|
+
name: GlobalStyle,
|
|
1619
|
+
properties: [
|
|
1620
|
+
{ name: "id" },
|
|
1621
|
+
{
|
|
1622
|
+
name: "props",
|
|
1623
|
+
defaultValue: []
|
|
1624
|
+
},
|
|
1625
|
+
{ name: "targets" }
|
|
1626
|
+
]
|
|
1627
|
+
};
|
|
1628
|
+
case GlobalStyleGroup: return {
|
|
1629
|
+
name: GlobalStyleGroup,
|
|
1630
|
+
properties: [{ name: "id" }, {
|
|
1631
|
+
name: "styles",
|
|
1632
|
+
defaultValue: []
|
|
1633
|
+
}]
|
|
1634
|
+
};
|
|
1635
|
+
case GlobalStyleId: return {
|
|
1636
|
+
name: GlobalStyleId,
|
|
1637
|
+
properties: [{ name: "name" }]
|
|
1638
|
+
};
|
|
1639
|
+
case HexColor: return {
|
|
1640
|
+
name: HexColor,
|
|
1641
|
+
properties: [{ name: "hex" }]
|
|
1642
|
+
};
|
|
1643
|
+
case IconColorProperty: return {
|
|
1644
|
+
name: IconColorProperty,
|
|
1645
|
+
properties: [
|
|
1646
|
+
{ name: "customColor" },
|
|
1647
|
+
{ name: "key" },
|
|
1648
|
+
{ name: "themeColor" }
|
|
1649
|
+
]
|
|
1650
|
+
};
|
|
1651
|
+
case IconPositionProperty: return {
|
|
1652
|
+
name: IconPositionProperty,
|
|
1653
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1654
|
+
};
|
|
1655
|
+
case IconProperty: return {
|
|
1656
|
+
name: IconProperty,
|
|
1657
|
+
properties: [
|
|
1658
|
+
{ name: "key" },
|
|
1659
|
+
{ name: "libicon" },
|
|
1660
|
+
{ name: "value" }
|
|
1661
|
+
]
|
|
1662
|
+
};
|
|
1663
|
+
case IconSizeProperty: return {
|
|
1664
|
+
name: IconSizeProperty,
|
|
1665
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1666
|
+
};
|
|
1667
|
+
case Imported: return {
|
|
1668
|
+
name: Imported,
|
|
1669
|
+
properties: [{ name: "imported" }, { name: "prev" }]
|
|
1670
|
+
};
|
|
1671
|
+
case ImportsFromPoject: return {
|
|
1672
|
+
name: ImportsFromPoject,
|
|
1673
|
+
properties: [{ name: "imports" }, { name: "project" }]
|
|
1674
|
+
};
|
|
1675
|
+
case IncomingRelationExpr: return {
|
|
1676
|
+
name: IncomingRelationExpr,
|
|
1677
|
+
properties: [{ name: "to" }]
|
|
1678
|
+
};
|
|
1679
|
+
case InOutRelationExpr: return {
|
|
1680
|
+
name: InOutRelationExpr,
|
|
1681
|
+
properties: [{ name: "inout" }]
|
|
1682
|
+
};
|
|
1683
|
+
case LibIcon: return {
|
|
1684
|
+
name: LibIcon,
|
|
1685
|
+
properties: [{ name: "name" }]
|
|
1686
|
+
};
|
|
1687
|
+
case LikeC4Grammar$1: return {
|
|
1688
|
+
name: LikeC4Grammar$1,
|
|
1689
|
+
properties: [
|
|
1690
|
+
{
|
|
1691
|
+
name: "deployments",
|
|
1692
|
+
defaultValue: []
|
|
1693
|
+
},
|
|
1694
|
+
{
|
|
1695
|
+
name: "globals",
|
|
1696
|
+
defaultValue: []
|
|
1697
|
+
},
|
|
1698
|
+
{
|
|
1699
|
+
name: "imports",
|
|
1700
|
+
defaultValue: []
|
|
1701
|
+
},
|
|
1702
|
+
{
|
|
1703
|
+
name: "likec4lib",
|
|
1704
|
+
defaultValue: []
|
|
1705
|
+
},
|
|
1706
|
+
{
|
|
1707
|
+
name: "models",
|
|
1708
|
+
defaultValue: []
|
|
1709
|
+
},
|
|
1710
|
+
{
|
|
1711
|
+
name: "specifications",
|
|
1712
|
+
defaultValue: []
|
|
1713
|
+
},
|
|
1714
|
+
{
|
|
1715
|
+
name: "views",
|
|
1716
|
+
defaultValue: []
|
|
1717
|
+
}
|
|
1718
|
+
]
|
|
1719
|
+
};
|
|
1720
|
+
case LikeC4Lib: return {
|
|
1721
|
+
name: LikeC4Lib,
|
|
1722
|
+
properties: [{
|
|
1723
|
+
name: "icons",
|
|
1724
|
+
defaultValue: []
|
|
1725
|
+
}]
|
|
1726
|
+
};
|
|
1727
|
+
case LineProperty: return {
|
|
1728
|
+
name: LineProperty,
|
|
1729
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1730
|
+
};
|
|
1731
|
+
case LinkProperty: return {
|
|
1732
|
+
name: LinkProperty,
|
|
1733
|
+
properties: [
|
|
1734
|
+
{ name: "key" },
|
|
1735
|
+
{ name: "title" },
|
|
1736
|
+
{ name: "value" }
|
|
1737
|
+
]
|
|
1738
|
+
};
|
|
1739
|
+
case MarkdownOrString: return {
|
|
1740
|
+
name: MarkdownOrString,
|
|
1741
|
+
properties: [{ name: "markdown" }, { name: "text" }]
|
|
1742
|
+
};
|
|
1743
|
+
case MetadataArray: return {
|
|
1744
|
+
name: MetadataArray,
|
|
1745
|
+
properties: [{
|
|
1746
|
+
name: "values",
|
|
1747
|
+
defaultValue: []
|
|
1748
|
+
}]
|
|
1749
|
+
};
|
|
1750
|
+
case MetadataAttribute: return {
|
|
1751
|
+
name: MetadataAttribute,
|
|
1752
|
+
properties: [
|
|
1753
|
+
{
|
|
1754
|
+
name: "boolValue",
|
|
1755
|
+
defaultValue: false
|
|
1756
|
+
},
|
|
1757
|
+
{ name: "key" },
|
|
1758
|
+
{ name: "value" }
|
|
1759
|
+
]
|
|
1760
|
+
};
|
|
1761
|
+
case MetadataBody: return {
|
|
1762
|
+
name: MetadataBody,
|
|
1763
|
+
properties: [{
|
|
1764
|
+
name: "props",
|
|
1765
|
+
defaultValue: []
|
|
1766
|
+
}]
|
|
1767
|
+
};
|
|
1768
|
+
case Model: return {
|
|
1769
|
+
name: Model,
|
|
1770
|
+
properties: [{
|
|
1771
|
+
name: "elements",
|
|
1772
|
+
defaultValue: []
|
|
1773
|
+
}, { name: "name" }]
|
|
1774
|
+
};
|
|
1775
|
+
case ModelDeployments: return {
|
|
1776
|
+
name: ModelDeployments,
|
|
1777
|
+
properties: [{
|
|
1778
|
+
name: "elements",
|
|
1779
|
+
defaultValue: []
|
|
1780
|
+
}, { name: "name" }]
|
|
1781
|
+
};
|
|
1782
|
+
case ModelViews: return {
|
|
1783
|
+
name: ModelViews,
|
|
1784
|
+
properties: [
|
|
1785
|
+
{ name: "folder" },
|
|
1786
|
+
{ name: "name" },
|
|
1787
|
+
{
|
|
1788
|
+
name: "styles",
|
|
1789
|
+
defaultValue: []
|
|
1790
|
+
},
|
|
1791
|
+
{
|
|
1792
|
+
name: "views",
|
|
1793
|
+
defaultValue: []
|
|
1794
|
+
}
|
|
1795
|
+
]
|
|
1796
|
+
};
|
|
1797
|
+
case MultipleProperty: return {
|
|
1798
|
+
name: MultipleProperty,
|
|
1799
|
+
properties: [{ name: "key" }, {
|
|
1800
|
+
name: "value",
|
|
1801
|
+
defaultValue: false
|
|
1802
|
+
}]
|
|
1803
|
+
};
|
|
1804
|
+
case NavigateToProperty: return {
|
|
1805
|
+
name: NavigateToProperty,
|
|
1806
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1807
|
+
};
|
|
1808
|
+
case NotationProperty: return {
|
|
1809
|
+
name: NotationProperty,
|
|
1810
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1811
|
+
};
|
|
1812
|
+
case NotesProperty: return {
|
|
1813
|
+
name: NotesProperty,
|
|
1814
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1815
|
+
};
|
|
1816
|
+
case OpacityProperty: return {
|
|
1817
|
+
name: OpacityProperty,
|
|
1818
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1819
|
+
};
|
|
1820
|
+
case OutgoingRelationExpr: return {
|
|
1821
|
+
name: OutgoingRelationExpr,
|
|
1822
|
+
properties: [
|
|
1823
|
+
{ name: "dotKind" },
|
|
1824
|
+
{ name: "from" },
|
|
1825
|
+
{
|
|
1826
|
+
name: "isBidirectional",
|
|
1827
|
+
defaultValue: false
|
|
1828
|
+
},
|
|
1829
|
+
{ name: "kind" }
|
|
1830
|
+
]
|
|
1831
|
+
};
|
|
1832
|
+
case PaddingSizeProperty: return {
|
|
1833
|
+
name: PaddingSizeProperty,
|
|
1834
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1835
|
+
};
|
|
1836
|
+
case Relation: return {
|
|
1837
|
+
name: Relation,
|
|
1838
|
+
properties: [
|
|
1839
|
+
{ name: "body" },
|
|
1840
|
+
{ name: "description" },
|
|
1841
|
+
{ name: "dotKind" },
|
|
1842
|
+
{ name: "kind" },
|
|
1843
|
+
{ name: "source" },
|
|
1844
|
+
{ name: "tags" },
|
|
1845
|
+
{ name: "target" },
|
|
1846
|
+
{ name: "technology" },
|
|
1847
|
+
{ name: "title" }
|
|
1848
|
+
]
|
|
1849
|
+
};
|
|
1850
|
+
case RelationBody: return {
|
|
1851
|
+
name: RelationBody,
|
|
1852
|
+
properties: [{
|
|
1853
|
+
name: "props",
|
|
1854
|
+
defaultValue: []
|
|
1855
|
+
}, { name: "tags" }]
|
|
1856
|
+
};
|
|
1857
|
+
case RelationExprWhere: return {
|
|
1858
|
+
name: RelationExprWhere,
|
|
1859
|
+
properties: [{ name: "subject" }, { name: "where" }]
|
|
1860
|
+
};
|
|
1861
|
+
case RelationExprWith: return {
|
|
1862
|
+
name: RelationExprWith,
|
|
1863
|
+
properties: [{ name: "custom" }, { name: "subject" }]
|
|
1864
|
+
};
|
|
1865
|
+
case RelationKindDotRef: return {
|
|
1866
|
+
name: RelationKindDotRef,
|
|
1867
|
+
properties: [{ name: "kind" }]
|
|
1868
|
+
};
|
|
1869
|
+
case RelationNavigateToProperty: return {
|
|
1870
|
+
name: RelationNavigateToProperty,
|
|
1871
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1872
|
+
};
|
|
1873
|
+
case RelationshipKind: return {
|
|
1874
|
+
name: RelationshipKind,
|
|
1875
|
+
properties: [{ name: "name" }]
|
|
1876
|
+
};
|
|
1877
|
+
case RelationStringProperty: return {
|
|
1878
|
+
name: RelationStringProperty,
|
|
1879
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1880
|
+
};
|
|
1881
|
+
case RelationStyleProperty: return {
|
|
1882
|
+
name: RelationStyleProperty,
|
|
1883
|
+
properties: [{ name: "key" }, {
|
|
1884
|
+
name: "props",
|
|
1885
|
+
defaultValue: []
|
|
1886
|
+
}]
|
|
1887
|
+
};
|
|
1888
|
+
case RGBAColor: return {
|
|
1889
|
+
name: RGBAColor,
|
|
1890
|
+
properties: [
|
|
1891
|
+
{ name: "alpha" },
|
|
1892
|
+
{ name: "blue" },
|
|
1893
|
+
{ name: "green" },
|
|
1894
|
+
{ name: "red" }
|
|
1895
|
+
]
|
|
1896
|
+
};
|
|
1897
|
+
case ShapeProperty: return {
|
|
1898
|
+
name: ShapeProperty,
|
|
1899
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1900
|
+
};
|
|
1901
|
+
case ShapeSizeProperty: return {
|
|
1902
|
+
name: ShapeSizeProperty,
|
|
1903
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1904
|
+
};
|
|
1905
|
+
case SpecificationColor: return {
|
|
1906
|
+
name: SpecificationColor,
|
|
1907
|
+
properties: [{ name: "color" }, { name: "name" }]
|
|
1908
|
+
};
|
|
1909
|
+
case SpecificationDeploymentNodeKind: return {
|
|
1910
|
+
name: SpecificationDeploymentNodeKind,
|
|
1911
|
+
properties: [
|
|
1912
|
+
{ name: "kind" },
|
|
1913
|
+
{
|
|
1914
|
+
name: "props",
|
|
1915
|
+
defaultValue: []
|
|
1916
|
+
},
|
|
1917
|
+
{ name: "tags" }
|
|
1918
|
+
]
|
|
1919
|
+
};
|
|
1920
|
+
case SpecificationElementKind: return {
|
|
1921
|
+
name: SpecificationElementKind,
|
|
1922
|
+
properties: [
|
|
1923
|
+
{ name: "kind" },
|
|
1924
|
+
{
|
|
1925
|
+
name: "props",
|
|
1926
|
+
defaultValue: []
|
|
1927
|
+
},
|
|
1928
|
+
{ name: "tags" }
|
|
1929
|
+
]
|
|
1930
|
+
};
|
|
1931
|
+
case SpecificationElementStringProperty: return {
|
|
1932
|
+
name: SpecificationElementStringProperty,
|
|
1933
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1934
|
+
};
|
|
1935
|
+
case SpecificationRelationshipKind: return {
|
|
1936
|
+
name: SpecificationRelationshipKind,
|
|
1937
|
+
properties: [
|
|
1938
|
+
{ name: "kind" },
|
|
1939
|
+
{
|
|
1940
|
+
name: "props",
|
|
1941
|
+
defaultValue: []
|
|
1942
|
+
},
|
|
1943
|
+
{ name: "tags" }
|
|
1944
|
+
]
|
|
1945
|
+
};
|
|
1946
|
+
case SpecificationRelationshipStringProperty: return {
|
|
1947
|
+
name: SpecificationRelationshipStringProperty,
|
|
1948
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
1949
|
+
};
|
|
1950
|
+
case SpecificationRule: return {
|
|
1951
|
+
name: SpecificationRule,
|
|
1952
|
+
properties: [
|
|
1953
|
+
{
|
|
1954
|
+
name: "colors",
|
|
1955
|
+
defaultValue: []
|
|
1956
|
+
},
|
|
1957
|
+
{
|
|
1958
|
+
name: "deploymentNodes",
|
|
1959
|
+
defaultValue: []
|
|
1960
|
+
},
|
|
1961
|
+
{
|
|
1962
|
+
name: "elements",
|
|
1963
|
+
defaultValue: []
|
|
1964
|
+
},
|
|
1965
|
+
{ name: "name" },
|
|
1966
|
+
{
|
|
1967
|
+
name: "relationships",
|
|
1968
|
+
defaultValue: []
|
|
1969
|
+
},
|
|
1970
|
+
{
|
|
1971
|
+
name: "tags",
|
|
1972
|
+
defaultValue: []
|
|
1973
|
+
}
|
|
1974
|
+
]
|
|
1975
|
+
};
|
|
1976
|
+
case SpecificationTag: return {
|
|
1977
|
+
name: SpecificationTag,
|
|
1978
|
+
properties: [{ name: "color" }, { name: "tag" }]
|
|
1979
|
+
};
|
|
1980
|
+
case StepsBlock: return {
|
|
1981
|
+
name: StepsBlock,
|
|
1982
|
+
properties: [{
|
|
1983
|
+
name: "steps",
|
|
1984
|
+
defaultValue: []
|
|
1985
|
+
}]
|
|
1986
|
+
};
|
|
1987
|
+
case StrictFqnElementRef: return {
|
|
1988
|
+
name: StrictFqnElementRef,
|
|
1989
|
+
properties: [{ name: "el" }, { name: "parent" }]
|
|
1990
|
+
};
|
|
1991
|
+
case StrictFqnRef: return {
|
|
1992
|
+
name: StrictFqnRef,
|
|
1993
|
+
properties: [{ name: "parent" }, { name: "value" }]
|
|
1994
|
+
};
|
|
1995
|
+
case "Tag": return {
|
|
1996
|
+
name: "Tag",
|
|
1997
|
+
properties: [{ name: "name" }]
|
|
1998
|
+
};
|
|
1999
|
+
case TagRef: return {
|
|
2000
|
+
name: TagRef,
|
|
2001
|
+
properties: [{ name: "tag" }]
|
|
2002
|
+
};
|
|
2003
|
+
case Tags: return {
|
|
2004
|
+
name: Tags,
|
|
2005
|
+
properties: [{ name: "prev" }, {
|
|
2006
|
+
name: "values",
|
|
2007
|
+
defaultValue: []
|
|
2008
|
+
}]
|
|
2009
|
+
};
|
|
2010
|
+
case TextSizeProperty: return {
|
|
2011
|
+
name: TextSizeProperty,
|
|
2012
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
2013
|
+
};
|
|
2014
|
+
case ViewRef: return {
|
|
2015
|
+
name: ViewRef,
|
|
2016
|
+
properties: [{ name: "view" }]
|
|
2017
|
+
};
|
|
2018
|
+
case ViewRuleAncestors: return {
|
|
2019
|
+
name: ViewRuleAncestors,
|
|
2020
|
+
properties: [{ name: "key" }, {
|
|
2021
|
+
name: "value",
|
|
2022
|
+
defaultValue: false
|
|
2023
|
+
}]
|
|
2024
|
+
};
|
|
2025
|
+
case ViewRuleAutoLayout: return {
|
|
2026
|
+
name: ViewRuleAutoLayout,
|
|
2027
|
+
properties: [
|
|
2028
|
+
{ name: "direction" },
|
|
2029
|
+
{ name: "nodeSep" },
|
|
2030
|
+
{ name: "rankSep" }
|
|
2031
|
+
]
|
|
2032
|
+
};
|
|
2033
|
+
case ViewRuleGlobalPredicateRef: return {
|
|
2034
|
+
name: ViewRuleGlobalPredicateRef,
|
|
2035
|
+
properties: [{ name: "predicate" }]
|
|
2036
|
+
};
|
|
2037
|
+
case ViewRuleGlobalStyle: return {
|
|
2038
|
+
name: ViewRuleGlobalStyle,
|
|
2039
|
+
properties: [{ name: "style" }]
|
|
2040
|
+
};
|
|
2041
|
+
case ViewRuleGroup: return {
|
|
2042
|
+
name: ViewRuleGroup,
|
|
2043
|
+
properties: [
|
|
2044
|
+
{
|
|
2045
|
+
name: "groupRules",
|
|
2046
|
+
defaultValue: []
|
|
2047
|
+
},
|
|
2048
|
+
{
|
|
2049
|
+
name: "props",
|
|
2050
|
+
defaultValue: []
|
|
2051
|
+
},
|
|
2052
|
+
{ name: "title" }
|
|
2053
|
+
]
|
|
2054
|
+
};
|
|
2055
|
+
case ViewRulePredicate: return {
|
|
2056
|
+
name: ViewRulePredicate,
|
|
2057
|
+
properties: [{ name: "exprs" }, {
|
|
2058
|
+
name: "isInclude",
|
|
2059
|
+
defaultValue: false
|
|
2060
|
+
}]
|
|
2061
|
+
};
|
|
2062
|
+
case ViewRuleRank: return {
|
|
2063
|
+
name: ViewRuleRank,
|
|
2064
|
+
properties: [{ name: "targets" }, { name: "value" }]
|
|
2065
|
+
};
|
|
2066
|
+
case ViewRuleStyle: return {
|
|
2067
|
+
name: ViewRuleStyle,
|
|
2068
|
+
properties: [{
|
|
2069
|
+
name: "props",
|
|
2070
|
+
defaultValue: []
|
|
2071
|
+
}, { name: "targets" }]
|
|
2072
|
+
};
|
|
2073
|
+
case ViewStringProperty: return {
|
|
2074
|
+
name: ViewStringProperty,
|
|
2075
|
+
properties: [{ name: "key" }, { name: "value" }]
|
|
2076
|
+
};
|
|
2077
|
+
case WhereBinaryExpression: return {
|
|
2078
|
+
name: WhereBinaryExpression,
|
|
2079
|
+
properties: [
|
|
2080
|
+
{ name: "left" },
|
|
2081
|
+
{ name: "operator" },
|
|
2082
|
+
{ name: "right" }
|
|
2083
|
+
]
|
|
2084
|
+
};
|
|
2085
|
+
case WhereElementKind: return {
|
|
2086
|
+
name: WhereElementKind,
|
|
2087
|
+
properties: [
|
|
2088
|
+
{
|
|
2089
|
+
name: "not",
|
|
2090
|
+
defaultValue: false
|
|
2091
|
+
},
|
|
2092
|
+
{ name: "operator" },
|
|
2093
|
+
{ name: "value" }
|
|
2094
|
+
]
|
|
2095
|
+
};
|
|
2096
|
+
case WhereElementMetadata: return {
|
|
2097
|
+
name: WhereElementMetadata,
|
|
2098
|
+
properties: [
|
|
2099
|
+
{ name: "key" },
|
|
2100
|
+
{
|
|
2101
|
+
name: "not",
|
|
2102
|
+
defaultValue: false
|
|
2103
|
+
},
|
|
2104
|
+
{ name: "operator" },
|
|
2105
|
+
{ name: "value" }
|
|
2106
|
+
]
|
|
2107
|
+
};
|
|
2108
|
+
case WhereElementNegation: return {
|
|
2109
|
+
name: WhereElementNegation,
|
|
2110
|
+
properties: [{ name: "value" }]
|
|
2111
|
+
};
|
|
2112
|
+
case WhereElementTag: return {
|
|
2113
|
+
name: WhereElementTag,
|
|
2114
|
+
properties: [
|
|
2115
|
+
{
|
|
2116
|
+
name: "not",
|
|
2117
|
+
defaultValue: false
|
|
2118
|
+
},
|
|
2119
|
+
{ name: "operator" },
|
|
2120
|
+
{ name: "value" }
|
|
2121
|
+
]
|
|
2122
|
+
};
|
|
2123
|
+
case WhereRelationKind: return {
|
|
2124
|
+
name: WhereRelationKind,
|
|
2125
|
+
properties: [
|
|
2126
|
+
{
|
|
2127
|
+
name: "not",
|
|
2128
|
+
defaultValue: false
|
|
2129
|
+
},
|
|
2130
|
+
{ name: "operator" },
|
|
2131
|
+
{ name: "value" }
|
|
2132
|
+
]
|
|
2133
|
+
};
|
|
2134
|
+
case WhereRelationMetadata: return {
|
|
2135
|
+
name: WhereRelationMetadata,
|
|
2136
|
+
properties: [
|
|
2137
|
+
{ name: "key" },
|
|
2138
|
+
{
|
|
2139
|
+
name: "not",
|
|
2140
|
+
defaultValue: false
|
|
2141
|
+
},
|
|
2142
|
+
{ name: "operator" },
|
|
2143
|
+
{ name: "value" }
|
|
2144
|
+
]
|
|
2145
|
+
};
|
|
2146
|
+
case WhereRelationNegation: return {
|
|
2147
|
+
name: WhereRelationNegation,
|
|
2148
|
+
properties: [{ name: "value" }]
|
|
2149
|
+
};
|
|
2150
|
+
case WhereRelationParticipantKind: return {
|
|
2151
|
+
name: WhereRelationParticipantKind,
|
|
2152
|
+
properties: [
|
|
2153
|
+
{
|
|
2154
|
+
name: "not",
|
|
2155
|
+
defaultValue: false
|
|
2156
|
+
},
|
|
2157
|
+
{ name: "operator" },
|
|
2158
|
+
{ name: "participant" },
|
|
2159
|
+
{ name: "value" }
|
|
2160
|
+
]
|
|
2161
|
+
};
|
|
2162
|
+
case WhereRelationParticipantMetadata: return {
|
|
2163
|
+
name: WhereRelationParticipantMetadata,
|
|
2164
|
+
properties: [
|
|
2165
|
+
{ name: "key" },
|
|
2166
|
+
{
|
|
2167
|
+
name: "not",
|
|
2168
|
+
defaultValue: false
|
|
2169
|
+
},
|
|
2170
|
+
{ name: "operator" },
|
|
2171
|
+
{ name: "participant" },
|
|
2172
|
+
{ name: "value" }
|
|
2173
|
+
]
|
|
2174
|
+
};
|
|
2175
|
+
case WhereRelationParticipantTag: return {
|
|
2176
|
+
name: WhereRelationParticipantTag,
|
|
2177
|
+
properties: [
|
|
2178
|
+
{
|
|
2179
|
+
name: "not",
|
|
2180
|
+
defaultValue: false
|
|
2181
|
+
},
|
|
2182
|
+
{ name: "operator" },
|
|
2183
|
+
{ name: "participant" },
|
|
2184
|
+
{ name: "value" }
|
|
2185
|
+
]
|
|
2186
|
+
};
|
|
2187
|
+
case WhereRelationTag: return {
|
|
2188
|
+
name: WhereRelationTag,
|
|
2189
|
+
properties: [
|
|
2190
|
+
{
|
|
2191
|
+
name: "not",
|
|
2192
|
+
defaultValue: false
|
|
2193
|
+
},
|
|
2194
|
+
{ name: "operator" },
|
|
2195
|
+
{ name: "value" }
|
|
2196
|
+
]
|
|
2197
|
+
};
|
|
2198
|
+
case WildcardExpression: return {
|
|
2199
|
+
name: WildcardExpression,
|
|
2200
|
+
properties: [{
|
|
2201
|
+
name: "isWildcard",
|
|
2202
|
+
defaultValue: false
|
|
2203
|
+
}]
|
|
2204
|
+
};
|
|
2205
|
+
case Step: return {
|
|
2206
|
+
name: Step,
|
|
2207
|
+
properties: [
|
|
2208
|
+
{ name: "custom" },
|
|
2209
|
+
{ name: "dotKind" },
|
|
2210
|
+
{
|
|
2211
|
+
name: "isBackward",
|
|
2212
|
+
defaultValue: false
|
|
2213
|
+
},
|
|
2214
|
+
{ name: "kind" },
|
|
2215
|
+
{ name: "source" },
|
|
2216
|
+
{ name: "target" },
|
|
2217
|
+
{ name: "title" }
|
|
2218
|
+
]
|
|
2219
|
+
};
|
|
2220
|
+
case StepSeries: return {
|
|
2221
|
+
name: StepSeries,
|
|
2222
|
+
properties: [
|
|
2223
|
+
{ name: "custom" },
|
|
2224
|
+
{ name: "dotKind" },
|
|
2225
|
+
{ name: "kind" },
|
|
2226
|
+
{ name: "source" },
|
|
2227
|
+
{ name: "target" },
|
|
2228
|
+
{ name: "title" }
|
|
2229
|
+
]
|
|
2230
|
+
};
|
|
2231
|
+
case SubflowStep: return {
|
|
2232
|
+
name: SubflowStep,
|
|
2233
|
+
properties: [
|
|
2234
|
+
{ name: "kind" },
|
|
2235
|
+
{
|
|
2236
|
+
name: "steps",
|
|
2237
|
+
defaultValue: []
|
|
2238
|
+
},
|
|
2239
|
+
{ name: "title" }
|
|
2240
|
+
]
|
|
2241
|
+
};
|
|
2242
|
+
case TryBlock: return {
|
|
2243
|
+
name: TryBlock,
|
|
2244
|
+
properties: [{
|
|
2245
|
+
name: "steps",
|
|
2246
|
+
defaultValue: []
|
|
2247
|
+
}, { name: "title" }]
|
|
2248
|
+
};
|
|
2249
|
+
default: return {
|
|
2250
|
+
name: type,
|
|
2251
|
+
properties: []
|
|
2252
|
+
};
|
|
2253
|
+
}
|
|
2254
|
+
}
|
|
2255
|
+
};
|
|
2256
|
+
const reflection = new LikeC4AstReflection();
|
|
2257
|
+
|
|
2258
|
+
//#endregion
|
|
2259
|
+
//#region src/generated/grammar.ts
|
|
2260
|
+
let loadedLikeC4Grammar;
|
|
2261
|
+
const LikeC4Grammar = () => loadedLikeC4Grammar ?? (loadedLikeC4Grammar = loadGrammarFromJson("{\"$type\":\"Grammar\",\"isDeclared\":true,\"name\":\"LikeC4\",\"rules\":[{\"$type\":\"ParserRule\",\"entry\":true,\"name\":\"LikeC4Grammar\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"imports\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@16\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"specifications\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@8\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"models\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@19\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"views\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@44\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"globals\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@132\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"deployments\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@117\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"likec4lib\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@1\"},\"arguments\":[]}}],\"cardinality\":\"*\"},\"definesHiddenTokens\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"LikeC4Lib\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"likec4lib\"},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Keyword\",\"value\":\"icons\"},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"icons\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@2\"},\"arguments\":[]},\"cardinality\":\"+\"},{\"$type\":\"Keyword\",\"value\":\"}\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"LibIcon\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@170\"},\"arguments\":[]}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementKind\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Tag\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationshipKind\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"CustomColor\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@173\"},\"arguments\":[]}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentNodeKind\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SpecificationRule\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"specification\"}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"elements\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@9\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@12\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"relationships\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@14\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"colors\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@13\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"deploymentNodes\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@11\"},\"arguments\":[]}}],\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SpecificationElementKind\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"element\"},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@3\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@10\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@138\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@155\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SpecificationElementStringProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"title\"},{\"$type\":\"Keyword\",\"value\":\"description\"},{\"$type\":\"Keyword\",\"value\":\"technology\"},{\"$type\":\"Keyword\",\"value\":\"notation\"},{\"$type\":\"Keyword\",\"value\":\"summary\"}]}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SpecificationDeploymentNodeKind\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"deploymentNode\"},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@7\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@10\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@138\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@155\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SpecificationTag\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"tag\"},{\"$type\":\"Assignment\",\"feature\":\"tag\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@4\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"color\"},{\"$type\":\"Assignment\",\"feature\":\"color\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@167\"},\"arguments\":[]}}],\"cardinality\":\"?\"},{\"$type\":\"Keyword\",\"value\":\"}\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SpecificationColor\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"color\"},{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@6\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"color\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@167\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SpecificationRelationshipKind\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"relationship\"},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@5\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@138\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@158\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@15\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@141\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SpecificationRelationshipStringProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"title\"},{\"$type\":\"Keyword\",\"value\":\"description\"},{\"$type\":\"Keyword\",\"value\":\"technology\"},{\"$type\":\"Keyword\",\"value\":\"notation\"}]}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ImportsFromPoject\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"import\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"imports\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@17\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"}\"}]},{\"$type\":\"Assignment\",\"feature\":\"imports\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@17\"},\"arguments\":[]}}]},{\"$type\":\"Keyword\",\"value\":\"from\"},{\"$type\":\"Assignment\",\"feature\":\"project\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Imported\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"imported\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@21\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"Imported\"},\"feature\":\"prev\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\",\"},{\"$type\":\"Assignment\",\"feature\":\"imported\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@21\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}}],\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Tags\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"values\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@159\"},\"arguments\":[]},\"cardinality\":\"+\"},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"Tags\"},\"feature\":\"prev\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\",\"},{\"$type\":\"Assignment\",\"feature\":\"values\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@159\"},\"arguments\":[]},\"cardinality\":\"*\"}],\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Model\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"model\"}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"elements\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@20\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ModelElement\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@25\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@34\"},\"arguments\":[{\"$type\":\"NamedArgument\",\"value\":{\"$type\":\"BooleanLiteral\",\"true\":true},\"calledByName\":false}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@21\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Element\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@3\"},\"deprecatedSyntax\":false}},{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@194\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@3\"},\"deprecatedSyntax\":false}}]}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"}],\"cardinality\":\"?\"}],\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@22\"},\"arguments\":[]},\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@23\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Assignment\",\"feature\":\"elements\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@34\"},\"arguments\":[{\"$type\":\"NamedArgument\",\"value\":{\"$type\":\"BooleanLiteral\",\"true\":false},\"calledByName\":false}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@21\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementProperty\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@24\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@155\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@138\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@142\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@39\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementStringProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"title\"},{\"$type\":\"Keyword\",\"value\":\"description\"},{\"$type\":\"Keyword\",\"value\":\"technology\"},{\"$type\":\"Keyword\",\"value\":\"summary\"}]}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ExtendElementOrRelation\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"extend\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"ExtendRelation\"}},{\"$type\":\"Assignment\",\"feature\":\"source\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]}},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"dotKind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@160\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"-[\"},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@5\"},\"deprecatedSyntax\":false}},{\"$type\":\"Keyword\",\"value\":\"]->\"}]},{\"$type\":\"Keyword\",\"value\":\"->\"}]},{\"$type\":\"Assignment\",\"feature\":\"target\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@28\"},\"arguments\":[]}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"ExtendElement\"}},{\"$type\":\"Assignment\",\"feature\":\"element\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@31\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@26\"},\"arguments\":[]}}]}]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ExtendElementBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@27\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Assignment\",\"feature\":\"elements\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@34\"},\"arguments\":[{\"$type\":\"NamedArgument\",\"value\":{\"$type\":\"BooleanLiteral\",\"true\":false},\"calledByName\":false}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@21\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ExtendElementProperty\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@138\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@39\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ExtendRelationBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@29\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ExtendRelationProperty\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@138\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@39\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementRef\",\"returnType\":{\"$ref\":\"#/interfaces@0\"},\"definition\":{\"$type\":\"Assignment\",\"feature\":\"modelElement\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"StrictFqnElementRef\",\"returnType\":{\"$ref\":\"#/interfaces@1\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"el\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@21\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"type\":{\"$ref\":\"#/interfaces@1\"},\"feature\":\"parent\",\"operator\":\"=\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@191\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"el\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@21\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"FqnRef\",\"returnType\":{\"$ref\":\"#/interfaces@2\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/types@1\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"type\":{\"$ref\":\"#/interfaces@2\"},\"feature\":\"parent\",\"operator\":\"=\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@191\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/types@1\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"StrictFqnRef\",\"returnType\":{\"$ref\":\"#/interfaces@3\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/types@1\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"type\":{\"$ref\":\"#/interfaces@3\"},\"feature\":\"parent\",\"operator\":\"=\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@191\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/types@1\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Relation\",\"parameters\":[{\"$type\":\"Parameter\",\"name\":\"isExplicit\"}],\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"guardCondition\":{\"$type\":\"ParameterReference\",\"parameter\":{\"$ref\":\"#/rules@34/parameters@0\"}},\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"source\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]}}]},{\"$type\":\"Group\",\"guardCondition\":{\"$type\":\"Negation\",\"value\":{\"$type\":\"ParameterReference\",\"parameter\":{\"$ref\":\"#/rules@34/parameters@0\"}}},\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"source\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]},\"cardinality\":\"?\"}]}]},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"dotKind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@160\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"-[\"},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@5\"},\"deprecatedSyntax\":false}},{\"$type\":\"Keyword\",\"value\":\"]->\"}]},{\"$type\":\"Keyword\",\"value\":\"->\"}]},{\"$type\":\"Assignment\",\"feature\":\"target\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"description\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"technology\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"}],\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@35\"},\"arguments\":[]},\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@36\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationProperty\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@37\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@89\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@38\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@138\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@39\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationStringProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"title\"},{\"$type\":\"Keyword\",\"value\":\"technology\"},{\"$type\":\"Keyword\",\"value\":\"description\"}]}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationStyleProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"style\"}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@158\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"MetadataProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"metadata\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@40\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"MetadataBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@41\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"MetadataAttribute\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@42\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"boolValue\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@183\"},\"arguments\":[]}}]},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"MetadataValue\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@43\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"MetadataArray\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"[\"},{\"$type\":\"Assignment\",\"feature\":\"values\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\",\"},{\"$type\":\"Assignment\",\"feature\":\"values\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]}}],\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"]\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ModelViews\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"views\"}},{\"$type\":\"Assignment\",\"feature\":\"folder\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"views\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@45\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"styles\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@82\"},\"arguments\":[]}}],\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"LikeC4ViewRule\",\"returnType\":{\"$ref\":\"#/types@2\"},\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@47\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@126\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@46\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementView\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"view\"},{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"extends\"},{\"$type\":\"Assignment\",\"feature\":\"extends\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@49\"},\"arguments\":[]}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"of\"},{\"$type\":\"Assignment\",\"feature\":\"viewOf\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@30\"},\"arguments\":[]}}]}],\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@51\"},\"arguments\":[]},\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DynamicView\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"dynamic\"},{\"$type\":\"Keyword\",\"value\":\"view\"},{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@52\"},\"arguments\":[]},\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRef\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"view\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/types@2\"},\"deprecatedSyntax\":false}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementViewRef\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"view\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@46\"},\"deprecatedSyntax\":false}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DynamicViewRef\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"view\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@47\"},\"deprecatedSyntax\":false}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementViewBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@55\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Assignment\",\"feature\":\"rules\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@58\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DynamicViewBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@53\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"steps\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@63\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"rules\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@62\"},\"arguments\":[]}}],\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DynamicViewProperty\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@54\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@55\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DynamicViewDisplayVariantProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"variant\"}},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@163\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewProperty\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@56\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@138\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewStringProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"title\"},{\"$type\":\"Keyword\",\"value\":\"description\"}]}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewLayoutDirection\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"TopBottom\"},{\"$type\":\"Keyword\",\"value\":\"LeftRight\"},{\"$type\":\"Keyword\",\"value\":\"BottomTop\"},{\"$type\":\"Keyword\",\"value\":\"RightLeft\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRule\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@76\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@77\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@61\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@82\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@83\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@59\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRuleRank\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"rank\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@60\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"targets\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@103\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RankValue\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"same\"},{\"$type\":\"Keyword\",\"value\":\"min\"},{\"$type\":\"Keyword\",\"value\":\"max\"},{\"$type\":\"Keyword\",\"value\":\"source\"},{\"$type\":\"Keyword\",\"value\":\"sink\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRuleGroup\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"group\"},{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@139\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@149\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@140\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Assignment\",\"feature\":\"groupRules\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@76\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@61\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DynamicViewRule\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@78\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@79\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@82\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@83\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"StepStatement\",\"returnType\":{\"$ref\":\"#/types@5\"},\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@65\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@71\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@67\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@73\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"fragment\":true,\"name\":\"StepsBlockFragment\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"steps\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@63\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SubflowStep\",\"returnType\":{\"$ref\":\"#/interfaces@5\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"opt\"},{\"$type\":\"Keyword\",\"value\":\"par\"},{\"$type\":\"Keyword\",\"value\":\"parallel\"},{\"$type\":\"Keyword\",\"value\":\"loop\"},{\"$type\":\"Keyword\",\"value\":\"when\"},{\"$type\":\"Keyword\",\"value\":\"if\"},{\"$type\":\"Keyword\",\"value\":\"else\"},{\"$type\":\"Keyword\",\"value\":\"break\"}]}},{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@64\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"StepsBlock\",\"returnType\":{\"$ref\":\"#/interfaces@4\"},\"definition\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@64\"},\"arguments\":[]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false,\"$comment\":\"/**\\n * Represents a block of step statements, i.e. { ... }\\n */\"},{\"$type\":\"ParserRule\",\"name\":\"TryStep\",\"returnType\":{\"$ref\":\"#/types@6\"},\"definition\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@68\"},\"arguments\":[]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"FinallyBlock\",\"returnType\":{\"$ref\":\"#/interfaces@8\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@69\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"type\":{\"$ref\":\"#/interfaces@8\"},\"feature\":\"tryCatch\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\"finally\"},{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"finally\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@66\"},\"arguments\":[]}}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"CatchBlock\",\"returnType\":{\"$ref\":\"#/interfaces@7\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@70\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"type\":{\"$ref\":\"#/interfaces@7\"},\"feature\":\"try\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\"catch\"},{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"catch\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@66\"},\"arguments\":[]}}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"TryBlock\",\"returnType\":{\"$ref\":\"#/interfaces@6\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"try\"},{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@64\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"AltSteps\",\"returnType\":{\"$ref\":\"#/interfaces@9\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"alt\"},{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"branches\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@65\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"fragment\":true,\"name\":\"StepTarget\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"target\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@30\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"custom\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@87\"},\"arguments\":[]},\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"StepOrSeries\",\"returnType\":{\"$ref\":\"#/types@7\"},\"definition\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@74\"},\"arguments\":[]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"StepSeries\",\"returnType\":{\"$ref\":\"#/interfaces@12\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@75\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"type\":{\"$ref\":\"#/interfaces@12\"},\"feature\":\"source\",\"operator\":\"=\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"dotKind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@160\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"->\"},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"-[\"},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@5\"},\"deprecatedSyntax\":false}},{\"$type\":\"Keyword\",\"value\":\"]->\"}]}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@72\"},\"arguments\":[]}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Step\",\"returnType\":{\"$ref\":\"#/interfaces@11\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"source\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@30\"},\"arguments\":[]}},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"isBackward\",\"operator\":\"?=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"<-\"}},{\"$type\":\"Assignment\",\"feature\":\"dotKind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@160\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"->\"},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"-[\"},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@5\"},\"deprecatedSyntax\":false}},{\"$type\":\"Keyword\",\"value\":\"]->\"}]}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@72\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRulePredicate\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"isInclude\",\"operator\":\"?=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"include\"}},{\"$type\":\"Keyword\",\"value\":\"exclude\"}]},{\"$type\":\"Assignment\",\"feature\":\"exprs\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@90\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRuleGlobalPredicateRef\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"global\"},{\"$type\":\"Keyword\",\"value\":\"predicate\"},{\"$type\":\"Assignment\",\"feature\":\"predicate\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@133\"},\"deprecatedSyntax\":false}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DynamicViewIncludePredicate\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"include\"},{\"$type\":\"Assignment\",\"feature\":\"exprs\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@90\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DynamicViewGlobalPredicateRef\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"global\"},{\"$type\":\"Keyword\",\"value\":\"predicate\"},{\"$type\":\"Assignment\",\"feature\":\"predicate\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@134\"},\"deprecatedSyntax\":false}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRuleStyle\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"style\"},{\"$type\":\"Assignment\",\"feature\":\"targets\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@103\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@154\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@84\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRuleGlobalStyle\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"global\"},{\"$type\":\"Keyword\",\"value\":\"style\"},{\"$type\":\"Assignment\",\"feature\":\"style\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@135\"},\"deprecatedSyntax\":false}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRuleStyleOrGlobalRef\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@80\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@81\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRuleAutoLayout\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"autoLayout\"},{\"$type\":\"Assignment\",\"feature\":\"direction\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@57\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"rankSep\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@199\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"nodeSep\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@199\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"NotationProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"notation\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"NotesProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"notes\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@172\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"CustomElementProperties\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@88\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@24\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@84\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@85\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@154\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"CustomRelationProperties\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@89\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@37\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@84\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@85\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@158\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@141\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"NavigateToProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"navigateTo\"}},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@48\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationNavigateToProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"navigateTo\"}},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@50\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Expressions\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@91\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"Expressions\"},\"feature\":\"prev\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\",\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@91\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ExpressionV2\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@94\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@92\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"FqnExprOrWith\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@93\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"FqnExprWith\"},\"feature\":\"subject\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\"with\"},{\"$type\":\"Assignment\",\"feature\":\"custom\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@86\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"FqnExprOrWhere\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@96\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"FqnExprWhere\"},\"feature\":\"subject\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\"where\"},{\"$type\":\"Assignment\",\"feature\":\"where\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@104\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationExprOrWith\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@95\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"RelationExprWith\"},\"feature\":\"subject\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\"with\"},{\"$type\":\"Assignment\",\"feature\":\"custom\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@87\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationExprOrWhere\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@98\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"RelationExprWhere\"},\"feature\":\"subject\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\"where\"},{\"$type\":\"Assignment\",\"feature\":\"where\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@111\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"FqnExpr\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WildcardExpression\"}},{\"$type\":\"Assignment\",\"feature\":\"isWildcard\",\"operator\":\"?=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"*\"}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"ElementTagExpression\"}},{\"$type\":\"Keyword\",\"value\":\"element.tag\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@178\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"tag\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@159\"},\"arguments\":[]}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"ElementKindExpression\"}},{\"$type\":\"Keyword\",\"value\":\"element.kind\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@178\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@3\"},\"deprecatedSyntax\":false}}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@97\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"FqnRefExpr\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"ref\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"selector\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@188\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@189\"},\"arguments\":[]}]},\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationExpr\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@99\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@101\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"InOutRelationExpr\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"RelationExpr\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@100\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"InOutRelationExpr\"},\"feature\":\"inout\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\"->\"}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"IncomingRelationExpr\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"->\"},{\"$type\":\"Assignment\",\"feature\":\"to\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@96\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DirectedRelationExpr\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"RelationExpr\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@102\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"DirectedRelationExpr\"},\"feature\":\"source\",\"operator\":\"=\"},{\"$type\":\"Assignment\",\"feature\":\"target\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@96\"},\"arguments\":[]}}],\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"OutgoingRelationExpr\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"from\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@96\"},\"arguments\":[]}},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"isBidirectional\",\"operator\":\"?=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"<->\"}},{\"$type\":\"Assignment\",\"feature\":\"dotKind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@160\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"->\"},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"-[\"},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@5\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}},{\"$type\":\"Keyword\",\"value\":\"]->\"}]}]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"FqnExpressions\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@96\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"FqnExpressions\"},\"feature\":\"prev\",\"operator\":\"=\"},{\"$type\":\"Keyword\",\"value\":\",\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@96\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereElementExpression\",\"definition\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@105\"},\"arguments\":[]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereElementOr\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereElementExpression\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@106\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereBinaryExpression\"},\"feature\":\"left\",\"operator\":\"=\"},{\"$type\":\"Assignment\",\"feature\":\"operator\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"or\"}},{\"$type\":\"Assignment\",\"feature\":\"right\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@106\"},\"arguments\":[]}}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereElementAnd\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereElementExpression\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@107\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereBinaryExpression\"},\"feature\":\"left\",\"operator\":\"=\"},{\"$type\":\"Assignment\",\"feature\":\"operator\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"and\"}},{\"$type\":\"Assignment\",\"feature\":\"right\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@107\"},\"arguments\":[]}}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereElementPrimary\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereElementExpression\"},\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"(\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@104\"},\"arguments\":[]},{\"$type\":\"Keyword\",\"value\":\")\"}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@108\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@109\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereElementNegation\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"not\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@104\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereElement\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereElementMetadata\"}},{\"$type\":\"Keyword\",\"value\":\"metadata\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@191\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@177\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@110\"},\"arguments\":[]}}],\"cardinality\":\"?\"}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereElementTag\"}},{\"$type\":\"Keyword\",\"value\":\"tag\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@177\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@159\"},\"arguments\":[]}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereElementKind\"}},{\"$type\":\"Keyword\",\"value\":\"kind\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@177\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/types@8\"},\"deprecatedSyntax\":false}}]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"MetadataFilterValue\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@183\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereRelationExpression\",\"definition\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@112\"},\"arguments\":[]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereRelationOr\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereRelationExpression\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@113\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereBinaryExpression\"},\"feature\":\"left\",\"operator\":\"=\"},{\"$type\":\"Assignment\",\"feature\":\"operator\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"or\"}},{\"$type\":\"Assignment\",\"feature\":\"right\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@113\"},\"arguments\":[]}}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereRelationAnd\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereRelationExpression\"},\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@114\"},\"arguments\":[]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereBinaryExpression\"},\"feature\":\"left\",\"operator\":\"=\"},{\"$type\":\"Assignment\",\"feature\":\"operator\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"and\"}},{\"$type\":\"Assignment\",\"feature\":\"right\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@114\"},\"arguments\":[]}}],\"cardinality\":\"*\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereRelationPrimary\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereRelationExpression\"},\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"(\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@111\"},\"arguments\":[]},{\"$type\":\"Keyword\",\"value\":\")\"}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@115\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@116\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereRelationNegation\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"not\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@111\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"WhereRelation\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereRelationParticipantMetadata\"}},{\"$type\":\"Assignment\",\"feature\":\"participant\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@166\"},\"arguments\":[]}},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@191\"},\"arguments\":[]},{\"$type\":\"Keyword\",\"value\":\"metadata\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@191\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@177\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@110\"},\"arguments\":[]}}],\"cardinality\":\"?\"}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereRelationParticipantKind\"}},{\"$type\":\"Assignment\",\"feature\":\"participant\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@166\"},\"arguments\":[]}},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@191\"},\"arguments\":[]},{\"$type\":\"Keyword\",\"value\":\"kind\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@177\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/types@8\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereRelationParticipantTag\"}},{\"$type\":\"Assignment\",\"feature\":\"participant\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@166\"},\"arguments\":[]}},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@191\"},\"arguments\":[]},{\"$type\":\"Keyword\",\"value\":\"tag\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@177\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@159\"},\"arguments\":[]}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereRelationMetadata\"}},{\"$type\":\"Keyword\",\"value\":\"metadata\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@191\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@177\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@110\"},\"arguments\":[]}}],\"cardinality\":\"?\"}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereRelationKind\"}},{\"$type\":\"Keyword\",\"value\":\"kind\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@177\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@5\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Action\",\"inferredType\":{\"$type\":\"InferredType\",\"name\":\"WhereRelationTag\"}},{\"$type\":\"Keyword\",\"value\":\"tag\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@177\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@159\"},\"arguments\":[]}}]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ModelDeployments\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"deployment\"}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"elements\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@118\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@124\"},\"arguments\":[{\"$type\":\"NamedArgument\",\"value\":{\"$type\":\"BooleanLiteral\",\"true\":true},\"calledByName\":false}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@122\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentNode\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@7\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}},{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@194\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@7\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]},\"deprecatedSyntax\":false}}]}]},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"summary\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@119\"},\"arguments\":[]},\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentNodeBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@23\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Assignment\",\"feature\":\"elements\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@120\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@124\"},\"arguments\":[{\"$type\":\"NamedArgument\",\"value\":{\"$type\":\"BooleanLiteral\",\"true\":false},\"calledByName\":false}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@118\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeployedInstance\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@194\"},\"arguments\":[]}],\"cardinality\":\"?\"},{\"$type\":\"Keyword\",\"value\":\"instanceOf\"},{\"$type\":\"Assignment\",\"feature\":\"target\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@30\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"summary\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@121\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeployedInstanceBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@23\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Assignment\",\"feature\":\"elements\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@124\"},\"arguments\":[{\"$type\":\"NamedArgument\",\"value\":{\"$type\":\"BooleanLiteral\",\"true\":false},\"calledByName\":false}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ExtendDeployment\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"extend\"},{\"$type\":\"Assignment\",\"feature\":\"deploymentNode\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@33\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@123\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ExtendDeploymentBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@27\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Assignment\",\"feature\":\"elements\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@120\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@124\"},\"arguments\":[{\"$type\":\"NamedArgument\",\"value\":{\"$type\":\"BooleanLiteral\",\"true\":true},\"calledByName\":false}]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@118\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentRelation\",\"parameters\":[{\"$type\":\"Parameter\",\"name\":\"isExplicit\"}],\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Group\",\"guardCondition\":{\"$type\":\"ParameterReference\",\"parameter\":{\"$ref\":\"#/rules@124/parameters@0\"}},\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"source\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]}}]},{\"$type\":\"Group\",\"guardCondition\":{\"$type\":\"Negation\",\"value\":{\"$type\":\"ParameterReference\",\"parameter\":{\"$ref\":\"#/rules@124/parameters@0\"}}},\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"source\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]},\"cardinality\":\"?\"}]}]},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"dotKind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@160\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"-[\"},{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@5\"},\"deprecatedSyntax\":false}},{\"$type\":\"Keyword\",\"value\":\"]->\"}]},{\"$type\":\"Keyword\",\"value\":\"->\"}]},{\"$type\":\"Assignment\",\"feature\":\"target\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@32\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"description\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"technology\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"}],\"cardinality\":\"?\"}],\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@125\"},\"arguments\":[]},\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentRelationBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@36\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentView\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"deployment\"},{\"$type\":\"Keyword\",\"value\":\"view\"},{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"body\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@127\"},\"arguments\":[]},\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentViewBody\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"tags\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@18\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@55\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Assignment\",\"feature\":\"rules\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@128\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentViewRule\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@131\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@130\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@83\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@129\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ViewRuleAncestors\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"includeAncestors\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@183\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentViewRuleStyle\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"style\"},{\"$type\":\"Assignment\",\"feature\":\"targets\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@103\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@154\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@84\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DeploymentViewRulePredicate\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"isInclude\",\"operator\":\"?=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"include\"}},{\"$type\":\"Keyword\",\"value\":\"exclude\"}]},{\"$type\":\"Assignment\",\"feature\":\"expr\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@90\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Globals\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"global\"}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"predicates\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@133\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@134\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Assignment\",\"feature\":\"styles\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@136\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@137\"},\"arguments\":[]}]},\"cardinality\":\"*\"}],\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"GlobalPredicateGroup\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"predicateGroup\"},{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@200\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"predicates\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@76\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"GlobalDynamicPredicateGroup\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"dynamicPredicateGroup\"},{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@200\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"predicates\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@78\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"GlobalStyleId\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"name\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@200\"},\"arguments\":[]}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"GlobalStyle\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"style\"},{\"$type\":\"Assignment\",\"feature\":\"id\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@135\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"targets\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@103\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@154\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@84\"},\"arguments\":[]}]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"GlobalStyleGroup\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"styleGroup\"},{\"$type\":\"Assignment\",\"feature\":\"id\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@135\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"styles\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@80\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"LinkProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"link\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@171\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"title\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]},\"cardinality\":\"?\"},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ColorProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"color\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"themeColor\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@164\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"customColor\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@6\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@173\"},\"arguments\":[]},\"deprecatedSyntax\":false}}]},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"OpacityProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"opacity\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@195\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"MultipleProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"multiple\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@183\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"IconProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"icon\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"libicon\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@2\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@170\"},\"arguments\":[]},\"deprecatedSyntax\":false}},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"none\"},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@171\"},\"arguments\":[]}]}}]},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"IconColorProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"iconColor\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"themeColor\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@164\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"customColor\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@6\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@173\"},\"arguments\":[]},\"deprecatedSyntax\":false}}]},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"IconSizeProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"iconSize\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@150\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"IconPositionValue\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"left\"},{\"$type\":\"Keyword\",\"value\":\"right\"},{\"$type\":\"Keyword\",\"value\":\"top\"},{\"$type\":\"Keyword\",\"value\":\"bottom\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"IconPositionProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"iconPosition\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@145\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ShapeProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"shape\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@165\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"BorderStyleValue\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@161\"},\"arguments\":[]},{\"$type\":\"Keyword\",\"value\":\"none\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"BorderProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"border\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@148\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"SizeValue\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"xs\"},{\"$type\":\"Keyword\",\"value\":\"sm\"},{\"$type\":\"Keyword\",\"value\":\"md\"},{\"$type\":\"Keyword\",\"value\":\"lg\"},{\"$type\":\"Keyword\",\"value\":\"xl\"},{\"$type\":\"Keyword\",\"value\":\"xsmall\"},{\"$type\":\"Keyword\",\"value\":\"small\"},{\"$type\":\"Keyword\",\"value\":\"medium\"},{\"$type\":\"Keyword\",\"value\":\"large\"},{\"$type\":\"Keyword\",\"value\":\"xlarge\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ShapeSizeProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"size\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@150\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"PaddingSizeProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"padding\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@150\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"TextSizeProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"textSize\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@150\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"StyleProperty\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@139\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@147\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@149\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@140\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@142\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@143\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@141\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@151\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@152\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@153\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@144\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@146\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementStyleProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"style\"}},{\"$type\":\"Keyword\",\"value\":\"{\"},{\"$type\":\"Assignment\",\"feature\":\"props\",\"operator\":\"+=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@154\"},\"arguments\":[]},\"cardinality\":\"*\"},{\"$type\":\"Keyword\",\"value\":\"}\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"LineProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"line\"}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@161\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ArrowProperty\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"key\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"head\"},{\"$type\":\"Keyword\",\"value\":\"tail\"}]}},{\"$type\":\"Keyword\",\"value\":\":\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"value\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@162\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\";\",\"cardinality\":\"?\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationshipStyleProperty\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@139\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@156\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@157\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"TagRef\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"tag\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@4\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@176\"},\"arguments\":[]},\"deprecatedSyntax\":false}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RelationKindDotRef\",\"definition\":{\"$type\":\"Assignment\",\"feature\":\"kind\",\"operator\":\"=\",\"terminal\":{\"$type\":\"CrossReference\",\"type\":{\"$ref\":\"#/rules@5\"},\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@175\"},\"arguments\":[]},\"deprecatedSyntax\":false}},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"LineOptions\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"solid\"},{\"$type\":\"Keyword\",\"value\":\"dashed\"},{\"$type\":\"Keyword\",\"value\":\"dotted\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ArrowType\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"none\"},{\"$type\":\"Keyword\",\"value\":\"normal\"},{\"$type\":\"Keyword\",\"value\":\"onormal\"},{\"$type\":\"Keyword\",\"value\":\"dot\"},{\"$type\":\"Keyword\",\"value\":\"odot\"},{\"$type\":\"Keyword\",\"value\":\"diamond\"},{\"$type\":\"Keyword\",\"value\":\"odiamond\"},{\"$type\":\"Keyword\",\"value\":\"crow\"},{\"$type\":\"Keyword\",\"value\":\"open\"},{\"$type\":\"Keyword\",\"value\":\"vee\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DynamicViewDisplayVariantValue\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"diagram\"},{\"$type\":\"Keyword\",\"value\":\"sequence\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ThemeColor\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"primary\"},{\"$type\":\"Keyword\",\"value\":\"secondary\"},{\"$type\":\"Keyword\",\"value\":\"muted\"},{\"$type\":\"Keyword\",\"value\":\"slate\"},{\"$type\":\"Keyword\",\"value\":\"blue\"},{\"$type\":\"Keyword\",\"value\":\"indigo\"},{\"$type\":\"Keyword\",\"value\":\"sky\"},{\"$type\":\"Keyword\",\"value\":\"red\"},{\"$type\":\"Keyword\",\"value\":\"gray\"},{\"$type\":\"Keyword\",\"value\":\"green\"},{\"$type\":\"Keyword\",\"value\":\"amber\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ElementShape\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"rectangle\"},{\"$type\":\"Keyword\",\"value\":\"component\"},{\"$type\":\"Keyword\",\"value\":\"person\"},{\"$type\":\"Keyword\",\"value\":\"browser\"},{\"$type\":\"Keyword\",\"value\":\"mobile\"},{\"$type\":\"Keyword\",\"value\":\"cylinder\"},{\"$type\":\"Keyword\",\"value\":\"storage\"},{\"$type\":\"Keyword\",\"value\":\"queue\"},{\"$type\":\"Keyword\",\"value\":\"bucket\"},{\"$type\":\"Keyword\",\"value\":\"document\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Participant\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"source\"},{\"$type\":\"Keyword\",\"value\":\"target\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"ColorLiteral\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@168\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@169\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"RGBAColor\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Keyword\",\"value\":\"rgba\"},{\"$type\":\"Keyword\",\"value\":\"rgb\"}]},{\"$type\":\"Keyword\",\"value\":\"(\"},{\"$type\":\"Assignment\",\"feature\":\"red\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@199\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\",\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"green\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@199\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\",\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"blue\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@199\"},\"arguments\":[]}},{\"$type\":\"Keyword\",\"value\":\",\",\"cardinality\":\"?\"},{\"$type\":\"Assignment\",\"feature\":\"alpha\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@198\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@199\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@195\"},\"arguments\":[]}]},\"cardinality\":\"?\"},{\"$type\":\"Keyword\",\"value\":\")\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"HexColor\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@190\"},\"arguments\":[]},{\"$type\":\"Assignment\",\"feature\":\"hex\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@201\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@199\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@200\"},\"arguments\":[]}]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"IconId\",\"dataType\":\"string\",\"definition\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@184\"},\"arguments\":[]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Uri\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@185\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@186\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@187\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"MarkdownOrString\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"markdown\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@196\"},\"arguments\":[]}},{\"$type\":\"Assignment\",\"feature\":\"text\",\"operator\":\"=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@197\"},\"arguments\":[]}}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"CustomColorId\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@200\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@165\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@162\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@161\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@166\"},\"arguments\":[]},{\"$type\":\"Keyword\",\"value\":\"element\"},{\"$type\":\"Keyword\",\"value\":\"model\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"Id\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@200\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@165\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@164\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@162\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@161\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@166\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@150\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@163\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@145\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@60\"},\"arguments\":[]},{\"$type\":\"Keyword\",\"value\":\"element\"},{\"$type\":\"Keyword\",\"value\":\"model\"},{\"$type\":\"Keyword\",\"value\":\"group\"},{\"$type\":\"Keyword\",\"value\":\"node\"},{\"$type\":\"Keyword\",\"value\":\"deployment\"},{\"$type\":\"Keyword\",\"value\":\"instance\"},{\"$type\":\"Keyword\",\"value\":\"relationship\"}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"DotId\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@192\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"name\":\"HashId\",\"dataType\":\"string\",\"definition\":{\"$type\":\"Group\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@190\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@174\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"fragment\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"fragment\":true,\"name\":\"EqOperator\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"operator\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@194\"},\"arguments\":[]},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@193\"},\"arguments\":[]}]}},{\"$type\":\"Group\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"operator\",\"operator\":\"=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"is\"}},{\"$type\":\"Assignment\",\"feature\":\"not\",\"operator\":\"?=\",\"terminal\":{\"$type\":\"Keyword\",\"value\":\"not\"},\"cardinality\":\"?\"}]}]},\"definesHiddenTokens\":false,\"entry\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"ParserRule\",\"fragment\":true,\"name\":\"IsEqual\",\"definition\":{\"$type\":\"Alternatives\",\"elements\":[{\"$type\":\"Assignment\",\"feature\":\"isEqual\",\"operator\":\"?=\",\"terminal\":{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@194\"},\"arguments\":[]}},{\"$type\":\"RuleCall\",\"rule\":{\"$ref\":\"#/rules@193\"},\"arguments\":[]}]},\"definesHiddenTokens\":false,\"entry\":false,\"hiddenTokens\":[],\"parameters\":[],\"wildcard\":false},{\"$type\":\"TerminalRule\",\"hidden\":true,\"name\":\"BLOCK_COMMENT\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//\"},\"fragment\":false},{\"$type\":\"TerminalRule\",\"hidden\":true,\"name\":\"LINE_COMMENT\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\/\\\\/[^\\\\n\\\\r]*/\"},\"fragment\":false},{\"$type\":\"TerminalRule\",\"hidden\":true,\"name\":\"WS\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/[\\\\t ]+/\"},\"fragment\":false},{\"$type\":\"TerminalRule\",\"hidden\":true,\"name\":\"NL\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/[\\\\r\\\\n]+/\"},\"fragment\":false},{\"$type\":\"TerminalRule\",\"name\":\"BOOLEAN\",\"type\":{\"$type\":\"ReturnType\",\"name\":\"boolean\"},\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\b(true|false)\\\\b/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"LIB_ICON\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/(aws|azure|bootstrap|gcp|tech):[-\\\\w]*/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"URI_WITH_SCHEMA\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\w+:\\\\/{2}\\\\S+/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"URI_RELATIVE\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\.{0,2}\\\\/[^\\\\/]\\\\S+/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"URI_ALIAS\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/@[a-zA-Z0-9_-]*\\\\/[^\\\\s]+/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"DotUnderscore\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\b\\\\._(?![_a-zA-Z])/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"DotWildcard\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\b\\\\.\\\\*{1,2}/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"Hash\",\"definition\":{\"$type\":\"CharacterRange\",\"left\":{\"$type\":\"Keyword\",\"value\":\"#\"}},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"StickyDot\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\b\\\\./\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"DotPrefix\",\"definition\":{\"$type\":\"CharacterRange\",\"left\":{\"$type\":\"Keyword\",\"value\":\".\"}},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"NotEqual\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\!\\\\={1,2}/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"Eq\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\={1,2}/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"Percent\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\b\\\\d+%/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"MarkdownString\",\"definition\":{\"$type\":\"TerminalAlternatives\",\"elements\":[{\"$type\":\"TerminalGroup\",\"elements\":[{\"$type\":\"CharacterRange\",\"left\":{\"$type\":\"Keyword\",\"value\":\"'''\"}},{\"$type\":\"UntilToken\",\"terminal\":{\"$type\":\"CharacterRange\",\"left\":{\"$type\":\"Keyword\",\"value\":\"'''\"}}}]},{\"$type\":\"TerminalGroup\",\"elements\":[{\"$type\":\"CharacterRange\",\"left\":{\"$type\":\"Keyword\",\"value\":\"\\\"\\\"\\\"\"}},{\"$type\":\"UntilToken\",\"terminal\":{\"$type\":\"CharacterRange\",\"left\":{\"$type\":\"Keyword\",\"value\":\"\\\"\\\"\\\"\"}}}]}]},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"String\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\"(?:[^\\\"\\\\\\\\]|\\\\\\\\.)*\\\"|'(?:[^'\\\\\\\\]|\\\\\\\\.)*'/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"Float\",\"type\":{\"$type\":\"ReturnType\",\"name\":\"number\"},\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\b\\\\d+\\\\.\\\\d+\\\\b/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"Number\",\"type\":{\"$type\":\"ReturnType\",\"name\":\"number\"},\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/\\\\b\\\\d+\\\\b/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"IdTerminal\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/([a-zA-Z]|_+[a-zA-Z0-9])[-\\\\w]*/\"},\"fragment\":false,\"hidden\":false},{\"$type\":\"TerminalRule\",\"name\":\"Hex\",\"definition\":{\"$type\":\"RegexToken\",\"regex\":\"/[a-fA-F0-9]{3,}(?![-_g-zG-Z])/\"},\"fragment\":false,\"hidden\":false}],\"interfaces\":[{\"$type\":\"Interface\",\"name\":\"ElementRef\",\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"modelElement\",\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@2\"}},\"isOptional\":false}],\"superTypes\":[]},{\"$type\":\"Interface\",\"name\":\"StrictFqnElementRef\",\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"parent\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@1\"}}},{\"$type\":\"TypeAttribute\",\"name\":\"el\",\"type\":{\"$type\":\"ReferenceType\",\"referenceType\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@21\"}}},\"isOptional\":false}],\"superTypes\":[]},{\"$type\":\"Interface\",\"name\":\"FqnRef\",\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"parent\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@2\"}}},{\"$type\":\"TypeAttribute\",\"name\":\"value\",\"type\":{\"$type\":\"ReferenceType\",\"referenceType\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/types@1\"}}},\"isOptional\":false}],\"superTypes\":[]},{\"$type\":\"Interface\",\"name\":\"StrictFqnRef\",\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"parent\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@3\"}}},{\"$type\":\"TypeAttribute\",\"name\":\"value\",\"type\":{\"$type\":\"ReferenceType\",\"referenceType\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/types@1\"}}},\"isOptional\":false}],\"superTypes\":[]},{\"$type\":\"Interface\",\"name\":\"StepsBlock\",\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"steps\",\"type\":{\"$type\":\"ArrayType\",\"elementType\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/types@5\"}}},\"isOptional\":false}],\"superTypes\":[]},{\"$type\":\"Interface\",\"name\":\"SubflowStep\",\"superTypes\":[{\"$ref\":\"#/interfaces@4\"}],\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"kind\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"stringType\":\"opt\"},{\"$type\":\"SimpleType\",\"stringType\":\"par\"},{\"$type\":\"SimpleType\",\"stringType\":\"parallel\"},{\"$type\":\"SimpleType\",\"stringType\":\"loop\"},{\"$type\":\"SimpleType\",\"stringType\":\"when\"},{\"$type\":\"SimpleType\",\"stringType\":\"if\"},{\"$type\":\"SimpleType\",\"stringType\":\"else\"},{\"$type\":\"SimpleType\",\"stringType\":\"break\"}]},\"isOptional\":false},{\"$type\":\"TypeAttribute\",\"name\":\"title\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"primitiveType\":\"string\"}}]},{\"$type\":\"Interface\",\"name\":\"TryBlock\",\"superTypes\":[{\"$ref\":\"#/interfaces@4\"}],\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"title\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"primitiveType\":\"string\"}}]},{\"$type\":\"Interface\",\"name\":\"CatchBlock\",\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"try\",\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@6\"}},\"isOptional\":false},{\"$type\":\"TypeAttribute\",\"name\":\"title\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"primitiveType\":\"string\"}},{\"$type\":\"TypeAttribute\",\"name\":\"catch\",\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@4\"}},\"isOptional\":false}],\"superTypes\":[]},{\"$type\":\"Interface\",\"name\":\"FinallyBlock\",\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"tryCatch\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@6\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@7\"}}]},\"isOptional\":false},{\"$type\":\"TypeAttribute\",\"name\":\"title\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"primitiveType\":\"string\"}},{\"$type\":\"TypeAttribute\",\"name\":\"finally\",\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@4\"}},\"isOptional\":false}],\"superTypes\":[]},{\"$type\":\"Interface\",\"name\":\"AltSteps\",\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"title\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"primitiveType\":\"string\"}},{\"$type\":\"TypeAttribute\",\"name\":\"branches\",\"type\":{\"$type\":\"ArrayType\",\"elementType\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@5\"}}},\"isOptional\":false}],\"superTypes\":[]},{\"$type\":\"Interface\",\"name\":\"AbstractStep\",\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"kind\",\"isOptional\":true,\"type\":{\"$type\":\"ReferenceType\",\"referenceType\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@5\"}}}},{\"$type\":\"TypeAttribute\",\"name\":\"dotKind\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@160\"}}},{\"$type\":\"TypeAttribute\",\"name\":\"target\",\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@0\"}},\"isOptional\":false},{\"$type\":\"TypeAttribute\",\"name\":\"title\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"primitiveType\":\"string\"}},{\"$type\":\"TypeAttribute\",\"name\":\"custom\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@87\"}}}],\"superTypes\":[]},{\"$type\":\"Interface\",\"name\":\"Step\",\"superTypes\":[{\"$ref\":\"#/interfaces@10\"}],\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"source\",\"type\":{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@0\"}},\"isOptional\":false},{\"$type\":\"TypeAttribute\",\"name\":\"isBackward\",\"isOptional\":true,\"type\":{\"$type\":\"SimpleType\",\"primitiveType\":\"boolean\"}}],\"$comment\":\"/**\\n * A single step in a dynamic view flow\\n * source -> target\\n */\"},{\"$type\":\"Interface\",\"name\":\"StepSeries\",\"superTypes\":[{\"$ref\":\"#/interfaces@10\"}],\"attributes\":[{\"$type\":\"TypeAttribute\",\"name\":\"source\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@11\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@12\"}}]},\"isOptional\":false}],\"$comment\":\"/**\\n * A series of steps in a dynamic view flow\\n * source -> target1 -> target2 -> ...\\n */\"}],\"types\":[{\"$type\":\"Type\",\"name\":\"ModelReferenceable\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@21\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@17\"}}]}},{\"$type\":\"Type\",\"name\":\"Referenceable\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@118\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@120\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@21\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@17\"}}]}},{\"$type\":\"Type\",\"name\":\"LikeC4View\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@46\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@47\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@126\"}}]}},{\"$type\":\"Type\",\"name\":\"StringProperty\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@24\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@56\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@37\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@41\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@10\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@15\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@84\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@85\"}}]}},{\"$type\":\"Type\",\"name\":\"AnyProperty\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/types@3\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@55\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@53\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@23\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@36\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@158\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@88\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@154\"}}]}},{\"$type\":\"Type\",\"name\":\"StepStatement\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/types@7\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/types@6\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@9\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@5\"}}]}},{\"$type\":\"Type\",\"name\":\"TryStep\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@6\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@7\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@8\"}}]}},{\"$type\":\"Type\",\"name\":\"StepOrSeries\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@11\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/interfaces@12\"}}]}},{\"$type\":\"Type\",\"name\":\"DeploymentNodeOrElementKind\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@3\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@7\"}}]}},{\"$type\":\"Type\",\"name\":\"WhereTagEqual\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@109/definition/elements@1/elements@0/inferredType\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@116/definition/elements@5/elements@0/inferredType\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@116/definition/elements@2/elements@0/inferredType\"}}]}},{\"$type\":\"Type\",\"name\":\"WhereKindEqual\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@109/definition/elements@2/elements@0/inferredType\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@116/definition/elements@4/elements@0/inferredType\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@116/definition/elements@1/elements@0/inferredType\"}}]}},{\"$type\":\"Type\",\"name\":\"WhereMetadataEqual\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@109/definition/elements@0/elements@0/inferredType\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@116/definition/elements@3/elements@0/inferredType\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@116/definition/elements@0/elements@0/inferredType\"}}]}},{\"$type\":\"Type\",\"name\":\"WhereExpression\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@104\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@111\"}}]}},{\"$type\":\"Type\",\"name\":\"DeploymentElement\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@118\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@120\"}}]}},{\"$type\":\"Type\",\"name\":\"FqnReferenceable\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/types@1\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@21\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@25/definition/elements@1/elements@1/elements@0/inferredType\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@122\"}}]}},{\"$type\":\"Type\",\"name\":\"SizeProperty\",\"type\":{\"$type\":\"UnionType\",\"types\":[{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@151\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@152\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@153\"}},{\"$type\":\"SimpleType\",\"typeRef\":{\"$ref\":\"#/rules@144\"}}]}}],\"definesHiddenTokens\":false,\"hiddenTokens\":[],\"imports\":[],\"usedGrammars\":[]}"));
|
|
2262
|
+
|
|
2263
|
+
//#endregion
|
|
2264
|
+
//#region src/generated/module.ts
|
|
2265
|
+
const LikeC4LanguageMetaData = {
|
|
2266
|
+
languageId: "likec4",
|
|
2267
|
+
fileExtensions: [
|
|
2268
|
+
".c4",
|
|
2269
|
+
".likec4",
|
|
2270
|
+
".like-c4"
|
|
2271
|
+
],
|
|
2272
|
+
caseInsensitive: false,
|
|
2273
|
+
mode: "production"
|
|
2274
|
+
};
|
|
2275
|
+
const parserConfig = {
|
|
2276
|
+
skipValidations: true,
|
|
2277
|
+
recoveryEnabled: true,
|
|
2278
|
+
nodeLocationTracking: "full"
|
|
2279
|
+
};
|
|
2280
|
+
const LikeC4GeneratedSharedModule = { AstReflection: () => new LikeC4AstReflection() };
|
|
2281
|
+
const LikeC4GeneratedModule = {
|
|
2282
|
+
Grammar: () => LikeC4Grammar(),
|
|
2283
|
+
LanguageMetaData: () => LikeC4LanguageMetaData,
|
|
2284
|
+
parser: { ParserConfig: () => parserConfig }
|
|
2285
|
+
};
|
|
2286
|
+
|
|
2287
|
+
//#endregion
|
|
2288
|
+
//#region src/utils/index.ts
|
|
2289
|
+
function safeCall(fn) {
|
|
2290
|
+
try {
|
|
2291
|
+
return fn();
|
|
2292
|
+
} catch (e) {
|
|
2293
|
+
logger$1.trace(`Safe call failed`, { error: e });
|
|
2294
|
+
return;
|
|
2295
|
+
}
|
|
2296
|
+
}
|
|
2297
|
+
function performanceNow() {
|
|
2298
|
+
try {
|
|
2299
|
+
return globalThis.performance.now();
|
|
2300
|
+
} catch {
|
|
2301
|
+
return Date.now();
|
|
2302
|
+
}
|
|
2303
|
+
}
|
|
2304
|
+
function performanceMark() {
|
|
2305
|
+
const t0 = performanceNow();
|
|
2306
|
+
return {
|
|
2307
|
+
get ms() {
|
|
2308
|
+
return performanceNow() - t0;
|
|
2309
|
+
},
|
|
2310
|
+
get pretty() {
|
|
2311
|
+
return prettyMs(performanceNow() - t0);
|
|
2312
|
+
}
|
|
2313
|
+
};
|
|
2314
|
+
}
|
|
2315
|
+
|
|
2316
|
+
//#endregion
|
|
2317
|
+
export { isDynamicView as $, isTextSizeProperty as $n, isLinkProperty as $t, isAltSteps as A, isShapeSizeProperty as An, isWhereRelationParticipantTag as Ar, isFqnExprWith as At, isDeployedInstanceBody as B, isStep as Bn, getTelemetrySink as Br, isIconColorProperty as Bt, ModelViews as C, isRelationKindDotRef as Cn, isWhereRelation as Cr, isExtendRelation as Ct, SpecificationRelationshipKind as D, isRelationshipKind as Dn, isWhereRelationNegation as Dr, isFqnExprOrWhere as Dt, SpecificationElementKind as E, isRelationStyleProperty as En, isWhereRelationMetadata as Er, isFqnExpr as Et, isColorLiteral as F, isSpecificationElementStringProperty as Fn, compareByUri as Fr, isGlobalPredicateGroup as Ft, isDeploymentRelation as G, isStrictFqnElementRef as Gn, isImportsFromPoject as Gt, isDeploymentNode as H, isStepSeries as Hn, logger$1 as Hr, isIconProperty as Ht, isColorProperty as I, isSpecificationRelationshipKind as In, compareByUriDeepFirst as Ir, isGlobalStyle as It, isDeploymentViewBody as J, isStyleProperty as Jn, isLibIcon as Jt, isDeploymentRelationBody as K, isStrictFqnRef as Kn, isInOutRelationExpr as Kt, isCustomElementProperties as L, isSpecificationRelationshipStringProperty as Ln, NoFileSystem as Lr, isGlobalStyleGroup as Lt, isArrowProperty as M, isSpecificationColor as Mn, isWhereTagEqual as Mr, isFqnRef as Mt, isBorderProperty as N, isSpecificationDeploymentNodeKind as Nn, isWildcardExpression as Nr, isFqnRefExpr as Nt, SpecificationRule as O, isRelationshipStyleProperty as On, isWhereRelationParticipantKind as Or, isFqnExprOrWith as Ot, isCatchBlock as P, isSpecificationElementKind as Pn, ADisposable as Pr, isGlobalDynamicPredicateGroup as Pt, isDirectedRelationExpr as Q, isTags as Qn, isLineProperty as Qt, isCustomRelationProperties as R, isSpecificationRule as Rn, NoFileSystemWatcher as Rr, isGlobals as Rt, ModelDeployments as S, isRelationExprWith as Sn, isWhereMetadataEqual as Sr, isExtendElementOrRelation as St, SpecificationDeploymentNodeKind as T, isRelationStringProperty as Tn, isWhereRelationKind as Tr, isFinallyBlock as Tt, isDeploymentNodeBody as U, isStepStatement as Un, isIconSizeProperty as Ut, isDeploymentElement as V, isStepOrSeries as Vn, logWarnError as Vr, isIconPositionProperty as Vt, isDeploymentNodeKind as W, isStepsBlock as Wn, isImported as Wt, isDeploymentViewRulePredicate as X, isTag as Xn, isLikeC4Lib as Xt, isDeploymentViewRule as Y, isSubflowStep as Yn, isLikeC4Grammar as Yt, isDeploymentViewRuleStyle as Z, isTagRef as Zn, isLikeC4View as Zt, Globals as _, isRelationBody as _n, isWhereElementKind as _r, isExpressions as _t, LikeC4LanguageMetaData as a, isModel as an, isViewRuleAutoLayout as ar, isElement as at, LikeC4View as b, isRelationExprOrWith as bn, isWhereElementTag as br, isExtendElement as bt, DeploymentElement as c, isMultipleProperty as cn, isViewRuleGroup as cr, isElementKindExpression as ct, Element as d, isNotesProperty as dn, isViewRuleStyle as dr, isElementStringProperty as dt, isMarkdownOrString as en, isTryBlock as er, isDynamicViewBody as et, ElementKind as f, isOpacityProperty as fn, isViewRuleStyleOrGlobalRef as fr, isElementStyleProperty as ft, GlobalStyleId as g, isRelation as gn, isWhereElementExpression as gr, isExpressionV2 as gt, GlobalPredicateGroup as h, isRGBAColor as hn, isWhereElement as hr, isElementViewBody as ht, LikeC4GeneratedSharedModule as i, isMetadataProperty as in, isViewRuleAncestors as ir, isDynamicViewRule as it, isAnyProperty as j, isSizeProperty as jn, isWhereRelationTag as jr, isFqnExpressions as jt, SpecificationTag as k, isShapeProperty as kn, isWhereRelationParticipantMetadata as kr, isFqnExprWhere as kt, DeploymentNode as l, isNavigateToProperty as ln, isViewRulePredicate as lr, isElementProperty as lt, GlobalDynamicPredicateGroup as m, isPaddingSizeProperty as mn, isWhereBinaryExpression as mr, isElementView as mt, safeCall as n, isMetadataAttribute as nn, isViewProperty as nr, isDynamicViewGlobalPredicateRef as nt, CustomColor as o, isModelDeployments as on, isViewRuleGlobalPredicateRef as or, isElementBody as ot, ExtendElement as p, isOutgoingRelationExpr as pn, isViewStringProperty as pr, isElementTagExpression as pt, isDeploymentView as q, isStringProperty as qn, isIncomingRelationExpr as qt, LikeC4GeneratedModule as r, isMetadataBody as rn, isViewRule as rr, isDynamicViewIncludePredicate as rt, DeployedInstance as s, isModelViews as sn, isViewRuleGlobalStyle as sr, isElementKind as st, performanceMark as t, isMetadataArray as tn, isTryStep as tr, isDynamicViewDisplayVariantProperty as tt, DeploymentNodeKind as u, isNotationProperty as un, isViewRuleRank as ur, isElementRef as ut, Imported as v, isRelationExpr as vn, isWhereElementMetadata as vr, isExtendDeployment as vt, RelationshipKind as w, isRelationNavigateToProperty as wn, isWhereRelationExpression as wr, isExtendRelationBody as wt, Model as x, isRelationExprWhere as xn, isWhereKindEqual as xr, isExtendElementBody as xt, LibIcon as y, isRelationExprOrWhere as yn, isWhereElementNegation as yr, isExtendDeploymentBody as yt, isDeployedInstance as z, isSpecificationTag as zn, NoLikeC4ManualLayouts as zr, isHexColor as zt };
|