@lionweb/core 0.10.0-alpha.4 → 0.10.0-alpha.6
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/CHANGELOG.md +1 -0
- package/dist/m3/factory.d.ts +2 -2
- package/dist/m3/factory.d.ts.map +1 -1
- package/dist/m3/factory.js.map +1 -1
- package/dist/m3/types.d.ts +6 -2
- package/dist/m3/types.d.ts.map +1 -1
- package/dist/m3/types.js +7 -2
- package/dist/m3/types.js.map +1 -1
- package/dist/m3/versions/v2023_1/builtins.d.ts.map +1 -1
- package/dist/m3/versions/v2023_1/builtins.js +2 -1
- package/dist/m3/versions/v2023_1/builtins.js.map +1 -1
- package/dist/m3/versions/v2023_1/lioncore.d.ts.map +1 -1
- package/dist/m3/versions/v2023_1/lioncore.js +16 -15
- package/dist/m3/versions/v2023_1/lioncore.js.map +1 -1
- package/package.json +3 -3
- package/src/m3/factory.ts +10 -2
- package/src/m3/types.ts +8 -2
- package/src/m3/versions/v2023_1/builtins.ts +2 -1
- package/src/m3/versions/v2023_1/lioncore.ts +16 -15
package/CHANGELOG.md
CHANGED
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
* Serialization skips references that are unresolved and for which no `resolveInfo` can be obtained.
|
|
17
17
|
* *Narrow* the type of the argument of the `asIds` function to `Node[]`.
|
|
18
18
|
*Note* that this is technically a breaking change, but this function is essentially only used internally.
|
|
19
|
+
* Widen the `abstract` argument to both the `new Concept` (5th argument) and `LanguageFactory.concept` (2nd argument) calls, to include the `ConceptModifier` enum with literals `concrete` and `abstract`.
|
|
19
20
|
|
|
20
21
|
|
|
21
22
|
## 0.9.0
|
package/dist/m3/factory.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { StringsMapper } from "@lionweb/ts-utils";
|
|
2
2
|
import { SingleRef } from "../references.js";
|
|
3
|
-
import { Annotation, Classifier, Concept, Containment, Enumeration, EnumerationLiteral, Interface, Language, PrimitiveType, Property, Reference } from "./types.js";
|
|
3
|
+
import { Annotation, Classifier, Concept, ConceptModifier, Containment, Enumeration, EnumerationLiteral, Interface, Language, PrimitiveType, Property, Reference } from "./types.js";
|
|
4
4
|
/**
|
|
5
5
|
* A factory that produces a {@link Language} instance,
|
|
6
6
|
* as well as {@link LanguageEntity entities} contained by that instance
|
|
@@ -17,7 +17,7 @@ export declare class LanguageFactory {
|
|
|
17
17
|
readonly language: Language;
|
|
18
18
|
constructor(name: string, version: string, id: StringsMapper, key: StringsMapper);
|
|
19
19
|
annotation(name: string, extends_?: SingleRef<Annotation>): Annotation;
|
|
20
|
-
concept(name: string, abstract: boolean, extends_?: SingleRef<Concept>): Concept;
|
|
20
|
+
concept(name: string, abstract: boolean | ConceptModifier, extends_?: SingleRef<Concept>): Concept;
|
|
21
21
|
interface(name: string): Interface;
|
|
22
22
|
enumeration(name: string): Enumeration;
|
|
23
23
|
primitiveType(name: string): PrimitiveType;
|
package/dist/m3/factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/m3/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EACH,UAAU,EACV,UAAU,EACV,OAAO,EACP,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,SAAS,EACT,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,SAAS,EACZ,MAAM,YAAY,CAAA;AAGnB;;;;;;;;;GASG;AACH,qBAAa,eAAe;IAExB,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;gBAEf,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa;IAOhF,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,UAAU;IAMtE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO;
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/m3/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EACH,UAAU,EACV,UAAU,EACV,OAAO,EACP,eAAe,EACf,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,SAAS,EACT,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,SAAS,EACZ,MAAM,YAAY,CAAA;AAGnB;;;;;;;;;GASG;AACH,qBAAa,eAAe;IAExB,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;gBAEf,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa;IAOhF,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,UAAU;IAMtE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,eAAe,EAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO;IAalG,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS;IAMlC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW;IAMtC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;IAO1C,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW;IAM9D,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ;IAMxD,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS;IAO1D,kBAAkB,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB;CAMjF"}
|
package/dist/m3/factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/m3/factory.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,UAAU,EAEV,OAAO,
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/m3/factory.ts"],"names":[],"mappings":"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"}
|
package/dist/m3/types.d.ts
CHANGED
|
@@ -69,13 +69,17 @@ declare abstract class Classifier extends LanguageEntity {
|
|
|
69
69
|
havingFeatures(...features: Feature[]): this;
|
|
70
70
|
metaPointer(): LionWebJsonMetaPointer;
|
|
71
71
|
}
|
|
72
|
+
declare enum ConceptModifier {
|
|
73
|
+
concrete = 0,
|
|
74
|
+
abstract = 1
|
|
75
|
+
}
|
|
72
76
|
declare class Concept extends Classifier {
|
|
73
77
|
metaType(): string;
|
|
74
78
|
abstract: boolean;
|
|
75
79
|
partition: boolean;
|
|
76
80
|
extends?: SingleRef<Concept>;
|
|
77
81
|
readonly implements: MultiRef<Interface>;
|
|
78
|
-
constructor(language: Language, name: string, key: LionWebKey, id: LionWebId, abstract: boolean, extends_?: SingleRef<Concept>);
|
|
82
|
+
constructor(language: Language, name: string, key: LionWebKey, id: LionWebId, abstract: boolean | ConceptModifier, extends_?: SingleRef<Concept>);
|
|
79
83
|
implementing(...interfaces: Interface[]): Concept;
|
|
80
84
|
isPartition(): Concept;
|
|
81
85
|
}
|
|
@@ -129,6 +133,6 @@ declare class Language extends M3Node {
|
|
|
129
133
|
* so they also implement {@link INamed} and {@link IKeyed}.
|
|
130
134
|
*/
|
|
131
135
|
type M3Concept = Annotation | Concept | Containment | Enumeration | EnumerationLiteral | Interface | Language | PrimitiveType | Property | Reference;
|
|
132
|
-
export { Annotation, Classifier, Concept, Containment, DataType, Datatype, Enumeration, EnumerationLiteral, Feature, Interface, M3Node, Language, LanguageEntity, Link, PrimitiveType, Property, Reference, isINamed, lioncoreBuiltinsKey, simpleNameDeducer };
|
|
136
|
+
export { Annotation, Classifier, Concept, ConceptModifier, Containment, DataType, Datatype, Enumeration, EnumerationLiteral, Feature, Interface, M3Node, Language, LanguageEntity, Link, PrimitiveType, Property, Reference, isINamed, lioncoreBuiltinsKey, simpleNameDeducer };
|
|
133
137
|
export type { IKeyed, IMetaTyped, INamed, M3Concept };
|
|
134
138
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/m3/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/m3/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/m3/types.ts"],"names":[],"mappings":"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"}
|
package/dist/m3/types.js
CHANGED
|
@@ -104,6 +104,11 @@ class Classifier extends LanguageEntity {
|
|
|
104
104
|
};
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
|
+
var ConceptModifier;
|
|
108
|
+
(function (ConceptModifier) {
|
|
109
|
+
ConceptModifier[ConceptModifier["concrete"] = 0] = "concrete";
|
|
110
|
+
ConceptModifier[ConceptModifier["abstract"] = 1] = "abstract";
|
|
111
|
+
})(ConceptModifier || (ConceptModifier = {}));
|
|
107
112
|
class Concept extends Classifier {
|
|
108
113
|
metaType() {
|
|
109
114
|
return "Concept";
|
|
@@ -111,7 +116,7 @@ class Concept extends Classifier {
|
|
|
111
116
|
constructor(language, name, key, id, abstract, extends_) {
|
|
112
117
|
super(language, name, key, id);
|
|
113
118
|
this.implements = []; // (reference)
|
|
114
|
-
this.abstract = abstract;
|
|
119
|
+
this.abstract = abstract === ConceptModifier.abstract || abstract === true;
|
|
115
120
|
this.extends = extends_;
|
|
116
121
|
this.partition = false;
|
|
117
122
|
}
|
|
@@ -219,5 +224,5 @@ class Language extends M3Node {
|
|
|
219
224
|
return this.key === that.key && this.version === that.version;
|
|
220
225
|
}
|
|
221
226
|
}
|
|
222
|
-
export { Annotation, Classifier, Concept, Containment, DataType, Datatype, Enumeration, EnumerationLiteral, Feature, Interface, M3Node, Language, LanguageEntity, Link, PrimitiveType, Property, Reference, isINamed, lioncoreBuiltinsKey, simpleNameDeducer };
|
|
227
|
+
export { Annotation, Classifier, Concept, ConceptModifier, Containment, DataType, Datatype, Enumeration, EnumerationLiteral, Feature, Interface, M3Node, Language, LanguageEntity, Link, PrimitiveType, Property, Reference, isINamed, lioncoreBuiltinsKey, simpleNameDeducer };
|
|
223
228
|
//# sourceMappingURL=types.js.map
|
package/dist/m3/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/m3/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/m3/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/builtins.ts"],"names":[],"mappings":"AACA,OAAO,EACH,sBAAsB,EAMzB,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/builtins.ts"],"names":[],"mappings":"AACA,OAAO,EACH,sBAAsB,EAMzB,MAAM,0BAA0B,CAAA;AA6BjC,eAAO,MAAM,sBAAsB,EAAE,sBAwCpC,CAAA;AAGD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,mCAAmB,CAAA;AAChD;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;0DAAwC,CAAA;AACtE;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;CAAqC,CAAA;AACpE;;GAEG;AACH,eAAO,MAAM,eAAe;;CAAkC,CAAA;AAC9D;;GAEG;AACH,eAAO,MAAM,gBAAgB,0HAAuB,CAAA"}
|
|
@@ -2,6 +2,7 @@ import { asMinimalJsonString } from "@lionweb/ts-utils";
|
|
|
2
2
|
import { lioncoreBuiltinsIdAndKeyGenerator, newPropertyValueDeserializerRegistry, newPropertyValueSerializerRegistry, propertyValueDeserializerFrom, propertyValueSerializerFrom } from "../../builtins-common.js";
|
|
3
3
|
import { isBuiltinNodeConcept } from "../../builtins-function.js";
|
|
4
4
|
import { LanguageFactory } from "../../factory.js";
|
|
5
|
+
import { ConceptModifier } from "../../types.js";
|
|
5
6
|
const factory = new LanguageFactory("LionCore_builtins", "2023.1", lioncoreBuiltinsIdAndKeyGenerator, lioncoreBuiltinsIdAndKeyGenerator);
|
|
6
7
|
/*
|
|
7
8
|
* ID == key: `LionCore-builtins-${qualified name _without_ "LionCore-builtins", dash-separated}`
|
|
@@ -10,7 +11,7 @@ const stringDataType = factory.primitiveType("String");
|
|
|
10
11
|
const booleanDataType = factory.primitiveType("Boolean");
|
|
11
12
|
const integerDataType = factory.primitiveType("Integer");
|
|
12
13
|
const jsonDataType = factory.primitiveType("JSON");
|
|
13
|
-
const node = factory.concept("Node",
|
|
14
|
+
const node = factory.concept("Node", ConceptModifier.abstract);
|
|
14
15
|
const inamed = factory.interface("INamed");
|
|
15
16
|
const inamed_name = factory.property(inamed, "name").ofType(stringDataType);
|
|
16
17
|
export const lioncoreBuiltinsFacade = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtins.js","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/builtins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAEH,iCAAiC,EACjC,oCAAoC,EACpC,kCAAkC,EAClC,6BAA6B,EAC7B,2BAA2B,EAC9B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"builtins.js","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/builtins.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lioncore.d.ts","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/lioncore.ts"],"names":[],"mappings":"AAEA,OAAO,EAA4B,cAAc,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"lioncore.d.ts","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/lioncore.ts"],"names":[],"mappings":"AAEA,OAAO,EAA4B,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAenF;;;;GAIG;AACH,eAAO,MAAM,QAAQ,mCAA4C,CAAA;AA6DjE,eAAO,MAAM,cAAc,EAAE,cAqB5B,CAAA;AAGD;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;CAA8B,CAAA;AAEvD;;GAEG;AACH,eAAO,MAAM,YAAY;;;;CAA8B,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { lioncoreBuiltinsFacade } from "./builtins.js";
|
|
2
2
|
import { LanguageFactory } from "../../factory.js";
|
|
3
3
|
import { generatedLionCoreKeyFrom } from "../../lioncore-common.js";
|
|
4
|
+
import { ConceptModifier } from "../../types.js";
|
|
4
5
|
const factory = new LanguageFactory("LionCore_M3", "2023.1", (...names) => "-id-" + generatedLionCoreKeyFrom(...names), generatedLionCoreKeyFrom);
|
|
5
6
|
/*
|
|
6
7
|
* ID: `-id-${key}`
|
|
@@ -16,40 +17,40 @@ const { inamed } = lioncoreBuiltinsFacade.classifiers;
|
|
|
16
17
|
const { booleanDataType, stringDataType } = lioncoreBuiltinsFacade.primitiveTypes;
|
|
17
18
|
const ikeyed = factory.interface("IKeyed").extending(inamed);
|
|
18
19
|
const ikeyed_key = factory.property(ikeyed, "key").ofType(stringDataType);
|
|
19
|
-
const feature = factory.concept("Feature",
|
|
20
|
+
const feature = factory.concept("Feature", ConceptModifier.abstract).implementing(ikeyed);
|
|
20
21
|
factory.property(feature, "optional").ofType(booleanDataType);
|
|
21
|
-
const property = factory.concept("Property",
|
|
22
|
+
const property = factory.concept("Property", ConceptModifier.concrete, feature);
|
|
22
23
|
const property_type = factory.reference(property, "type");
|
|
23
|
-
const link = factory.concept("Link",
|
|
24
|
+
const link = factory.concept("Link", ConceptModifier.abstract, feature);
|
|
24
25
|
factory.property(link, "multiple").ofType(booleanDataType);
|
|
25
26
|
const link_type = factory.reference(link, "type");
|
|
26
|
-
const containment = factory.concept("Containment",
|
|
27
|
-
const reference = factory.concept("Reference",
|
|
28
|
-
const languageEntity = factory.concept("LanguageEntity",
|
|
29
|
-
const classifier = factory.concept("Classifier",
|
|
27
|
+
const containment = factory.concept("Containment", ConceptModifier.concrete, link);
|
|
28
|
+
const reference = factory.concept("Reference", ConceptModifier.concrete, link);
|
|
29
|
+
const languageEntity = factory.concept("LanguageEntity", ConceptModifier.abstract).implementing(ikeyed);
|
|
30
|
+
const classifier = factory.concept("Classifier", ConceptModifier.abstract, languageEntity);
|
|
30
31
|
factory.containment(classifier, "features").isOptional().isMultiple().ofType(feature);
|
|
31
32
|
link_type.ofType(classifier);
|
|
32
|
-
const annotation = factory.concept("Annotation",
|
|
33
|
+
const annotation = factory.concept("Annotation", ConceptModifier.concrete, classifier);
|
|
33
34
|
factory.reference(annotation, "annotates").isOptional().ofType(classifier);
|
|
34
35
|
factory.reference(annotation, "extends").isOptional().ofType(annotation);
|
|
35
36
|
const annotation_implements = factory.reference(annotation, "implements").isMultiple().isOptional();
|
|
36
|
-
const concept = factory.concept("Concept",
|
|
37
|
+
const concept = factory.concept("Concept", ConceptModifier.concrete, classifier);
|
|
37
38
|
const concept_abstract = factory.property(concept, "abstract").ofType(booleanDataType);
|
|
38
39
|
factory.property(concept, "partition").ofType(booleanDataType);
|
|
39
40
|
factory.reference(concept, "extends").isOptional().ofType(concept);
|
|
40
41
|
const concept_implements = factory.reference(concept, "implements").isOptional().isMultiple();
|
|
41
|
-
const interface_ = factory.concept("Interface",
|
|
42
|
+
const interface_ = factory.concept("Interface", ConceptModifier.concrete, classifier);
|
|
42
43
|
factory.reference(interface_, "extends").isOptional().isMultiple().ofType(interface_);
|
|
43
44
|
annotation_implements.ofType(interface_);
|
|
44
45
|
concept_implements.ofType(interface_);
|
|
45
|
-
const dataType = factory.concept("DataType",
|
|
46
|
+
const dataType = factory.concept("DataType", ConceptModifier.abstract, languageEntity);
|
|
46
47
|
property_type.ofType(dataType);
|
|
47
|
-
const primitiveType = factory.concept("PrimitiveType",
|
|
48
|
-
const enumeration = factory.concept("Enumeration",
|
|
48
|
+
const primitiveType = factory.concept("PrimitiveType", ConceptModifier.concrete, dataType);
|
|
49
|
+
const enumeration = factory.concept("Enumeration", ConceptModifier.concrete, dataType);
|
|
49
50
|
const enumeration_literals = factory.containment(enumeration, "literals").isMultiple().isOptional();
|
|
50
|
-
const enumerationLiteral = factory.concept("EnumerationLiteral",
|
|
51
|
+
const enumerationLiteral = factory.concept("EnumerationLiteral", ConceptModifier.concrete).implementing(ikeyed);
|
|
51
52
|
enumeration_literals.ofType(enumerationLiteral);
|
|
52
|
-
const language = factory.concept("Language",
|
|
53
|
+
const language = factory.concept("Language", ConceptModifier.concrete).implementing(ikeyed).isPartition();
|
|
53
54
|
const language_version = factory.property(language, "version").ofType(stringDataType);
|
|
54
55
|
factory.containment(language, "entities").isOptional().isMultiple().ofType(languageEntity);
|
|
55
56
|
factory.reference(language, "dependsOn").isOptional().isMultiple().ofType(language);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lioncore.js","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/lioncore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,wBAAwB,EAAkB,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"lioncore.js","sourceRoot":"","sources":["../../../../src/m3/versions/v2023_1/lioncore.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lionweb/core",
|
|
3
|
-
"version": "0.10.0-alpha.
|
|
3
|
+
"version": "0.10.0-alpha.6",
|
|
4
4
|
"description": "LionWeb core for {Java|Type}Script",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"release": "npm publish"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@lionweb/json": "0.10.0-alpha.
|
|
31
|
-
"@lionweb/ts-utils": "0.10.0-alpha.
|
|
30
|
+
"@lionweb/json": "0.10.0-alpha.6",
|
|
31
|
+
"@lionweb/ts-utils": "0.10.0-alpha.6"
|
|
32
32
|
}
|
|
33
33
|
}
|
package/src/m3/factory.ts
CHANGED
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
Annotation,
|
|
5
5
|
Classifier,
|
|
6
6
|
Concept,
|
|
7
|
+
ConceptModifier,
|
|
7
8
|
Containment,
|
|
8
9
|
Enumeration,
|
|
9
10
|
EnumerationLiteral,
|
|
@@ -44,8 +45,15 @@ export class LanguageFactory {
|
|
|
44
45
|
return annotation
|
|
45
46
|
}
|
|
46
47
|
|
|
47
|
-
concept(name: string, abstract: boolean, extends_?: SingleRef<Concept>): Concept {
|
|
48
|
-
const concept = new Concept(
|
|
48
|
+
concept(name: string, abstract: boolean | ConceptModifier, extends_?: SingleRef<Concept>): Concept {
|
|
49
|
+
const concept = new Concept(
|
|
50
|
+
this.language,
|
|
51
|
+
name,
|
|
52
|
+
this.key(this.language.name, name),
|
|
53
|
+
this.id(this.language.name, name),
|
|
54
|
+
abstract,
|
|
55
|
+
extends_
|
|
56
|
+
)
|
|
49
57
|
this.language.havingEntities(concept)
|
|
50
58
|
return concept
|
|
51
59
|
}
|
package/src/m3/types.ts
CHANGED
|
@@ -145,6 +145,11 @@ abstract class Classifier extends LanguageEntity {
|
|
|
145
145
|
}
|
|
146
146
|
}
|
|
147
147
|
|
|
148
|
+
enum ConceptModifier {
|
|
149
|
+
concrete,
|
|
150
|
+
abstract
|
|
151
|
+
}
|
|
152
|
+
|
|
148
153
|
class Concept extends Classifier {
|
|
149
154
|
metaType(): string {
|
|
150
155
|
return "Concept"
|
|
@@ -153,9 +158,9 @@ class Concept extends Classifier {
|
|
|
153
158
|
partition: boolean
|
|
154
159
|
extends?: SingleRef<Concept> // (reference)
|
|
155
160
|
readonly implements: MultiRef<Interface> = [] // (reference)
|
|
156
|
-
constructor(language: Language, name: string, key: LionWebKey, id: LionWebId, abstract: boolean, extends_?: SingleRef<Concept>) {
|
|
161
|
+
constructor(language: Language, name: string, key: LionWebKey, id: LionWebId, abstract: boolean | ConceptModifier, extends_?: SingleRef<Concept>) {
|
|
157
162
|
super(language, name, key, id)
|
|
158
|
-
this.abstract = abstract
|
|
163
|
+
this.abstract = abstract === ConceptModifier.abstract || abstract === true
|
|
159
164
|
this.extends = extends_
|
|
160
165
|
this.partition = false
|
|
161
166
|
}
|
|
@@ -291,6 +296,7 @@ export {
|
|
|
291
296
|
Annotation,
|
|
292
297
|
Classifier,
|
|
293
298
|
Concept,
|
|
299
|
+
ConceptModifier,
|
|
294
300
|
Containment,
|
|
295
301
|
DataType,
|
|
296
302
|
Datatype,
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
} from "../../builtins-common.js"
|
|
10
10
|
import { isBuiltinNodeConcept } from "../../builtins-function.js"
|
|
11
11
|
import { LanguageFactory } from "../../factory.js"
|
|
12
|
+
import { ConceptModifier } from "../../types.js"
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
const factory = new LanguageFactory(
|
|
@@ -27,7 +28,7 @@ const booleanDataType = factory.primitiveType("Boolean")
|
|
|
27
28
|
const integerDataType = factory.primitiveType("Integer")
|
|
28
29
|
const jsonDataType = factory.primitiveType("JSON")
|
|
29
30
|
|
|
30
|
-
const node = factory.concept("Node",
|
|
31
|
+
const node = factory.concept("Node", ConceptModifier.abstract)
|
|
31
32
|
|
|
32
33
|
const inamed = factory.interface("INamed")
|
|
33
34
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { lioncoreBuiltinsFacade } from "./builtins.js"
|
|
2
2
|
import { LanguageFactory } from "../../factory.js"
|
|
3
3
|
import { generatedLionCoreKeyFrom, LionCoreFacade } from "../../lioncore-common.js"
|
|
4
|
+
import { ConceptModifier } from "../../types.js"
|
|
4
5
|
|
|
5
6
|
|
|
6
7
|
const factory = new LanguageFactory(
|
|
@@ -27,54 +28,54 @@ const { booleanDataType, stringDataType } = lioncoreBuiltinsFacade.primitiveType
|
|
|
27
28
|
const ikeyed = factory.interface("IKeyed").extending(inamed)
|
|
28
29
|
const ikeyed_key = factory.property(ikeyed, "key").ofType(stringDataType)
|
|
29
30
|
|
|
30
|
-
const feature = factory.concept("Feature",
|
|
31
|
+
const feature = factory.concept("Feature", ConceptModifier.abstract).implementing(ikeyed)
|
|
31
32
|
factory.property(feature, "optional").ofType(booleanDataType)
|
|
32
33
|
|
|
33
|
-
const property = factory.concept("Property",
|
|
34
|
+
const property = factory.concept("Property", ConceptModifier.concrete, feature)
|
|
34
35
|
const property_type = factory.reference(property, "type")
|
|
35
36
|
|
|
36
|
-
const link = factory.concept("Link",
|
|
37
|
+
const link = factory.concept("Link", ConceptModifier.abstract, feature)
|
|
37
38
|
factory.property(link, "multiple").ofType(booleanDataType)
|
|
38
39
|
const link_type = factory.reference(link, "type")
|
|
39
40
|
|
|
40
|
-
const containment = factory.concept("Containment",
|
|
41
|
+
const containment = factory.concept("Containment", ConceptModifier.concrete, link)
|
|
41
42
|
|
|
42
|
-
const reference = factory.concept("Reference",
|
|
43
|
+
const reference = factory.concept("Reference", ConceptModifier.concrete, link)
|
|
43
44
|
|
|
44
|
-
const languageEntity = factory.concept("LanguageEntity",
|
|
45
|
+
const languageEntity = factory.concept("LanguageEntity", ConceptModifier.abstract).implementing(ikeyed)
|
|
45
46
|
|
|
46
|
-
const classifier = factory.concept("Classifier",
|
|
47
|
+
const classifier = factory.concept("Classifier", ConceptModifier.abstract, languageEntity)
|
|
47
48
|
factory.containment(classifier, "features").isOptional().isMultiple().ofType(feature)
|
|
48
49
|
link_type.ofType(classifier)
|
|
49
50
|
|
|
50
|
-
const annotation = factory.concept("Annotation",
|
|
51
|
+
const annotation = factory.concept("Annotation", ConceptModifier.concrete, classifier)
|
|
51
52
|
factory.reference(annotation, "annotates").isOptional().ofType(classifier)
|
|
52
53
|
factory.reference(annotation, "extends").isOptional().ofType(annotation)
|
|
53
54
|
const annotation_implements = factory.reference(annotation, "implements").isMultiple().isOptional()
|
|
54
55
|
|
|
55
|
-
const concept = factory.concept("Concept",
|
|
56
|
+
const concept = factory.concept("Concept", ConceptModifier.concrete, classifier)
|
|
56
57
|
const concept_abstract = factory.property(concept, "abstract").ofType(booleanDataType)
|
|
57
58
|
factory.property(concept, "partition").ofType(booleanDataType)
|
|
58
59
|
factory.reference(concept, "extends").isOptional().ofType(concept)
|
|
59
60
|
const concept_implements = factory.reference(concept, "implements").isOptional().isMultiple()
|
|
60
61
|
|
|
61
|
-
const interface_ = factory.concept("Interface",
|
|
62
|
+
const interface_ = factory.concept("Interface", ConceptModifier.concrete, classifier)
|
|
62
63
|
factory.reference(interface_, "extends").isOptional().isMultiple().ofType(interface_)
|
|
63
64
|
|
|
64
65
|
annotation_implements.ofType(interface_)
|
|
65
66
|
concept_implements.ofType(interface_)
|
|
66
67
|
|
|
67
|
-
const dataType = factory.concept("DataType",
|
|
68
|
+
const dataType = factory.concept("DataType", ConceptModifier.abstract, languageEntity)
|
|
68
69
|
property_type.ofType(dataType)
|
|
69
70
|
|
|
70
|
-
const primitiveType = factory.concept("PrimitiveType",
|
|
71
|
+
const primitiveType = factory.concept("PrimitiveType", ConceptModifier.concrete, dataType)
|
|
71
72
|
|
|
72
|
-
const enumeration = factory.concept("Enumeration",
|
|
73
|
+
const enumeration = factory.concept("Enumeration", ConceptModifier.concrete, dataType)
|
|
73
74
|
const enumeration_literals = factory.containment(enumeration, "literals").isMultiple().isOptional()
|
|
74
|
-
const enumerationLiteral = factory.concept("EnumerationLiteral",
|
|
75
|
+
const enumerationLiteral = factory.concept("EnumerationLiteral", ConceptModifier.concrete).implementing(ikeyed)
|
|
75
76
|
enumeration_literals.ofType(enumerationLiteral)
|
|
76
77
|
|
|
77
|
-
const language = factory.concept("Language",
|
|
78
|
+
const language = factory.concept("Language", ConceptModifier.concrete).implementing(ikeyed).isPartition()
|
|
78
79
|
const language_version = factory.property(language, "version").ofType(stringDataType)
|
|
79
80
|
factory.containment(language, "entities").isOptional().isMultiple().ofType(languageEntity)
|
|
80
81
|
factory.reference(language, "dependsOn").isOptional().isMultiple().ofType(language)
|