@lionweb/core 0.7.0-alpha.1 → 0.7.0-alpha.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/CHANGELOG.md +22 -5
  2. package/dist/deserializer.d.ts +15 -6
  3. package/dist/deserializer.d.ts.map +1 -1
  4. package/dist/deserializer.js +18 -20
  5. package/dist/deserializer.js.map +1 -1
  6. package/dist/dynamic-facade.d.ts +14 -5
  7. package/dist/dynamic-facade.d.ts.map +1 -1
  8. package/dist/dynamic-facade.js +13 -5
  9. package/dist/dynamic-facade.js.map +1 -1
  10. package/dist/extraction.d.ts +15 -0
  11. package/dist/extraction.d.ts.map +1 -0
  12. package/dist/extraction.js +17 -0
  13. package/dist/extraction.js.map +1 -0
  14. package/dist/index.d.ts +4 -2
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +4 -2
  17. package/dist/index.js.map +1 -1
  18. package/dist/m1/reference-utils.d.ts +7 -7
  19. package/dist/m1/reference-utils.d.ts.map +1 -1
  20. package/dist/m1/reference-utils.js +10 -10
  21. package/dist/m1/reference-utils.js.map +1 -1
  22. package/dist/m3/builtins.d.ts +38 -17
  23. package/dist/m3/builtins.d.ts.map +1 -1
  24. package/dist/m3/builtins.js +53 -28
  25. package/dist/m3/builtins.js.map +1 -1
  26. package/dist/m3/constraints.js +2 -2
  27. package/dist/m3/constraints.js.map +1 -1
  28. package/dist/m3/deserializer.js +4 -4
  29. package/dist/m3/deserializer.js.map +1 -1
  30. package/dist/m3/facade.d.ts +13 -4
  31. package/dist/m3/facade.d.ts.map +1 -1
  32. package/dist/m3/facade.js +12 -4
  33. package/dist/m3/facade.js.map +1 -1
  34. package/dist/m3/functions.d.ts +20 -4
  35. package/dist/m3/functions.d.ts.map +1 -1
  36. package/dist/m3/functions.js +21 -5
  37. package/dist/m3/functions.js.map +1 -1
  38. package/dist/m3/lioncore.js +7 -7
  39. package/dist/m3/serializer.d.ts.map +1 -1
  40. package/dist/m3/serializer.js +3 -3
  41. package/dist/m3/serializer.js.map +1 -1
  42. package/dist/m3/types.d.ts +12 -7
  43. package/dist/m3/types.d.ts.map +1 -1
  44. package/dist/m3/types.js +9 -4
  45. package/dist/m3/types.js.map +1 -1
  46. package/dist/reading.d.ts +45 -0
  47. package/dist/reading.d.ts.map +1 -0
  48. package/dist/reading.js +2 -0
  49. package/dist/reading.js.map +1 -0
  50. package/dist/serializer.d.ts +28 -7
  51. package/dist/serializer.d.ts.map +1 -1
  52. package/dist/serializer.js +107 -101
  53. package/dist/serializer.js.map +1 -1
  54. package/dist/symbol-table.d.ts.map +1 -1
  55. package/dist/symbol-table.js +1 -8
  56. package/dist/symbol-table.js.map +1 -1
  57. package/dist/writing.d.ts +49 -0
  58. package/dist/writing.d.ts.map +1 -0
  59. package/dist/writing.js +30 -0
  60. package/dist/writing.js.map +1 -0
  61. package/package.json +4 -4
  62. package/dist/facade.d.ts +0 -85
  63. package/dist/facade.d.ts.map +0 -1
  64. package/dist/facade.js +0 -42
  65. package/dist/facade.js.map +0 -1
@@ -1,19 +1,31 @@
1
- import { PrimitiveTypeDeserializer } from "../deserializer.js";
2
- import { PrimitiveTypeSerializer } from "../serializer.js";
3
- import { Classifier, Concept, Datatype, Property } from "./types.js";
1
+ import { PropertyValueDeserializer } from "../deserializer.js";
2
+ import { PropertyValueSerializer } from "../serializer.js";
3
+ import { Classifier, Concept, DataType, Property } from "./types.js";
4
4
  /**
5
5
  * Definition of a LionCore language that serves as a standard library of built-in primitive types.
6
6
  */
7
7
  declare const lioncoreBuiltins: import("./types.js").Language;
8
8
  declare const isBuiltinNodeConcept: (classifier: Classifier) => boolean;
9
- type BuiltinPrimitive = string | boolean | number | Record<string, unknown> | Array<unknown>;
10
- type PrimitiveTypeValue = BuiltinPrimitive | unknown;
11
- type SpecificPrimitiveTypeDeserializer = (value: string) => PrimitiveTypeValue;
12
- type SpecificPrimitiveTypeSerializer = (value: unknown) => string;
13
9
  declare const builtinPrimitives: {
10
+ stringDataType: import("./types.js").PrimitiveType;
11
+ booleanDataType: import("./types.js").PrimitiveType;
12
+ integerDataType: import("./types.js").PrimitiveType;
13
+ jsonDataType: import("./types.js").PrimitiveType;
14
+ /**
15
+ * Misspelled alias of {@link stringDataType}, kept for backward compatibility, and to be deprecated and removed later.
16
+ */
14
17
  stringDatatype: import("./types.js").PrimitiveType;
18
+ /**
19
+ * Misspelled alias of {@link booleanDataType}, kept for backward compatibility, and to be deprecated and removed later.
20
+ */
15
21
  booleanDatatype: import("./types.js").PrimitiveType;
22
+ /**
23
+ * Misspelled alias of {@link integerDataType}, kept for backward compatibility, and to be deprecated and removed later.
24
+ */
16
25
  integerDatatype: import("./types.js").PrimitiveType;
26
+ /**
27
+ * Misspelled alias of {@link jsonDataType}, kept for backward compatibility, and to be deprecated and removed later.
28
+ */
17
29
  jsonDatatype: import("./types.js").PrimitiveType;
18
30
  };
19
31
  declare const builtinClassifiers: {
@@ -24,22 +36,31 @@ declare const builtinFeatures: {
24
36
  inamed_name: Property;
25
37
  };
26
38
  /**
27
- * Determines whether two datatypes should be structurally equal based on equality of: meta type, key, and language's key.
39
+ * Determines whether two data types should be structurally equal based on equality of: meta type, key, and language's key.
28
40
  */
29
- declare const shouldBeIdentical: (left: Datatype, right: Datatype) => boolean;
30
- declare abstract class DatatypeRegister<T> {
41
+ declare const shouldBeIdentical: (left: DataType, right: DataType) => boolean;
42
+ declare abstract class DataTypeRegister<T> {
31
43
  private map;
32
- register(datatype: Datatype, t: T): void;
33
- protected byType(targetDatatype: Datatype): T | undefined;
44
+ register(dataType: DataType, t: T): void;
45
+ protected byType(targetDataType: DataType): T | undefined;
34
46
  }
35
- export declare class DefaultPrimitiveTypeDeserializer extends DatatypeRegister<SpecificPrimitiveTypeDeserializer> implements PrimitiveTypeDeserializer {
47
+ export declare class BuiltinPropertyValueDeserializer extends DataTypeRegister<(value: string) => unknown> implements PropertyValueDeserializer {
36
48
  constructor();
37
- deserializeValue(value: string | undefined, property: Property): PrimitiveTypeValue | undefined;
49
+ deserializeValue(value: string | undefined, property: Property): unknown | undefined;
38
50
  }
39
- export declare class DefaultPrimitiveTypeSerializer extends DatatypeRegister<SpecificPrimitiveTypeSerializer> implements PrimitiveTypeSerializer {
51
+ /**
52
+ * Misspelled alias of {@link BuiltinPropertyValueDeserializer}, kept for backward compatibility, and to be deprecated and removed later.
53
+ */
54
+ export declare class DefaultPrimitiveTypeDeserializer extends BuiltinPropertyValueDeserializer {
55
+ }
56
+ export declare class BuiltinPropertyValueSerializer extends DataTypeRegister<(value: unknown) => string> implements PropertyValueSerializer {
40
57
  constructor();
41
- serializeValue(value: unknown | undefined, property: Property): string | undefined;
58
+ serializeValue(value: unknown | undefined, property: Property): string | null;
59
+ }
60
+ /**
61
+ * Misspelled alias of {@link BuiltinPropertyValueSerializer}, kept for backward compatibility, and to be deprecated and removed later.
62
+ */
63
+ export declare class DefaultPrimitiveTypeSerializer extends BuiltinPropertyValueSerializer {
42
64
  }
43
- export type { BuiltinPrimitive };
44
65
  export { builtinPrimitives, builtinClassifiers, builtinFeatures, isBuiltinNodeConcept, lioncoreBuiltins, shouldBeIdentical };
45
66
  //# sourceMappingURL=builtins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../src/m3/builtins.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAA;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAG1D,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAuB,QAAQ,EAAE,MAAM,YAAY,CAAA;AAczF;;GAEG;AACH,QAAA,MAAM,gBAAgB,+BAAmB,CAAA;AASzC,QAAA,MAAM,oBAAoB,eAAgB,UAAU,YAKhB,CAAA;AAMpC,KAAK,gBAAgB,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;AAC5F,KAAK,kBAAkB,GAAG,gBAAgB,GAAG,OAAO,CAAA;AACpD,KAAK,iCAAiC,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,kBAAkB,CAAA;AAC9E,KAAK,+BAA+B,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAA;AAEjE,QAAA,MAAM,iBAAiB;;;;;CAKtB,CAAA;AAED,QAAA,MAAM,kBAAkB;;;CAGvB,CAAA;AAED,QAAA,MAAM,eAAe;;CAEpB,CAAA;AAED;;GAEG;AACH,QAAA,MAAM,iBAAiB,SAAU,QAAQ,SAAS,QAAQ,KAAG,OACiD,CAAA;AAE9G,uBAAe,gBAAgB,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAyB;IAE7B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IAIxC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,QAAQ,GAAG,CAAC,GAAG,SAAS;CAS5D;AAED,qBAAa,gCACT,SAAQ,gBAAgB,CAAC,iCAAiC,CAC1D,YAAW,yBAAyB;;IAUpC,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,kBAAkB,GAAG,SAAS;CAkBlG;AAED,qBAAa,8BAA+B,SAAQ,gBAAgB,CAAC,+BAA+B,CAAE,YAAW,uBAAuB;;IASpI,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS;CAkBrF;AAED,YAAY,EAAE,gBAAgB,EAAE,CAAA;AAEhC,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAA"}
1
+ {"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../src/m3/builtins.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAA;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAG1D,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAuB,QAAQ,EAAE,MAAM,YAAY,CAAA;AAczF;;GAEG;AACH,QAAA,MAAM,gBAAgB,+BAAmB,CAAA;AASzC,QAAA,MAAM,oBAAoB,eAAgB,UAAU,YAKhB,CAAA;AAMpC,QAAA,MAAM,iBAAiB;;;;;IAKnB;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;CAEN,CAAA;AAED,QAAA,MAAM,kBAAkB;;;CAGvB,CAAA;AAED,QAAA,MAAM,eAAe;;CAEpB,CAAA;AAED;;GAEG;AACH,QAAA,MAAM,iBAAiB,SAAU,QAAQ,SAAS,QAAQ,KAAG,OACiD,CAAA;AAE9G,uBAAe,gBAAgB,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAyB;IAE7B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IAIxC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,QAAQ,GAAG,CAAC,GAAG,SAAS;CAQ5D;AAED,qBAAa,gCACT,SAAQ,gBAAgB,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CACnD,YAAW,yBAAyB;;IAUpC,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS;CAkBvF;AAED;;GAEG;AACH,qBAAa,gCAAiC,SAAQ,gCAAgC;CAAG;AAGzF,qBAAa,8BAA+B,SAAQ,gBAAgB,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAE,YAAW,uBAAuB;;IAS/H,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI;CAkBhF;AAED;;GAEG;AACH,qBAAa,8BAA+B,SAAQ,8BAA8B;CAAG;AAErF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAA"}
@@ -10,10 +10,10 @@ const factory = new LanguageFactory("LionCore_builtins", currentReleaseVersion,
10
10
  * Definition of a LionCore language that serves as a standard library of built-in primitive types.
11
11
  */
12
12
  const lioncoreBuiltins = factory.language;
13
- const stringDatatype = factory.primitiveType("String");
14
- const booleanDatatype = factory.primitiveType("Boolean");
15
- const integerDatatype = factory.primitiveType("Integer");
16
- const jsonDatatype = factory.primitiveType("JSON");
13
+ const stringDataType = factory.primitiveType("String");
14
+ const booleanDataType = factory.primitiveType("Boolean");
15
+ const integerDataType = factory.primitiveType("Integer");
16
+ const jsonDataType = factory.primitiveType("JSON");
17
17
  const node = factory.concept("Node", true);
18
18
  const isBuiltinNodeConcept = (classifier) => classifier instanceof Concept &&
19
19
  classifier.language.key === lioncoreBuiltinsKey &&
@@ -21,12 +21,28 @@ const isBuiltinNodeConcept = (classifier) => classifier instanceof Concept &&
21
21
  classifier.key === builtinClassifiers.node.key &&
22
22
  classifier.abstract;
23
23
  const inamed = factory.interface("INamed");
24
- const inamed_name = factory.property(inamed, "name").ofType(stringDatatype);
24
+ const inamed_name = factory.property(inamed, "name").ofType(stringDataType);
25
25
  const builtinPrimitives = {
26
- stringDatatype,
27
- booleanDatatype,
28
- integerDatatype,
29
- jsonDatatype
26
+ stringDataType,
27
+ booleanDataType,
28
+ integerDataType,
29
+ jsonDataType,
30
+ /**
31
+ * Misspelled alias of {@link stringDataType}, kept for backward compatibility, and to be deprecated and removed later.
32
+ */
33
+ stringDatatype: stringDataType,
34
+ /**
35
+ * Misspelled alias of {@link booleanDataType}, kept for backward compatibility, and to be deprecated and removed later.
36
+ */
37
+ booleanDatatype: booleanDataType,
38
+ /**
39
+ * Misspelled alias of {@link integerDataType}, kept for backward compatibility, and to be deprecated and removed later.
40
+ */
41
+ integerDatatype: integerDataType,
42
+ /**
43
+ * Misspelled alias of {@link jsonDataType}, kept for backward compatibility, and to be deprecated and removed later.
44
+ */
45
+ jsonDatatype: jsonDataType
30
46
  };
31
47
  const builtinClassifiers = {
32
48
  node,
@@ -36,33 +52,32 @@ const builtinFeatures = {
36
52
  inamed_name
37
53
  };
38
54
  /**
39
- * Determines whether two datatypes should be structurally equal based on equality of: meta type, key, and language's key.
55
+ * Determines whether two data types should be structurally equal based on equality of: meta type, key, and language's key.
40
56
  */
41
57
  const shouldBeIdentical = (left, right) => left.key === right.key && left.language.key === right.language.key && left.metaType() === right.metaType();
42
- class DatatypeRegister {
58
+ class DataTypeRegister {
43
59
  constructor() {
44
60
  this.map = new Map();
45
61
  }
46
- register(datatype, t) {
47
- this.map.set(datatype, t);
62
+ register(dataType, t) {
63
+ this.map.set(dataType, t);
48
64
  }
49
- byType(targetDatatype) {
50
- for (const entry of this.map.entries()) {
51
- const [datatype, t] = entry;
52
- if (shouldBeIdentical(targetDatatype, datatype)) {
65
+ byType(targetDataType) {
66
+ for (const [dataType, t] of this.map.entries()) {
67
+ if (shouldBeIdentical(targetDataType, dataType)) {
53
68
  return t;
54
69
  }
55
70
  }
56
71
  return undefined;
57
72
  }
58
73
  }
59
- export class DefaultPrimitiveTypeDeserializer extends DatatypeRegister {
74
+ export class BuiltinPropertyValueDeserializer extends DataTypeRegister {
60
75
  constructor() {
61
76
  super();
62
- this.register(stringDatatype, value => value);
63
- this.register(booleanDatatype, value => JSON.parse(value));
64
- this.register(integerDatatype, value => Number(value));
65
- this.register(jsonDatatype, value => JSON.parse(value));
77
+ this.register(stringDataType, value => value);
78
+ this.register(booleanDataType, value => JSON.parse(value));
79
+ this.register(integerDataType, value => Number(value));
80
+ this.register(jsonDataType, value => JSON.parse(value));
66
81
  }
67
82
  deserializeValue(value, property) {
68
83
  if (value === undefined) {
@@ -84,18 +99,23 @@ export class DefaultPrimitiveTypeDeserializer extends DatatypeRegister {
84
99
  }
85
100
  }
86
101
  }
87
- export class DefaultPrimitiveTypeSerializer extends DatatypeRegister {
102
+ /**
103
+ * Misspelled alias of {@link BuiltinPropertyValueDeserializer}, kept for backward compatibility, and to be deprecated and removed later.
104
+ */
105
+ export class DefaultPrimitiveTypeDeserializer extends BuiltinPropertyValueDeserializer {
106
+ }
107
+ export class BuiltinPropertyValueSerializer extends DataTypeRegister {
88
108
  constructor() {
89
109
  super();
90
- this.register(stringDatatype, value => value);
91
- this.register(booleanDatatype, value => `${value}`);
92
- this.register(integerDatatype, value => `${value}`);
93
- this.register(jsonDatatype, value => JSON.stringify(value, null));
110
+ this.register(stringDataType, value => value);
111
+ this.register(booleanDataType, value => `${value}`);
112
+ this.register(integerDataType, value => `${value}`);
113
+ this.register(jsonDataType, value => JSON.stringify(value, null));
94
114
  }
95
115
  serializeValue(value, property) {
96
116
  if (value === undefined) {
97
117
  if (property.optional) {
98
- return undefined;
118
+ return null;
99
119
  }
100
120
  throw new Error(`can't serialize undefined as the value of required property "${property.name}" (on classifier "${property.classifier.name}" in language "${property.classifier.language.name}")`);
101
121
  }
@@ -112,5 +132,10 @@ export class DefaultPrimitiveTypeSerializer extends DatatypeRegister {
112
132
  }
113
133
  }
114
134
  }
135
+ /**
136
+ * Misspelled alias of {@link BuiltinPropertyValueSerializer}, kept for backward compatibility, and to be deprecated and removed later.
137
+ */
138
+ export class DefaultPrimitiveTypeSerializer extends BuiltinPropertyValueSerializer {
139
+ }
115
140
  export { builtinPrimitives, builtinClassifiers, builtinFeatures, isBuiltinNodeConcept, lioncoreBuiltins, shouldBeIdentical };
116
141
  //# sourceMappingURL=builtins.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"builtins.js","sourceRoot":"","sources":["../../src/m3/builtins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builtins.js","sourceRoot":"","sources":["../../src/m3/builtins.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { duplicatesAmong } from "@lionweb/ts-utils";
2
2
  import { idOf } from "../functions.js";
3
- import { allContaineds, flatMap, inheritedCycleWith, keyOf, namedsOf, qualifiedNameOf } from "./functions.js";
3
+ import { allContaineds, flatMap, inheritanceCycleWith, keyOf, namedsOf, qualifiedNameOf } from "./functions.js";
4
4
  import { Classifier, isINamed, Language } from "./types.js";
5
5
  // TODO back this type with an M2
6
6
  const base64urlRegex = /^[A-Za-z0-9_-]+$/;
@@ -46,7 +46,7 @@ export const issuesLanguage = (language) => [
46
46
  }
47
47
  // The classifier should not inherit from itself (directly or indirectly)
48
48
  if (t instanceof Classifier) {
49
- const cycle = inheritedCycleWith(t);
49
+ const cycle = inheritanceCycleWith(t);
50
50
  (cycle.length > 0) && issue(`A ${t.constructor.name} can't inherit (directly or indirectly) from itself, but ${qualifiedNameOf(t)} does so through the following cycle: ${cycle.map((t) => qualifiedNameOf(t)).join(" -> ")}`);
51
51
  // TODO check whether it needs to be "a" or "an", or just say "An instance of ..."
52
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"constraints.js","sourceRoot":"","sources":["../../src/m3/constraints.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constraints.js","sourceRoot":"","sources":["../../src/m3/constraints.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { deserializeSerializationChunk } from "../deserializer.js";
2
- import { nodesExtractorUsing } from "../facade.js";
2
+ import { nodesExtractorUsing } from "../extraction.js";
3
3
  import { defaultSimplisticHandler } from "../handler.js";
4
- import { DefaultPrimitiveTypeDeserializer, lioncoreBuiltins } from "./builtins.js";
5
- import { lioncoreExtractionFacade, lioncoreInstantiationFacade } from "./facade.js";
4
+ import { BuiltinPropertyValueDeserializer, lioncoreBuiltins } from "./builtins.js";
5
+ import { lioncoreReader, lioncoreWriter } from "./facade.js";
6
6
  import { lioncore } from "./lioncore.js";
7
7
  import { Language } from "./types.js";
8
8
  /**
@@ -15,7 +15,7 @@ export const deserializeLanguages = (serializationChunk, ...dependentLanguages)
15
15
  * as an instance of the LionCore metametamodel, using {@link _M3Concept these type definitions}.
16
16
  * This function takes a handler to be able to see what problems occurred.
17
17
  */
18
- export const deserializeLanguagesWithHandler = (serializationChunk, handler, ...dependentLanguages) => deserializeSerializationChunk(serializationChunk, lioncoreInstantiationFacade, [lioncore, ...dependentLanguages], [lioncoreBuiltins, ...dependentLanguages].flatMap(nodesExtractorUsing(lioncoreExtractionFacade)), new DefaultPrimitiveTypeDeserializer(), handler)
18
+ export const deserializeLanguagesWithHandler = (serializationChunk, handler, ...dependentLanguages) => deserializeSerializationChunk(serializationChunk, lioncoreWriter, [lioncore, ...dependentLanguages], [lioncoreBuiltins, ...dependentLanguages].flatMap(nodesExtractorUsing(lioncoreReader)), new BuiltinPropertyValueDeserializer(), handler)
19
19
  .filter((rootNode) => rootNode instanceof Language)
20
20
  .map((language) => language.dependingOn(...dependentLanguages));
21
21
  //# sourceMappingURL=deserializer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deserializer.js","sourceRoot":"","sources":["../../src/m3/deserializer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,wBAAwB,EAAqB,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,gCAAgC,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAClF,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AACnF,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAGrC;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,kBAAoC,EAAE,GAAG,kBAA8B,EAAc,EAAE,CACxH,+BAA+B,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,GAAG,kBAAkB,CAAC,CAAA;AAExG;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAC3C,kBAAoC,EACpC,OAA0B,EAC1B,GAAG,kBAA8B,EACvB,EAAE,CACZ,6BAA6B,CACzB,kBAAkB,EAClB,2BAA2B,EAC3B,CAAC,QAAQ,EAAE,GAAG,kBAAkB,CAAC,EACjC,CAAC,gBAAgB,EAAE,GAAG,kBAAkB,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,CAAC,EAChG,IAAI,gCAAgC,EAAE,EACtC,OAAO,CACV;KACI,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,YAAY,QAAQ,CAAC;KAClD,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAE,QAAqB,CAAC,WAAW,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"deserializer.js","sourceRoot":"","sources":["../../src/m3/deserializer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,wBAAwB,EAAqB,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,gCAAgC,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAClF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAGrC;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,kBAAoC,EAAE,GAAG,kBAA8B,EAAc,EAAE,CACxH,+BAA+B,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,GAAG,kBAAkB,CAAC,CAAA;AAExG;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAC3C,kBAAoC,EACpC,OAA0B,EAC1B,GAAG,kBAA8B,EACvB,EAAE,CACZ,6BAA6B,CACzB,kBAAkB,EAClB,cAAc,EACd,CAAC,QAAQ,EAAE,GAAG,kBAAkB,CAAC,EACjC,CAAC,gBAAgB,EAAE,GAAG,kBAAkB,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,EACtF,IAAI,gCAAgC,EAAE,EACtC,OAAO,CACV;KACI,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,YAAY,QAAQ,CAAC;KAClD,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAE,QAAqB,CAAC,WAAW,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAA"}
@@ -1,8 +1,17 @@
1
- import { ExtractionFacade, InstantiationFacade } from "../facade.js";
1
+ import { Reader } from "../reading.js";
2
2
  import { M3Concept } from "./types.js";
3
- export declare const lioncoreExtractionFacade: ExtractionFacade<M3Concept>;
3
+ import { Writer } from "../writing.js";
4
+ export declare const lioncoreReader: Reader<M3Concept>;
4
5
  /**
5
- * @return An implementation of {@link InstantiationFacade} for instances of the LionCore M3 (so M2s).
6
+ * Alias for {@link lioncoreReader}, kept for backward compatibility, and to be deprecated and removed later.
6
7
  */
7
- export declare const lioncoreInstantiationFacade: InstantiationFacade<M3Concept>;
8
+ export declare const lioncoreExtractionFacade: Reader<M3Concept>;
9
+ /**
10
+ * @return An implementation of {@link Writer} for instances of the LionCore M3 (so M2s).
11
+ */
12
+ export declare const lioncoreWriter: Writer<M3Concept>;
13
+ /**
14
+ * Alias for {@link lioncoreWriter}, kept for backward compatibility, and to be deprecated and removed later.
15
+ */
16
+ export declare const lioncoreInstantationFacade: Writer<M3Concept, M3Concept>;
8
17
  //# sourceMappingURL=facade.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../../src/m3/facade.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAA2B,MAAM,cAAc,CAAA;AAI7F,OAAO,EASH,SAAS,EAIZ,MAAM,YAAY,CAAA;AAKnB,eAAO,MAAM,wBAAwB,EAAE,gBAAgB,CAAC,SAAS,CAMhE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,mBAAmB,CAAC,SAAS,CAoFtE,CAAA"}
1
+ {"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../../src/m3/facade.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EASH,SAAS,EAIZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAA2B,MAAM,EAAE,MAAM,eAAe,CAAA;AAK/D,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,SAAS,CAM5C,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB,mBAAiB,CAAA;AAEtD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,SAAS,CAoF5C,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B,8BAAiB,CAAA"}
package/dist/m3/facade.js CHANGED
@@ -1,11 +1,11 @@
1
- import { updateSettingsNameBased } from "../facade.js";
2
1
  import { builtinFeatures } from "./builtins.js";
3
2
  import { metaTypedBasedClassifierDeducerFor, qualifiedNameOf } from "./functions.js";
4
3
  import { lioncore, metaConcepts, metaFeatures } from "./lioncore.js";
5
4
  import { Annotation, Concept, Containment, Enumeration, EnumerationLiteral, Interface, Language, PrimitiveType, Property, Reference } from "./types.js";
5
+ import { updateSettingsNameBased } from "../writing.js";
6
6
  const { inamed_name } = builtinFeatures;
7
7
  const { ikeyed_key } = metaFeatures;
8
- export const lioncoreExtractionFacade = {
8
+ export const lioncoreReader = {
9
9
  classifierOf: metaTypedBasedClassifierDeducerFor(lioncore),
10
10
  getFeatureValue: (node, feature) =>
11
11
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -13,9 +13,13 @@ export const lioncoreExtractionFacade = {
13
13
  enumerationLiteralFrom: (value, _) => value
14
14
  };
15
15
  /**
16
- * @return An implementation of {@link InstantiationFacade} for instances of the LionCore M3 (so M2s).
16
+ * Alias for {@link lioncoreReader}, kept for backward compatibility, and to be deprecated and removed later.
17
17
  */
18
- export const lioncoreInstantiationFacade = {
18
+ export const lioncoreExtractionFacade = lioncoreReader;
19
+ /**
20
+ * @return An implementation of {@link Writer} for instances of the LionCore M3 (so M2s).
21
+ */
22
+ export const lioncoreWriter = {
19
23
  nodeFor: (parent, classifier, id, propertySettings) => {
20
24
  switch (classifier.key) {
21
25
  case metaConcepts.annotation.key:
@@ -47,4 +51,8 @@ export const lioncoreInstantiationFacade = {
47
51
  },
48
52
  encodingOf: literal => literal
49
53
  };
54
+ /**
55
+ * Alias for {@link lioncoreWriter}, kept for backward compatibility, and to be deprecated and removed later.
56
+ */
57
+ export const lioncoreInstantationFacade = lioncoreWriter;
50
58
  //# sourceMappingURL=facade.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"facade.js","sourceRoot":"","sources":["../../src/m3/facade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"facade.js","sourceRoot":"","sources":["../../src/m3/facade.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,kCAAkC,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACpF,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEpE,OAAO,EACH,UAAU,EAEV,OAAO,EACP,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,SAAS,EACT,QAAQ,EAER,aAAa,EACb,QAAQ,EACR,SAAS,EACZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,uBAAuB,EAAU,MAAM,eAAe,CAAA;AAE/D,MAAM,EAAE,WAAW,EAAE,GAAG,eAAe,CAAA;AACvC,MAAM,EAAE,UAAU,EAAE,GAAG,YAAY,CAAA;AAEnC,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC7C,YAAY,EAAE,kCAAkC,CAAC,QAAQ,CAAC;IAC1D,eAAe,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC/B,8DAA8D;IAC7D,IAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,0CAA0C;IAC3E,sBAAsB,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,KAAkC;CAC3E,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,cAAc,CAAA;AAEtD;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC7C,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE;QAClD,QAAQ,UAAU,CAAC,GAAG,EAAE,CAAC;YACrB,KAAK,YAAY,CAAC,UAAU,CAAC,GAAG;gBAC5B,OAAO,IAAI,UAAU,CACjB,MAAkB,EAClB,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAW,EAC1C,EAAE,CACL,CAAA;YACL,KAAK,YAAY,CAAC,OAAO,CAAC,GAAG;gBACzB,OAAO,IAAI,OAAO,CACd,MAAkB,EAClB,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAW,EAC1C,EAAE,EACF,gBAAgB,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,CAAY,CACjE,CAAA;YACL,KAAK,YAAY,CAAC,SAAS,CAAC,GAAG;gBAC3B,OAAO,IAAI,SAAS,CAChB,MAAkB,EAClB,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAW,EAC1C,EAAE,CACL,CAAA;YACL,KAAK,YAAY,CAAC,WAAW,CAAC,GAAG;gBAC7B,OAAO,IAAI,WAAW,CAClB,MAAoB,EACpB,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAW,EAC1C,EAAE,CACL,CAAA;YACL,KAAK,YAAY,CAAC,WAAW,CAAC,GAAG;gBAC7B,OAAO,IAAI,WAAW,CAClB,MAAkB,EAClB,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAW,EAC1C,EAAE,CACL,CAAA;YACL,KAAK,YAAY,CAAC,kBAAkB,CAAC,GAAG;gBACpC,OAAO,IAAI,kBAAkB,CACzB,MAAqB,EACrB,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAW,EAC1C,EAAE,CACL,CAAA;YACL,KAAK,YAAY,CAAC,QAAQ,CAAC,GAAG;gBAC1B,OAAO,IAAI,QAAQ,CACf,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,CAAW,EAC7D,EAAE,EACF,gBAAgB,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAW,CAC1D,CAAA;YACL,KAAK,YAAY,CAAC,aAAa,CAAC,GAAG;gBAC/B,OAAO,IAAI,aAAa,CACpB,MAAkB,EAClB,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAW,EAC1C,EAAE,CACL,CAAA;YACL,KAAK,YAAY,CAAC,QAAQ,CAAC,GAAG;gBAC1B,OAAO,IAAI,QAAQ,CACf,MAAoB,EACpB,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAW,EAC1C,EAAE,CACL,CAAA;YACL,KAAK,YAAY,CAAC,SAAS,CAAC,GAAG;gBAC3B,OAAO,IAAI,SAAS,CAChB,MAAoB,EACpB,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAW,EAC3C,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAW,EAC1C,EAAE,CACL,CAAA;YACL;gBACI,MAAM,IAAI,KAAK,CACX,gCAAgC,eAAe,CAAC,UAAU,CAAC,aAAa,UAAU,CAAC,GAAG,4BAA4B,CACrH,CAAA;QACT,CAAC;IACL,CAAC;IACD,eAAe,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QACtC,uBAAuB,CAAC,IAA0C,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACvF,CAAC;IACD,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO;CACjC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,cAAc,CAAA"}
@@ -2,15 +2,15 @@
2
2
  * Various functions on M3 models.
3
3
  */
4
4
  import { LionWebId, LionWebKey } from "@lionweb/json";
5
- import { ClassifierDeducer } from "../facade.js";
6
5
  import { containmentChain } from "../functions.js";
6
+ import { ClassifierDeducer } from "../reading.js";
7
7
  import { unresolved } from "../references.js";
8
8
  import { Node } from "../types.js";
9
- import { Annotation, Classifier, Concept, Containment, Datatype, Enumeration, Feature, IKeyed, IMetaTyped, INamed, Language, LanguageEntity, Link, M3Concept, Property, Reference } from "./types.js";
9
+ import { Annotation, Classifier, Concept, Containment, DataType, Enumeration, Feature, IKeyed, IMetaTyped, INamed, Language, LanguageEntity, Link, M3Concept, Property, Reference } from "./types.js";
10
10
  /**
11
11
  * @return The type of the given {@link Feature}
12
12
  */
13
- declare const type: (feature: Feature) => Classifier | Datatype | typeof unresolved;
13
+ declare const type: (feature: Feature) => Classifier | DataType | typeof unresolved;
14
14
  declare const isProperty: (feature: Feature) => feature is Property;
15
15
  declare const isContainment: (feature: Feature) => feature is Containment;
16
16
  declare const isReference: (feature: Feature) => feature is Reference;
@@ -83,10 +83,26 @@ type ConcreteClassifier = Concept | Annotation;
83
83
  * *concrete*, i.e. is instantiable.
84
84
  */
85
85
  declare const isConcrete: (thing: LanguageEntity) => thing is ConcreteClassifier;
86
+ /**
87
+ * Determines whether the given {@link LanguageEntity metamodel element} is a {@link Concept concept}
88
+ * which is a partition.
89
+ */
90
+ declare const isPartition: (thing: LanguageEntity) => thing is Concept;
91
+ /**
92
+ * @return an array of {@link Classifier classifiers} that it **directly** inherits from.
93
+ */
94
+ declare const inheritsDirectlyFrom: (classifier: Classifier) => Classifier[];
95
+ /**
96
+ * Alias for {@link inheritsDirectlyFrom}, kept for backward compatibility, and to be deprecated and removed later.
97
+ */
86
98
  declare const inheritsFrom: (classifier: Classifier) => Classifier[];
87
99
  /**
88
100
  * @return an array that's either an inheritance cycle, or empty (meaning: no inheritance cycle).
89
101
  */
102
+ declare const inheritanceCycleWith: (classifier: Classifier) => Classifier[];
103
+ /**
104
+ * Alias for {@link inheritanceCycleWith}, kept for backward compatibility, and to be deprecated and removed later.
105
+ */
90
106
  declare const inheritedCycleWith: (classifier: Classifier) => Classifier[];
91
107
  /**
92
108
  * @return *all* super types (through `extends` or `implements`) of the given {@link Classifier classifier}.
@@ -137,6 +153,6 @@ declare const areSameClassifiers: (left: Classifier, right: Classifier) => boole
137
153
  * @return whether the two given {@link Language languages} are the same (/identical by meta-pointer).
138
154
  */
139
155
  declare const areSameLanguages: (left: Language, right: Language) => boolean;
140
- export { allContaineds, allFeaturesOf, allSuperTypesOf, areSameClassifiers, areSameLanguages, classBasedClassifierDeducerFor, concatenateNamesOf, conceptsOf, containmentChain, directlyContaineds, featureMetaType, flatMap, idBasedClassifierDeducerFor, inheritedCycleWith, inheritsFrom, instantiableClassifiersOf, isConcrete, isContainment, isEnumeration, isMultiple, isProperty, isReference, keyOf, metaTypedBasedClassifierDeducerFor, nameBasedClassifierDeducerFor, nameOf, namedsOf, nonRelationalFeatures, relations, relationsOf, type, qualifiedNameOf };
156
+ export { allContaineds, allFeaturesOf, allSuperTypesOf, areSameClassifiers, areSameLanguages, classBasedClassifierDeducerFor, concatenateNamesOf, conceptsOf, containmentChain, directlyContaineds, featureMetaType, flatMap, idBasedClassifierDeducerFor, inheritanceCycleWith, inheritedCycleWith, inheritsFrom, inheritsDirectlyFrom, instantiableClassifiersOf, isConcrete, isContainment, isEnumeration, isMultiple, isPartition, isProperty, isReference, keyOf, metaTypedBasedClassifierDeducerFor, nameBasedClassifierDeducerFor, nameOf, namedsOf, nonRelationalFeatures, relations, relationsOf, type, qualifiedNameOf };
141
157
  export type { FeatureMetaType };
142
158
  //# sourceMappingURL=functions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../src/m3/functions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAS,UAAU,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAClC,OAAO,EACH,UAAU,EACV,UAAU,EACV,OAAO,EACP,WAAW,EACX,QAAQ,EACR,WAAW,EACX,OAAO,EACP,MAAM,EACN,UAAU,EACV,MAAM,EAGN,QAAQ,EACR,cAAc,EACd,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,SAAS,EACZ,MAAM,YAAY,CAAA;AAGnB;;GAEG;AACH,QAAA,MAAM,IAAI,YAAa,OAAO,KAAG,UAAU,GAAG,QAAQ,GAAG,iBAClB,CAAA;AAGvC,QAAA,MAAM,UAAU,YAAa,OAAO,wBACL,CAAA;AAE/B,QAAA,MAAM,aAAa,YAAa,OAAO,2BACL,CAAA;AAElC,QAAA,MAAM,WAAW,YAAa,OAAO,yBACL,CAAA;AAEhC,QAAA,MAAM,UAAU,YAAa,OAAO,oBACW,CAAA;AAG/C;;GAEG;AACH,KAAK,eAAe,GACd,aAAa,GACb,UAAU,GACV,WAAW,CAAA;AAEjB;;GAEG;AACH,QAAA,MAAM,eAAe,YAAa,OAAO,KAAG,eAW3C,CAAA;AAUD;;GAEG;AACH,QAAA,MAAM,SAAS,aAAc,OAAO,EAAE,KAAG,IAAI,EACZ,CAAA;AAEjC;;GAEG;AACH,QAAA,MAAM,qBAAqB,aAAc,OAAO,EAAE,KAAG,OAAO,EACJ,CAAA;AAGxD;;GAEG;AACH,QAAA,MAAM,WAAW,YAAa,cAAc,KAAG,IAAI,EAGvC,CAAA;AAGZ;;;;;GAKG;AACH,QAAA,MAAM,kBAAkB,UAAW,SAAS,KAAG,SAAS,EAWvD,CAAA;AAGD;;;GAGG;AACH,QAAA,MAAM,aAAa,aAAc,QAAQ,KAAG,SAAS,EAKhD,CAAA;AAGL;;;GAGG;AACH,QAAA,MAAM,OAAO,gBAAiB,QAAQ,WAAW,SAAS,gBACO,CAAA;AAGjE;;GAEG;AACH,QAAA,MAAM,MAAM,qCAAkC,MACtC,CAAA;AAGR;;GAEG;AACH,eAAO,MAAM,UAAU,oCACQ,CAAA;AAG/B;;GAEG;AACH,QAAA,MAAM,kBAAkB,cAAe,MAAM,SAAS,SAAS,EAAE,KAAG,MAI5C,CAAA;AAGxB;;GAEG;AACH,QAAA,MAAM,eAAe,4DAAwD,MACK,CAAA;AAGlF;;;GAGG;AACH,QAAA,MAAM,QAAQ,aAAc,QAAQ,KAAG,SAAS,EACJ,CAAA;AAG5C;;GAEG;AACH,QAAA,MAAM,KAAK,oCAAiC,UACrC,CAAA;AAGP,KAAK,kBAAkB,GAAG,OAAO,GAAG,UAAU,CAAA;AAG9C;;;GAGG;AACH,QAAA,MAAM,UAAU,UAAW,cAAc,gCACyC,CAAA;AAElF,QAAA,MAAM,YAAY,eAAgB,UAAU,KAAG,UAAU,EAexD,CAAA;AAED;;GAEG;AACH,QAAA,MAAM,kBAAkB,eAAgB,UAAU,iBACX,CAAA;AAGvC;;GAEG;AACH,QAAA,MAAM,eAAe,eAAgB,UAAU,KAAG,UAAU,EACU,CAAA;AAGtE;;;GAGG;AACH,QAAA,MAAM,aAAa,eAAgB,UAAU,KAAG,OAAO,EACsB,CAAA;AAG7E;;GAEG;AACH,QAAA,MAAM,aAAa,YAAa,cAAc,2BACZ,CAAA;AAGlC;;GAEG;AACH,QAAA,MAAM,2BAA2B,aAAc,QAAQ,UAC9C,SAAS,eAC2F,CAAA;AAE7G;;GAEG;AACH,QAAA,MAAM,6BAA6B,aAAc,QAAQ,YAC9C,MAAM,eACgG,CAAA;AAGjH;;;;GAIG;AACH,QAAA,MAAM,8BAA8B,8BAA+B,QAAQ,0BACK,CAAA;AAGhF;;;;GAIG;AACH,QAAA,MAAM,kCAAkC,2CAA4C,QAAQ,0BAClB,CAAA;AAG1E;;GAEG;AACH,QAAA,MAAM,UAAU,aAAc,QAAQ,KAAG,OAAO,EACgC,CAAA;AAQhF;;GAEG;AACH,QAAA,MAAM,yBAAyB,aAAc,QAAQ,KAAG,UAAU,EACI,CAAA;AAGtE;;GAEG;AACH,QAAA,MAAM,kBAAkB,SAAU,UAAU,SAAS,UAAU,YAG1D,CAAA;AAEL;;GAEG;AACH,QAAA,MAAM,gBAAgB,SAAU,QAAQ,SAAS,QAAQ,YAGpD,CAAA;AAGL,OAAO,EACH,aAAa,EACb,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,8BAA8B,EAC9B,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,2BAA2B,EAC3B,kBAAkB,EAClB,YAAY,EACZ,yBAAyB,EACzB,UAAU,EACV,aAAa,EACb,aAAa,EACb,UAAU,EACV,UAAU,EACV,WAAW,EACX,KAAK,EACL,kCAAkC,EAClC,6BAA6B,EAC7B,MAAM,EACN,QAAQ,EACR,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,IAAI,EACJ,eAAe,EAClB,CAAA;AAED,YAAY,EACR,eAAe,EAClB,CAAA"}
1
+ {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../src/m3/functions.ts"],"names":[],"mappings":"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"}
@@ -113,7 +113,15 @@ const keyOf = ({ key }) => key;
113
113
  * *concrete*, i.e. is instantiable.
114
114
  */
115
115
  const isConcrete = (thing) => (thing instanceof Concept && !thing.abstract) || (thing instanceof Annotation);
116
- const inheritsFrom = (classifier) => {
116
+ /**
117
+ * Determines whether the given {@link LanguageEntity metamodel element} is a {@link Concept concept}
118
+ * which is a partition.
119
+ */
120
+ const isPartition = (thing) => thing instanceof Concept && thing.partition;
121
+ /**
122
+ * @return an array of {@link Classifier classifiers} that it **directly** inherits from.
123
+ */
124
+ const inheritsDirectlyFrom = (classifier) => {
117
125
  if (classifier instanceof Concept || classifier instanceof Annotation) {
118
126
  return [
119
127
  ...(isRef(classifier.extends)
@@ -127,19 +135,27 @@ const inheritsFrom = (classifier) => {
127
135
  }
128
136
  throw new Error(`classifier type ${typeof classifier} not handled`);
129
137
  };
138
+ /**
139
+ * Alias for {@link inheritsDirectlyFrom}, kept for backward compatibility, and to be deprecated and removed later.
140
+ */
141
+ const inheritsFrom = inheritsDirectlyFrom;
130
142
  /**
131
143
  * @return an array that's either an inheritance cycle, or empty (meaning: no inheritance cycle).
132
144
  */
133
- const inheritedCycleWith = (classifier) => cycleWith(classifier, inheritsFrom);
145
+ const inheritanceCycleWith = (classifier) => cycleWith(classifier, inheritsDirectlyFrom);
146
+ /**
147
+ * Alias for {@link inheritanceCycleWith}, kept for backward compatibility, and to be deprecated and removed later.
148
+ */
149
+ const inheritedCycleWith = inheritanceCycleWith;
134
150
  /**
135
151
  * @return *all* super types (through `extends` or `implements`) of the given {@link Classifier classifier}.
136
152
  */
137
- const allSuperTypesOf = (classifier) => flatMapNonCyclingFollowing(inheritsFrom, inheritsFrom)(classifier);
153
+ const allSuperTypesOf = (classifier) => flatMapNonCyclingFollowing(inheritsDirectlyFrom, inheritsDirectlyFrom)(classifier);
138
154
  /**
139
155
  * @return *all* {@link Feature features} of the given {@link Classifier classifier},
140
156
  * including the inherited ones.
141
157
  */
142
- const allFeaturesOf = (classifier) => flatMapNonCyclingFollowing((ci) => ci.features, inheritsFrom)(classifier);
158
+ const allFeaturesOf = (classifier) => flatMapNonCyclingFollowing((ci) => ci.features, inheritsDirectlyFrom)(classifier);
143
159
  /**
144
160
  * Determines whether the given {@link LanguageEntity language element} is an {@link Enumeration enumeration}.
145
161
  */
@@ -183,5 +199,5 @@ const areSameClassifiers = (left, right) => (left === right) || (areSameLanguage
183
199
  * @return whether the two given {@link Language languages} are the same (/identical by meta-pointer).
184
200
  */
185
201
  const areSameLanguages = (left, right) => (left === right) || (left.key === right.key && left.version === right.version);
186
- export { allContaineds, allFeaturesOf, allSuperTypesOf, areSameClassifiers, areSameLanguages, classBasedClassifierDeducerFor, concatenateNamesOf, conceptsOf, containmentChain, directlyContaineds, featureMetaType, flatMap, idBasedClassifierDeducerFor, inheritedCycleWith, inheritsFrom, instantiableClassifiersOf, isConcrete, isContainment, isEnumeration, isMultiple, isProperty, isReference, keyOf, metaTypedBasedClassifierDeducerFor, nameBasedClassifierDeducerFor, nameOf, namedsOf, nonRelationalFeatures, relations, relationsOf, type, qualifiedNameOf };
202
+ export { allContaineds, allFeaturesOf, allSuperTypesOf, areSameClassifiers, areSameLanguages, classBasedClassifierDeducerFor, concatenateNamesOf, conceptsOf, containmentChain, directlyContaineds, featureMetaType, flatMap, idBasedClassifierDeducerFor, inheritanceCycleWith, inheritedCycleWith, inheritsFrom, inheritsDirectlyFrom, instantiableClassifiersOf, isConcrete, isContainment, isEnumeration, isMultiple, isPartition, isProperty, isReference, keyOf, metaTypedBasedClassifierDeducerFor, nameBasedClassifierDeducerFor, nameOf, namedsOf, nonRelationalFeatures, relations, relationsOf, type, qualifiedNameOf };
187
203
  //# sourceMappingURL=functions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/m3/functions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAE1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,KAAK,EAAc,MAAM,kBAAkB,CAAA;AAEpD,OAAO,EACH,UAAU,EACV,UAAU,EACV,OAAO,EACP,WAAW,EAEX,WAAW,EAKX,SAAS,EACT,QAAQ,EACR,QAAQ,EAER,IAAI,EAEJ,QAAQ,EACR,SAAS,EACZ,MAAM,YAAY,CAAA;AAGnB;;GAEG;AACH,MAAM,IAAI,GAAG,CAAC,OAAgB,EAA6C,EAAE,CACxE,OAA6B,CAAC,IAAI,CAAA;AAGvC,MAAM,UAAU,GAAG,CAAC,OAAgB,EAAuB,EAAE,CACzD,OAAO,YAAY,QAAQ,CAAA;AAE/B,MAAM,aAAa,GAAG,CAAC,OAAgB,EAA0B,EAAE,CAC/D,OAAO,YAAY,WAAW,CAAA;AAElC,MAAM,WAAW,GAAG,CAAC,OAAgB,EAAwB,EAAE,CAC3D,OAAO,YAAY,SAAS,CAAA;AAEhC,MAAM,UAAU,GAAG,CAAC,OAAgB,EAAmB,EAAE,CACrD,OAAO,YAAY,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAA;AAW/C;;GAEG;AACH,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAmB,EAAE;IAC1D,IAAI,OAAO,YAAY,WAAW,EAAE,CAAC;QACjC,OAAO,aAAa,CAAA;IACxB,CAAC;IACD,IAAI,OAAO,YAAY,QAAQ,EAAE,CAAC;QAC9B,OAAO,UAAU,CAAA;IACrB,CAAC;IACD,IAAI,OAAO,YAAY,SAAS,EAAE,CAAC;QAC/B,OAAO,WAAW,CAAA;IACtB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;AAC7E,CAAC,CAAA;AAGD;;;GAGG;AACH,MAAM,YAAY,GAAG,CAAC,OAAgB,EAAmB,EAAE,CACvD,OAAO,YAAY,IAAI,CAAA;AAE3B;;GAEG;AACH,MAAM,SAAS,GAAG,CAAC,QAAmB,EAAU,EAAE,CAC9C,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;AAEjC;;GAEG;AACH,MAAM,qBAAqB,GAAG,CAAC,QAAmB,EAAa,EAAE,CAC7D,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;AAGxD;;GAEG;AACH,MAAM,WAAW,GAAG,CAAC,OAAuB,EAAU,EAAE,CACpD,OAAO,YAAY,UAAU;IACzB,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC7B,CAAC,CAAC,EAAE,CAAA;AAGZ;;;;;GAKG;AACH,MAAM,kBAAkB,GAAG,CAAC,KAAgB,EAAe,EAAE;IACzD,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC,QAAQ,CAAA;IACzB,CAAC;IACD,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,QAAuB,CAAA,CAAI,2EAA2E;IACvH,CAAC;IACD,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC,QAAQ,CAAA;IACzB,CAAC;IACD,OAAO,EAAE,CAAA;AACb,CAAC,CAAA;AAGD;;;GAGG;AACH,MAAM,aAAa,GAAG,CAAC,QAAkB,EAAe,EAAE,CACtD;IACI,QAAQ;IACR,GAAG,kBAAkB,CAAC,QAAQ,CAAC;IAC/B,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;CAC9D,CAAA;AAGL;;;GAGG;AACH,MAAM,OAAO,GAAG,CAAI,QAAkB,EAAE,GAA0B,EAAO,EAAE,CACvE,0BAA0B,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAAC,CAAA;AAGjE;;GAEG;AACH,MAAM,MAAM,GAAG,CAAmB,EAAC,IAAI,EAAI,EAAU,EAAE,CACnD,IAAI,CAAA;AAGR;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAmB,EAAO,EAAO,EAAE,CACzD,eAAe,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;AAG/B;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,SAAiB,EAAE,KAAkB,EAAU,EAAE,CACzE,KAAK;KACA,MAAM,CAAC,QAAQ,CAAC;KAChB,GAAG,CAAC,MAAM,CAAC;KACX,IAAI,CAAC,SAAS,CAAC,CAAA;AACpB,gFAAgF;AAEpF;;GAEG;AACH,MAAM,eAAe,GAAG,CAA0B,IAAO,EAAE,SAAS,GAAG,GAAG,EAAU,EAAE,CAClF,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAiB,CAAC,CAAA;AAGlF;;;GAGG;AACH,MAAM,QAAQ,GAAG,CAAC,QAAkB,EAAe,EAAE,CACjD,aAAa,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;AAG5C;;GAEG;AACH,MAAM,KAAK,GAAG,CAAmB,EAAC,GAAG,EAAI,EAAc,EAAE,CACrD,GAAG,CAAA;AAMP;;;GAGG;AACH,MAAM,UAAU,GAAG,CAAC,KAAqB,EAA+B,EAAE,CACtE,CAAC,KAAK,YAAY,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,YAAY,UAAU,CAAC,CAAA;AAElF,MAAM,YAAY,GAAG,CAAC,UAAsB,EAAgB,EAAE;IAC1D,IAAI,UAAU,YAAY,OAAO,IAAI,UAAU,YAAY,UAAU,EAAE,CAAC;QACpE,OAAO;YACH,GAAG,CACC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;gBACrB,CAAC,CAAC,CAAC,UAAU,CAAC,OAAqB,CAAC;gBACpC,CAAC,CAAC,EAAE,CACX;YACD,GAAG,UAAU,CAAC,UAAU;SAC3B,CAAA;IACL,CAAC;IACD,IAAI,UAAU,YAAY,SAAS,EAAE,CAAC;QAClC,OAAO,UAAU,CAAC,OAAO,CAAA;IAC7B,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,mBAAmB,OAAO,UAAU,cAAc,CAAC,CAAA;AACvE,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,UAAsB,EAAE,EAAE,CAClD,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;AAGvC;;GAEG;AACH,MAAM,eAAe,GAAG,CAAC,UAAsB,EAAgB,EAAE,CAC7D,0BAA0B,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,CAAA;AAGtE;;;GAGG;AACH,MAAM,aAAa,GAAG,CAAC,UAAsB,EAAa,EAAE,CACxD,0BAA0B,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,CAAA;AAG7E;;GAEG;AACH,MAAM,aAAa,GAAG,CAAC,OAAuB,EAA0B,EAAE,CACtE,OAAO,YAAY,WAAW,CAAA;AAGlC;;GAEG;AACH,MAAM,2BAA2B,GAAG,CAAC,QAAkB,EAAE,EAAE,CACvD,CAAC,EAAa,EAAE,EAAE,CACd,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,YAAY,UAAU,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAe,CAAA;AAE7G;;GAEG;AACH,MAAM,6BAA6B,GAAG,CAAC,QAAkB,EAAE,EAAE,CACzD,CAAC,IAAY,EAAE,EAAE,CACb,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,YAAY,UAAU,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAe,CAAA;AAGjH;;;;GAIG;AACH,MAAM,8BAA8B,GAAG,CAAkB,QAAkB,EAAyB,EAAE,CAClG,CAAC,IAAQ,EAAE,EAAE,CAAC,6BAA6B,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;AAGhF;;;;GAIG;AACH,MAAM,kCAAkC,GAAG,CAA+B,QAAkB,EAAyB,EAAE,CACnH,CAAC,IAAQ,EAAE,EAAE,CAAC,6BAA6B,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;AAG1E;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,QAAkB,EAAa,EAAE,CACjD,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,YAAY,OAAO,CAAc,CAAA;AAGhF,MAAM,wBAAwB,GAAG,CAAC,MAAsB,EAAW,EAAE,CAC9D,MAAM,YAAY,UAAU;OAC5B,CAAC,MAAM,YAAY,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;AAClD,sDAAsD;AAE1D;;GAEG;AACH,MAAM,yBAAyB,GAAG,CAAC,QAAkB,EAAgB,EAAE,CACnE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,wBAAwB,CAAiB,CAAA;AAGtE;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,IAAgB,EAAE,KAAiB,EAAE,EAAE,CAC/D,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAChB,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CAC5E,CAAA;AAEL;;GAEG;AACH,MAAM,gBAAgB,GAAG,CAAC,IAAc,EAAE,KAAe,EAAE,EAAE,CACzD,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAChB,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAC3D,CAAA;AAGL,OAAO,EACH,aAAa,EACb,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,8BAA8B,EAC9B,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,2BAA2B,EAC3B,kBAAkB,EAClB,YAAY,EACZ,yBAAyB,EACzB,UAAU,EACV,aAAa,EACb,aAAa,EACb,UAAU,EACV,UAAU,EACV,WAAW,EACX,KAAK,EACL,kCAAkC,EAClC,6BAA6B,EAC7B,MAAM,EACN,QAAQ,EACR,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,IAAI,EACJ,eAAe,EAClB,CAAA"}
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/m3/functions.ts"],"names":[],"mappings":"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"}
@@ -12,15 +12,15 @@ const factory = new LanguageFactory("LionCore_M3", currentReleaseVersion, (...na
12
12
  */
13
13
  export const lioncore = factory.language.havingKey("LionCore-M3");
14
14
  const { inamed } = builtinClassifiers;
15
- const { booleanDatatype, stringDatatype } = builtinPrimitives;
15
+ const { booleanDataType, stringDataType } = builtinPrimitives;
16
16
  const ikeyed = factory.interface("IKeyed").extending(inamed);
17
- const ikeyed_key = factory.property(ikeyed, "key").ofType(stringDatatype);
17
+ const ikeyed_key = factory.property(ikeyed, "key").ofType(stringDataType);
18
18
  const feature = factory.concept("Feature", true).implementing(ikeyed);
19
- const feature_optional = factory.property(feature, "optional").ofType(booleanDatatype);
19
+ const feature_optional = factory.property(feature, "optional").ofType(booleanDataType);
20
20
  const property = factory.concept("Property", false, feature);
21
21
  const property_type = factory.reference(property, "type");
22
22
  const link = factory.concept("Link", true, feature);
23
- const link_multiple = factory.property(link, "multiple").ofType(booleanDatatype);
23
+ const link_multiple = factory.property(link, "multiple").ofType(booleanDataType);
24
24
  const link_type = factory.reference(link, "type");
25
25
  const containment = factory.concept("Containment", false, link);
26
26
  const reference = factory.concept("Reference", false, link);
@@ -33,8 +33,8 @@ const annotation_annotates = factory.reference(annotation, "annotates").isOption
33
33
  const annotation_extends = factory.reference(annotation, "extends").isOptional().ofType(annotation);
34
34
  const annotation_implements = factory.reference(annotation, "implements").isMultiple().isOptional();
35
35
  const concept = factory.concept("Concept", false, classifier);
36
- const concept_abstract = factory.property(concept, "abstract").ofType(booleanDatatype);
37
- const concept_partition = factory.property(concept, "partition").ofType(booleanDatatype);
36
+ const concept_abstract = factory.property(concept, "abstract").ofType(booleanDataType);
37
+ const concept_partition = factory.property(concept, "partition").ofType(booleanDataType);
38
38
  const concept_extends = factory.reference(concept, "extends").isOptional().ofType(concept);
39
39
  const concept_implements = factory.reference(concept, "implements").isOptional().isMultiple();
40
40
  const interface_ = factory.concept("Interface", false, classifier);
@@ -49,7 +49,7 @@ const enumeration_literals = factory.containment(enumeration, "literals").isMult
49
49
  const enumerationLiteral = factory.concept("EnumerationLiteral", false).implementing(ikeyed);
50
50
  enumeration_literals.ofType(enumerationLiteral);
51
51
  const language = factory.concept("Language", false).implementing(ikeyed).isPartition();
52
- const language_version = factory.property(language, "version").ofType(stringDatatype);
52
+ const language_version = factory.property(language, "version").ofType(stringDataType);
53
53
  const language_entities = factory.containment(language, "entities").isOptional().isMultiple().ofType(languageEntity);
54
54
  const language_dependsOn = factory.reference(language, "dependsOn").isOptional().isMultiple().ofType(language);
55
55
  export const metaConcepts = {
@@ -1 +1 @@
1
- {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../src/m3/serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGhD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAGrC;;;GAGG;AACH,eAAO,MAAM,kBAAkB,iBAAkB,QAAQ,EAAE,KAAG,gBACP,CAAA"}
1
+ {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../src/m3/serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGhD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAGrC;;;GAGG;AACH,eAAO,MAAM,kBAAkB,iBAAkB,QAAQ,EAAE,KAAG,gBACjB,CAAA"}