@lionweb/class-core-generator 0.8.0-beta.2 → 0.8.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"entity-types.templates.d.ts","sourceRoot":"","sources":["../src/entity-types.templates.ts"],"names":[],"mappings":"AAiBA,OAAO,EAYH,cAAc,EASjB,MAAM,eAAe,CAAA;AAYtB,OAAO,EAKH,OAAO,EAQV,MAAM,oBAAoB,CAAA;AAc3B,eAAO,MAAM,qBAAqB,GAAI,SAAS,OAAO,MA8M1C,QAAQ,cAAc,4CAoBjC,CAAA"}
1
+ {"version":3,"file":"entity-types.templates.d.ts","sourceRoot":"","sources":["../src/entity-types.templates.ts"],"names":[],"mappings":"AAiBA,OAAO,EAYH,cAAc,EAQjB,MAAM,eAAe,CAAA;AAYtB,OAAO,EAKH,OAAO,EAQV,MAAM,oBAAoB,CAAA;AAc3B,eAAO,MAAM,qBAAqB,GAAI,SAAS,OAAO,MAqN1C,QAAQ,cAAc,4CAoBjC,CAAA"}
@@ -14,7 +14,7 @@
14
14
  //
15
15
  // SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
16
16
  // SPDX-License-Identifier: Apache-2.0
17
- import { builtinClassifiers, Classifier, Containment, Enumeration, featureMetaType, Interface, isContainment, isProperty, isRef, isReference, LanguageEntity, Link, nameSorted, PrimitiveType, Property, Reference } from "@lionweb/core";
17
+ import { Classifier, Containment, Enumeration, featureMetaType, Interface, isContainment, isProperty, isRef, isReference, isUnresolvedReference, LanguageEntity, Link, nameSorted, PrimitiveType, Property, Reference } from "@lionweb/core";
18
18
  import { ConceptDescription, Deprecated, ioLionWebMpsSpecificAnnotationsFrom, KeyedDescription, ShortDescription, VirtualPackage } from "@lionweb/io-lionweb-mps-specific";
19
19
  import { indent, switchOrIf, withFirstUpper } from "@lionweb/textgen-utils";
20
20
  import { commaSeparated, when, withNewlineAppended } from "littoral-templates";
@@ -29,8 +29,6 @@ const cardinalityPrefix = (feature) => {
29
29
  };
30
30
  const valueManagerFor = (feature) => `${cardinalityPrefix(feature)}${featureMetaType(feature)}ValueManager`;
31
31
  export const typeForLanguageEntity = (imports) => {
32
- const sortedSuperTypesCond = (ts, prefix) => ts.length === 0 ? `` : `${prefix}${nameSorted(ts).map((t) => imports.entity(t)).join(", ")}`;
33
- const extendsCond = (ref) => ` extends ${ref === builtinClassifiers.node ? imports.generic("NodeBase") : imports.entity(ref)}`;
34
32
  const classMembersForProperty = (property) => {
35
33
  const { name, type } = property;
36
34
  return [
@@ -112,9 +110,20 @@ export const typeForLanguageEntity = (imports) => {
112
110
  `}`
113
111
  ];
114
112
  };
113
+ const extendsFragment = "extends " + ((superConcept) => {
114
+ if (isUnresolvedReference(superConcept)) {
115
+ return `/* unresolved reference to super concept */`;
116
+ }
117
+ if (superConcept === undefined) {
118
+ return imports.generic("NodeBase");
119
+ }
120
+ return imports.entity(superConcept);
121
+ })(extendsFrom(classifier)) + " ";
122
+ const implementsFragment = ((superInterfaces) => superInterfaces.length === 0
123
+ ? ""
124
+ : ("implements " + nameSorted(superInterfaces).map((t) => imports.entity(t)).join(", ") + " "))(implementsFrom(classifier));
115
125
  return [
116
- // | index (or generic for LionCore-builtins) | | index (or generic for LionCore-builtins) |
117
- `export ${isAbstract(classifier) ? "abstract " : ""}class ${classifier.name}${extendsCond(extendsFrom(classifier) ?? builtinClassifiers.node)}${sortedSuperTypesCond(implementsFrom(classifier), " implements ")} {`,
126
+ `export ${isAbstract(classifier) ? "abstract " : ""}class ${classifier.name} ${extendsFragment}${implementsFragment}{`,
118
127
  indent([
119
128
  when(!isAbstract(classifier))(() => [
120
129
  `static create(id: ${imports.json("LionWebId")}, receiveDelta?: ${imports.generic("DeltaReceiver")}, parentInfo?: ${imports.generic("Parentage")}): ${classifier.name} {`,
@@ -1 +1 @@
1
- {"version":3,"file":"entity-types.templates.js","sourceRoot":"","sources":["../src/entity-types.templates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-types.templates.js","sourceRoot":"","sources":["../src/entity-types.templates.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/helpers/features.ts"],"names":[],"mappings":"AAiBA,OAAO,EAEH,UAAU,EACV,QAAQ,EAER,OAAO,EAIP,cAAc,EAId,SAAS,EAEZ,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,OAAO,EAA0B,MAAM,YAAY,CAAA;AAE5D,eAAO,MAAM,MAAM,GAAI,SAAS,OAAO,KAAG,SAAS,CAAC,cAAc,CAQjE,CAAA;AAGD,eAAO,MAAM,iBAAiB,GAAI,UAAU,SAAS,CAAC,QAAQ,CAAC,EAAE,SAAS,OAAO,WAWhF,CAAA;AAGD,eAAO,MAAM,mBAAmB,GAAI,YAAY,SAAS,CAAC,UAAU,CAAC,EAAE,SAAS,OAAO,WAKtF,CAAA;AAGD,eAAO,MAAM,kBAAkB,GAAI,SAAS,OAAO,wBAA2C,CAAA;AAE9F,eAAO,MAAM,qBAAqB,GAAI,SAAS,OAAO,EAAE,SAAS,OAAO,KAAG,MA0B1E,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,SAAS,OAAO,EAAE,SAAS,OAAO,KAAG,MAqB1E,CAAA"}
1
+ {"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/helpers/features.ts"],"names":[],"mappings":"AAiBA,OAAO,EAEH,UAAU,EACV,QAAQ,EAER,OAAO,EAKP,cAAc,EAKd,SAAS,EACZ,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,OAAO,EAA0B,MAAM,YAAY,CAAA;AAE5D,eAAO,MAAM,MAAM,GAAI,SAAS,OAAO,KAAG,SAAS,CAAC,cAAc,CAQjE,CAAA;AAGD,eAAO,MAAM,iBAAiB,GAAI,UAAU,SAAS,CAAC,QAAQ,CAAC,EAAE,SAAS,OAAO,WAWhF,CAAA;AAGD,eAAO,MAAM,mBAAmB,GAAI,YAAY,SAAS,CAAC,UAAU,CAAC,EAAE,SAAS,OAAO,WAKtF,CAAA;AAGD,eAAO,MAAM,kBAAkB,GAAI,SAAS,OAAO,wBAA2C,CAAA;AAE9F,eAAO,MAAM,qBAAqB,GAAI,SAAS,OAAO,EAAE,SAAS,OAAO,KAAG,MA0B1E,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,SAAS,OAAO,EAAE,SAAS,OAAO,KAAG,MAqB1E,CAAA"}
@@ -14,7 +14,7 @@
14
14
  //
15
15
  // SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
16
16
  // SPDX-License-Identifier: Apache-2.0
17
- import { builtinClassifiers, Enumeration, isContainment, isProperty, isReference, Link, PrimitiveType, Property, unresolved } from "@lionweb/core";
17
+ import { builtinClassifiers, Enumeration, isContainment, isProperty, isReference, isUnresolvedReference, Link, PrimitiveType, Property, referenceToSet } from "@lionweb/core";
18
18
  import { tsTypeForPrimitiveType } from "./index.js";
19
19
  export const typeOf = (feature) => {
20
20
  if (feature instanceof Property) {
@@ -23,11 +23,11 @@ export const typeOf = (feature) => {
23
23
  if (feature instanceof Link) {
24
24
  return feature.type;
25
25
  }
26
- return null;
26
+ return referenceToSet();
27
27
  };
28
28
  export const tsTypeForDataType = (dataType, imports) => {
29
- if (dataType === null) {
30
- return `unknown /* [ERROR] can't compute a TS type for a null data type */`;
29
+ if (isUnresolvedReference(dataType)) {
30
+ return `unknown /* [ERROR] can't compute a TS type for an unresolved data type */`;
31
31
  }
32
32
  if (dataType instanceof PrimitiveType) {
33
33
  return tsTypeForPrimitiveType(dataType);
@@ -38,7 +38,7 @@ export const tsTypeForDataType = (dataType, imports) => {
38
38
  return `unknown /* [ERROR] can't compute a TS type for data type ${dataType.name} that has an unhandled/-known meta-type ${dataType.constructor.name} */`;
39
39
  };
40
40
  export const tsTypeForClassifier = (classifier, imports) => {
41
- if (classifier === unresolved) {
41
+ if (isUnresolvedReference(classifier)) {
42
42
  return `unknown /* [ERROR] can't compute a TS type for an unresolved classifier */`;
43
43
  }
44
44
  return classifier === builtinClassifiers.node ? imports.generic("INodeBase") : imports.entity(classifier);
@@ -46,8 +46,8 @@ export const tsTypeForClassifier = (classifier, imports) => {
46
46
  export const optionalityPostfix = (feature) => feature.optional ? " | undefined" : "";
47
47
  export const tsFieldTypeForFeature = (feature, imports) => {
48
48
  const type = typeOf(feature);
49
- if (type === null) {
50
- return `unknown /* [ERROR] can't compute a TS type for feature ${feature.name} on classifier ${feature.classifier.name} with null type */`;
49
+ if (isUnresolvedReference(type)) {
50
+ return `unknown /* [ERROR] can't compute a TS type for feature ${feature.name} on classifier ${feature.classifier.name} with unresolved type (${type}) */`;
51
51
  }
52
52
  if (isProperty(feature)) {
53
53
  const typeId = (() => {
@@ -73,8 +73,8 @@ export const tsFieldTypeForFeature = (feature, imports) => {
73
73
  };
74
74
  export const tsTypeForValueManager = (feature, imports) => {
75
75
  const type = typeOf(feature);
76
- if (type === null) {
77
- return `unknown /* [ERROR] can't compute a TS type for feature ${feature.name} on classifier ${feature.classifier.name} with null type */`;
76
+ if (isUnresolvedReference(type)) {
77
+ return `unknown /* [ERROR] can't compute a TS type for feature ${feature.name} on classifier ${feature.classifier.name} with unresolved type (${type}) */`;
78
78
  }
79
79
  if (isProperty(feature)) {
80
80
  const typeId = (() => {
@@ -1 +1 @@
1
- {"version":3,"file":"features.js","sourceRoot":"","sources":["../../src/helpers/features.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"features.js","sourceRoot":"","sources":["../../src/helpers/features.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"language-file.templates.d.ts","sourceRoot":"","sources":["../src/language-file.templates.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAW,QAAQ,EAAE,MAAM,eAAe,CAAA;AAMjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAQjD,eAAO,MAAM,eAAe,GAAI,UAAU,QAAQ,EAAE,SAAS,gBAAgB,WAsC5E,CAAA"}
1
+ {"version":3,"file":"language-file.templates.d.ts","sourceRoot":"","sources":["../src/language-file.templates.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAkC,QAAQ,EAAE,MAAM,eAAe,CAAA;AAMxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAQjD,eAAO,MAAM,eAAe,GAAI,UAAU,QAAQ,EAAE,SAAS,gBAAgB,WA0C5E,CAAA"}
@@ -14,7 +14,7 @@
14
14
  //
15
15
  // SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
16
16
  // SPDX-License-Identifier: Apache-2.0
17
- import { Concept } from "@lionweb/core";
17
+ import { Concept, isUnresolvedReference } from "@lionweb/core";
18
18
  import { indent } from "@lionweb/textgen-utils";
19
19
  import { dependencyOrderOf, sortedStringsByUppercase } from "@lionweb/ts-utils";
20
20
  import { asString, commaSeparated, when, withNewlineAppended } from "littoral-templates";
@@ -25,7 +25,7 @@ const importStatement = (dep, items) => when(items.length > 0)([`import {`, inde
25
25
  export const languageFileFor = (language, options) => {
26
26
  const { name, version, key, id, entities } = language;
27
27
  const imports = new Imports(language);
28
- const orderedEntities = dependencyOrderOf(entities, (entity) => (entity instanceof Concept && !!entity.extends) ? [entity.extends] : []);
28
+ const orderedEntities = dependencyOrderOf(entities, (entity) => (entity instanceof Concept && entity.extends !== undefined && !isUnresolvedReference(entity.extends)) ? [entity.extends] : []);
29
29
  if (typeof orderedEntities === "boolean") {
30
30
  throw new Error(`language ${name} has a cycle among the graph of entities with edges formed by the inheritance dependency`);
31
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"language-file.templates.js","sourceRoot":"","sources":["../src/language-file.templates.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,EAAE;AACF,iEAAiE;AACjE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,EAAE;AACF,sEAAsE;AACtE,sCAAsC;AAEtC,OAAO,EAAE,OAAO,EAAY,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAC/E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAExF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAEnE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AAEpE,MAAM,eAAe,GAAG,CAAC,GAAW,EAAE,KAAe,EAAE,EAAE,CACrD,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;AAGzH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAkB,EAAE,OAAyB,EAAE,EAAE;IAE7E,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAC,GAAG,QAAQ,CAAA;IAEnD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAA;IAErC,MAAM,eAAe,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,YAAY,OAAO,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACxI,IAAI,OAAO,eAAe,KAAK,SAAS,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,0FAA0F,CAAC,CAAA;IAC/H,CAAC;IAED,MAAM,eAAe,GAAG;QACpB,EAAE;QACF,kBAAkB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;QACrC,EAAE;QACF,EAAE;QACF,eAAe;aACV,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC;aAChD,GAAG,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;KAChE,CAAA;IAED,OAAO,QAAQ,CAAC;QACZ,OAAO,EAAE,MAAM,IAAI,EAAE;QACrB;;kBAEU,IAAI;kBACJ,OAAO;kBACP,GAAG;kBACH,EAAE;IAChB;QACI,EAAE;QACF,EAAE;QACF,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC,WAAW,CAAC;QACrD,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC,WAAW,CAAC;QACrD,eAAe,CAAC,OAAO,CAAC,qBAAqB,EAAE,OAAO,CAAC,cAAc,CAAC;QACtE,eAAe,CAAC,cAAc,EAAE,OAAO,CAAC,eAAe,CAAC;QACxD,eAAe;KAClB,CAAC,CAAA;AACN,CAAC,CAAA"}
1
+ {"version":3,"file":"language-file.templates.js","sourceRoot":"","sources":["../src/language-file.templates.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,EAAE;AACF,iEAAiE;AACjE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,EAAE;AACF,sEAAsE;AACtE,sCAAsC;AAEtC,OAAO,EAAE,OAAO,EAAE,qBAAqB,EAAY,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAC/E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAExF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAEnE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AAEpE,MAAM,eAAe,GAAG,CAAC,GAAW,EAAE,KAAe,EAAE,EAAE,CACrD,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;AAGzH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAkB,EAAE,OAAyB,EAAE,EAAE;IAE7E,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAC,GAAG,QAAQ,CAAA;IAEnD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAA;IAErC,MAAM,eAAe,GAAG,iBAAiB,CACrC,QAAQ,EACR,CAAC,MAAM,EAAE,EAAE,CACP,CAAC,MAAM,YAAY,OAAO,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CACpI,CAAA;IACD,IAAI,OAAO,eAAe,KAAK,SAAS,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,0FAA0F,CAAC,CAAA;IAC/H,CAAC;IAED,MAAM,eAAe,GAAG;QACpB,EAAE;QACF,kBAAkB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;QACrC,EAAE;QACF,EAAE;QACF,eAAe;aACV,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC;aAChD,GAAG,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;KAChE,CAAA;IAED,OAAO,QAAQ,CAAC;QACZ,OAAO,EAAE,MAAM,IAAI,EAAE;QACrB;;kBAEU,IAAI;kBACJ,OAAO;kBACP,GAAG;kBACH,EAAE;IAChB;QACI,EAAE;QACF,EAAE;QACF,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC,WAAW,CAAC;QACrD,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC,WAAW,CAAC;QACrD,eAAe,CAAC,OAAO,CAAC,qBAAqB,EAAE,OAAO,CAAC,cAAc,CAAC;QACtE,eAAe,CAAC,cAAc,EAAE,OAAO,CAAC,eAAe,CAAC;QACxD,eAAe;KAClB,CAAC,CAAA;AACN,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"reflective-layer.templates.d.ts","sourceRoot":"","sources":["../src/reflective-layer.templates.ts"],"names":[],"mappings":"AAiBA,OAAO,EAaH,QAAQ,EAOX,MAAM,eAAe,CAAA;AAKtB,OAAO,EAA+B,OAAO,EAA8B,MAAM,oBAAoB,CAAA;AAErG,eAAO,MAAM,kBAAkB,GAAI,SAAS,OAAO,MAwIvC,UAAU,QAAQ,0BAyE7B,CAAA"}
1
+ {"version":3,"file":"reflective-layer.templates.d.ts","sourceRoot":"","sources":["../src/reflective-layer.templates.ts"],"names":[],"mappings":"AAiBA,OAAO,EAcH,QAAQ,EAOX,MAAM,eAAe,CAAA;AAKtB,OAAO,EAA+B,OAAO,EAA8B,MAAM,oBAAoB,CAAA;AAErG,eAAO,MAAM,kBAAkB,GAAI,SAAS,OAAO,MAwIvC,UAAU,QAAQ,0BAyE7B,CAAA"}
@@ -14,7 +14,7 @@
14
14
  //
15
15
  // SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
16
16
  // SPDX-License-Identifier: Apache-2.0
17
- import { Annotation, Classifier, Concept, Enumeration, featureMetaType, Interface, isConcrete, isEnumeration, isMultiple, isPartition, Link, nameOf, PrimitiveType, Property } from "@lionweb/core";
17
+ import { Annotation, Classifier, Concept, Enumeration, featureMetaType, Interface, isConcrete, isEnumeration, isMultiple, isPartition, isUnresolvedReference, Link, nameOf, PrimitiveType, Property } from "@lionweb/core";
18
18
  import { indent, switchOrIf } from "@lionweb/textgen-utils";
19
19
  import { asArray } from "@lionweb/ts-utils";
20
20
  import { when, withNewlineAppended } from "littoral-templates";
@@ -84,7 +84,7 @@ export const reflectiveClassFor = (imports) => {
84
84
  return `// unhandled language entity <${entityMetaType(entity)}>"${entity.name}"`;
85
85
  };
86
86
  const refForType = (type) => {
87
- if (type === null) {
87
+ if (isUnresolvedReference(type)) {
88
88
  return `???`;
89
89
  }
90
90
  if (type.language === imports.thisLanguage) {
@@ -1 +1 @@
1
- {"version":3,"file":"reflective-layer.templates.js","sourceRoot":"","sources":["../src/reflective-layer.templates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reflective-layer.templates.js","sourceRoot":"","sources":["../src/reflective-layer.templates.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,EAAE;AACF,iEAAiE;AACjE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,EAAE;AACF,sEAAsE;AACtE,sCAAsC;AAEtC,OAAO,EACH,UAAU,EACV,UAAU,EACV,OAAO,EACP,WAAW,EAGX,eAAe,EACf,SAAS,EACT,UAAU,EACV,aAAa,EACb,UAAU,EACV,WAAW,EACX,qBAAqB,EAGrB,IAAI,EACJ,MAAM,EACN,aAAa,EACb,QAAQ,EAEX,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE9D,OAAO,EAAE,cAAc,EAAE,WAAW,EAAW,0BAA0B,EAAE,MAAM,oBAAoB,CAAA;AAErG,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAgB,EAAE,EAAE;IACnD,cAAc;IAEd,MAAM,2BAA2B,GAAG,CAAC,OAAgB,EAAE,EAAE;QACrD,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;QACvD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;QACzC,MAAM,KAAK,GAAG,GAAG,UAAU,CAAC,IAAI,IAAI,IAAI,EAAE,CAAA;QAC1C,OAAO;YACH,qBAAqB,KAAK,UAAU,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,UAAU,CAAC,IAAI,MAAM,IAAI,OAAO,GAAG,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG;YACpM,iCAAiC;YACjC,OAAO,KAAK,OAAO,QAAQ,IAAI;YAC/B,MAAM,CAAC,CAAC,uBAAuB,EAAE,gBAAgB,KAAK,GAAG,CAAC,CAAC;YAC3D,GAAG;SACN,CAAA;IACL,CAAC,CAAA;IAED,MAAM,8BAA8B,GAAG,CAAC,UAAsB,EAAE,EAAE;QAC9D,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAA;QAC9C,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,CAAA;QAC3C,OAAO;YACH,oBAAoB,IAAI,UAAU,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,OAAO,GAAG,OAAO,EAAE,IAAI,UAAU,YAAY,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG;YAC7N,gCAAgC;YAChC,OAAO,IAAI,OAAO,QAAQ,IAAI;YAC9B,MAAM,CAAC,CAAC,uBAAuB,EAAE,gBAAgB,IAAI,GAAG,CAAC,CAAC;YAC1D,GAAG;YACH,QAAQ,CAAC,GAAG,CAAC,2BAA2B,CAAC;SAC5C,CAAA;IACL,CAAC,CAAA;IAED,eAAe;IAEf,MAAM,qCAAqC,GAAG,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAsB,EAAE,EAAE;QACjG,MAAM,KAAK,GAAG,GAAG,WAAW,CAAC,IAAI,IAAI,IAAI,EAAE,CAAA;QAC3C,OAAO;YACH,qBAAqB,KAAK,UAAU,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,WAAW,CAAC,IAAI,MAAM,IAAI,OAAO,GAAG,OAAO,EAAE,KAAK;YAClI,mCAAmC;YACnC,OAAO,KAAK,0BAA0B;YACtC,MAAM,CAAC,CAAC,uBAAuB,EAAE,gBAAgB,KAAK,GAAG,CAAC,CAAC;YAC3D,GAAG;SACN,CAAA;IACL,CAAC,CAAA;IAED,MAAM,+BAA+B,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAe,EAAE,EAAE,CAAC;QAClF,oBAAoB,IAAI,UAAU,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,qBAAqB,IAAI,OAAO,GAAG,OAAO,EAAE,KAAK;QAC9G,gCAAgC;QAChC,OAAO,IAAI,mBAAmB;QAC9B,MAAM,CAAC,CAAC,uBAAuB,EAAE,gBAAgB,IAAI,GAAG,CAAC,CAAC;QAC1D,GAAG;QACH,QAAQ,CAAC,GAAG,CAAC,qCAAqC,CAAC;KACtD,CAAA;IAED,MAAM,iCAAiC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAiB,EAAE,EAAE,CAAC;QAC5E,oBAAoB,IAAI,UAAU,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,qBAAqB,IAAI,OAAO,GAAG,OAAO,EAAE,KAAK;QAChH,gCAAgC;QAChC,OAAO,IAAI,qBAAqB;QAChC,MAAM,CAAC,CAAC,uBAAuB,EAAE,gBAAgB,IAAI,GAAG,CAAC,CAAC;QAC1D,GAAG;KACN,CAAA;IAED,MAAM,0BAA0B,GAAG,CAAC,MAAsB,EAAE,EAAE;QAC1D,IAAI,MAAM,YAAY,UAAU,EAAE,CAAC;YAC/B,OAAO,8BAA8B,CAAC,MAAM,CAAC,CAAA;QACjD,CAAC;QACD,IAAI,MAAM,YAAY,WAAW,EAAE,CAAC;YAChC,OAAO,+BAA+B,CAAC,MAAM,CAAC,CAAA;QAClD,CAAC;QACD,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;YAClC,OAAO,iCAAiC,CAAC,MAAM,CAAC,CAAA;QACpD,CAAC;QACD,OAAO,iCAAiC,cAAc,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAA;IACrF,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,CAAC,IAA+B,EAAE,EAAE;QACnD,IAAI,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAA;QAChB,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC;YACzC,OAAO,SAAS,IAAI,CAAC,IAAI,EAAE,CAAA;QAC/B,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,IAAI,CAAC,IAAI,EAAE,CAAA;IACtE,CAAC,CAAA;IAED,MAAM,2BAA2B,GAAG,CAAC,QAAkB,EAAE,EAAE;QACvD,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAA;QACrD,OAAO,SAAS,UAAU,CAAC,IAAI,IAAI,IAAI,WAAW,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,CAAA;IAC5G,CAAC,CAAA;IAED,MAAM,uBAAuB,GAAG,CAAC,IAAU,EAAE,EAAE;QAC3C,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;QACvC,OAAO,SAAS,UAAU,CAAC,IAAI,IAAI,IAAI,WAAW,UAAU,CAAC,IAAI,CAAC,IAAI,CAAA;IAC1E,CAAC,CAAA;IAED,MAAM,0BAA0B,GAAG,CAAC,OAAgB,EAAE,EAAE;QACpD,IAAI,OAAO,YAAY,QAAQ,EAAE,CAAC;YAC9B,OAAO,2BAA2B,CAAC,OAAO,CAAC,CAAA;QAC/C,CAAC;QACD,IAAI,OAAO,YAAY,IAAI,EAAE,CAAC;YAC1B,OAAO,uBAAuB,CAAC,OAAO,CAAC,CAAA;QAC3C,CAAC;QACD,OAAO,yBAAyB,eAAe,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,GAAG,CAAA;IAChF,CAAC,CAAA;IAED,MAAM,oBAAoB,GAAG,CAAC,UAAsB,EAAsC,EAAE,CACxF,UAAU,YAAY,UAAU,IAAI,UAAU,YAAY,OAAO,CAAA;IAErE,MAAM,yBAAyB,GAAG,CAAC,MAAsB,EAAE,EAAE;QACzD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAA;QACvB,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,SAAS,IAAI,IAAI,SAAS,EAAE,CAAA;QACzE,IAAI,MAAM,YAAY,UAAU,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;YACpC,OAAO;gBACH,QAAQ,YAAY,UAAU,CAAC,CAAC,CAAC,SAAS,IAAI,cAAc,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACxF,IAAI,CAAC,MAAM,YAAY,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAC1D,GAAG,EAAE,CAAC,SAAS,IAAI,cAAe,MAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAC1H;gBACD,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAC9D,GAAG,EAAE,CACD,SAAS,IAAI,iBAAiB,OAAO,CAAE,MAA+B,CAAC,UAAU,CAAC;qBAC7E,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;qBACzC,IAAI,CAAC,IAAI,CAAC,IAAI,CAC1B;gBACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAC5B,SAAS,IAAI,mBAAmB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAChG;gBACD,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,0BAA0B,CAAC;aAClD,CAAA;QACL,CAAC;QACD,IAAI,MAAM,YAAY,WAAW,EAAE,CAAC;YAChC,OAAO,SAAS,IAAI,mBAAmB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;QACxG,CAAC;QACD,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;YAClC,OAAO,EAAE,CAAA,CAAC,kBAAkB;QAChC,CAAC;QACD,OAAO,iCAAiC,cAAc,CAAC,MAAM,CAAC,KAAK,IAAI,GAAG,CAAA;IAC9E,CAAC,CAAA;IAED,OAAO,CAAC,QAAkB,EAAE,EAAE;QAC1B,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAA;QAC/C,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;QACnD,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QACvD,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QACnE,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,SAAS,SAAS,EAAE,CAAA;QACjE,OAAO;YACH,gBAAgB,OAAO,CAAC,iBAAiB,eAAe,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI;YAC5F,EAAE;YACF,MAAM,CAAC;gBACH,+EAA+E;gBAC/E,+BAA+B,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,oBAAoB,OAAO,CAAC,8BAA8B,OAAO,OAAO,OAAO,EAAE,OAAO,GAAG,KAAK;gBACvJ,iCAAiC;gBACjC,4BAA4B;gBAC5B,MAAM,CAAC,CAAC,uBAAuB,EAAE,wBAAwB,CAAC,CAAC;gBAC3D,GAAG;gBACH,EAAE;gBACF,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,0BAA0B,CAAC,CAAC;gBAC7D,oCAAoC;gBACpC,2BAA2B;gBAC3B,MAAM,CAAC;oBACH,sBAAsB;oBACtB,MAAM,CAAC,SAAS,CAAC;oBACjB,GAAG;oBACH,iCAAiC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;oBACvF,QAAQ,CAAC,GAAG,CAAC,yBAAyB,CAAC;oBACvC,uBAAuB;iBAC1B,CAAC;gBACF,GAAG;gBACH,EAAE;gBACF,WAAW,eAAe,kBAAkB,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI;gBACxH,MAAM,CAAC;oBACH,uBAAuB,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,eAAe,OAAO,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ;oBAC7G,MAAM,CACF,UAAU,CACN,gBAAgB,EAChB,mBAAmB;yBACd,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC;wBACjB,cAAc;wBACd,SAAS,UAAU,CAAC,IAAI,MAAM;wBAC9B,gBAAgB;wBAChB,GAAG,UAAU,CAAC,IAAI,eAAe,eAAe,eAAe;qBAClE,CAAC,EACN;wBACI,gCAAgC;wBAChC,kMAAkM;qBACrM,CACJ,CACJ;oBACD,GAAG;iBACN,CAAC;gBACF,GAAG;gBACH,EAAE;gBACF,iDAAiD,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,eAAe;gBAClG,sEAAsE;gBACtE,MAAM,CAAC;oBACH,2CAA2C;oBAC3C,UAAU,CACN,iBAAiB,EACjB,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,IAAI,MAAM,EAAE,oCAAoC,CAAC,CAAC,EACjG;wBACI,iCAAiC;wBACjC,gKAAgK;qBACnK,CACJ;iBACJ,CAAC;gBACF,GAAG;gBACH,EAAE;gBACF,yCAAyC,0BAA0B,CAAC,QAAQ,CAAC,KAAK;aACrF,CAAC;YACF,GAAG;SACN,CAAA;IACL,CAAC,CAAA;AACL,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lionweb/class-core-generator",
3
- "version": "0.8.0-beta.2",
3
+ "version": "0.8.0-beta.4",
4
4
  "description": "Generator for implementations of languages based on the class-core package",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -27,12 +27,12 @@
27
27
  "release": "npm publish"
28
28
  },
29
29
  "dependencies": {
30
- "@lionweb/core": "0.8.0-beta.2",
31
- "@lionweb/io-lionweb-mps-specific": "0.8.0-beta.2",
32
- "@lionweb/json": "0.8.0-beta.2",
33
- "@lionweb/textgen-utils": "0.8.0-beta.2",
34
- "@lionweb/ts-utils": "0.8.0-beta.2",
35
- "@lionweb/utilities": "0.8.0-beta.2",
30
+ "@lionweb/core": "0.8.0-beta.4",
31
+ "@lionweb/io-lionweb-mps-specific": "0.8.0-beta.4",
32
+ "@lionweb/json": "0.8.0-beta.4",
33
+ "@lionweb/textgen-utils": "0.8.0-beta.4",
34
+ "@lionweb/ts-utils": "0.8.0-beta.4",
35
+ "@lionweb/utilities": "0.8.0-beta.4",
36
36
  "@types/node": "24.3.0",
37
37
  "littoral-templates": "0.5.1"
38
38
  },
@@ -16,7 +16,6 @@
16
16
  // SPDX-License-Identifier: Apache-2.0
17
17
 
18
18
  import {
19
- builtinClassifiers,
20
19
  Classifier,
21
20
  Containment,
22
21
  Enumeration,
@@ -27,6 +26,7 @@ import {
27
26
  isProperty,
28
27
  isRef,
29
28
  isReference,
29
+ isUnresolvedReference,
30
30
  LanguageEntity,
31
31
  Link,
32
32
  M3Concept,
@@ -34,8 +34,7 @@ import {
34
34
  Node,
35
35
  PrimitiveType,
36
36
  Property,
37
- Reference,
38
- SingleRef
37
+ Reference
39
38
  } from "@lionweb/core"
40
39
  import {
41
40
  ConceptDescription,
@@ -77,12 +76,6 @@ const valueManagerFor = (feature: Feature) =>
77
76
 
78
77
  export const typeForLanguageEntity = (imports: Imports) => {
79
78
 
80
- const sortedSuperTypesCond = <T extends Classifier>(ts: T[], prefix: string): string =>
81
- ts.length === 0 ? `` : `${prefix}${nameSorted(ts).map((t) => imports.entity(t)).join(", ")}`
82
-
83
- const extendsCond = (ref: SingleRef<Classifier>): string =>
84
- ` extends ${ref === builtinClassifiers.node ? imports.generic("NodeBase") : imports.entity(ref!)}`
85
-
86
79
  const classMembersForProperty = (property: Property) => {
87
80
  const {name, type} = property
88
81
  return [
@@ -176,9 +169,22 @@ export const typeForLanguageEntity = (imports: Imports) => {
176
169
  ]
177
170
  }
178
171
 
172
+ const extendsFragment = "extends " + ((superConcept) => {
173
+ if (isUnresolvedReference(superConcept)) {
174
+ return `/* unresolved reference to super concept */`
175
+ }
176
+ if (superConcept === undefined) {
177
+ return imports.generic("NodeBase")
178
+ }
179
+ return imports.entity(superConcept)
180
+ })(extendsFrom(classifier)) + " "
181
+ const implementsFragment = ((superInterfaces) =>
182
+ superInterfaces.length === 0
183
+ ? ""
184
+ : ("implements " + nameSorted(superInterfaces).map((t) => imports.entity(t)).join(", ") + " ")
185
+ )(implementsFrom(classifier))
179
186
  return [
180
- // | index (or generic for LionCore-builtins) | | index (or generic for LionCore-builtins) |
181
- `export ${isAbstract(classifier) ? "abstract " : ""}class ${classifier.name}${extendsCond(extendsFrom(classifier) ?? builtinClassifiers.node)}${sortedSuperTypesCond(implementsFrom(classifier), " implements ")} {`,
187
+ `export ${isAbstract(classifier) ? "abstract " : ""}class ${classifier.name} ${extendsFragment}${implementsFragment}{`,
182
188
  indent([
183
189
  when(!isAbstract(classifier))(
184
190
  () =>
@@ -24,12 +24,13 @@ import {
24
24
  isContainment,
25
25
  isProperty,
26
26
  isReference,
27
+ isUnresolvedReference,
27
28
  LanguageEntity,
28
29
  Link,
29
30
  PrimitiveType,
30
31
  Property,
31
- SingleRef,
32
- unresolved
32
+ referenceToSet,
33
+ SingleRef
33
34
  } from "@lionweb/core"
34
35
  import { Imports, tsTypeForPrimitiveType } from "./index.js"
35
36
 
@@ -40,13 +41,13 @@ export const typeOf = (feature: Feature): SingleRef<LanguageEntity> => {
40
41
  if (feature instanceof Link) {
41
42
  return feature.type
42
43
  }
43
- return null
44
+ return referenceToSet()
44
45
  }
45
46
 
46
47
 
47
48
  export const tsTypeForDataType = (dataType: SingleRef<DataType>, imports: Imports) => {
48
- if (dataType === null) {
49
- return `unknown /* [ERROR] can't compute a TS type for a null data type */`
49
+ if (isUnresolvedReference(dataType)) {
50
+ return `unknown /* [ERROR] can't compute a TS type for an unresolved data type */`
50
51
  }
51
52
  if (dataType instanceof PrimitiveType) {
52
53
  return tsTypeForPrimitiveType(dataType)
@@ -59,7 +60,7 @@ export const tsTypeForDataType = (dataType: SingleRef<DataType>, imports: Import
59
60
 
60
61
 
61
62
  export const tsTypeForClassifier = (classifier: SingleRef<Classifier>, imports: Imports) => {
62
- if (classifier === unresolved) {
63
+ if (isUnresolvedReference(classifier)) {
63
64
  return `unknown /* [ERROR] can't compute a TS type for an unresolved classifier */`
64
65
  }
65
66
  return classifier === builtinClassifiers.node ? imports.generic("INodeBase") : imports.entity(classifier)
@@ -70,8 +71,8 @@ export const optionalityPostfix = (feature: Feature) => feature.optional ? " | u
70
71
 
71
72
  export const tsFieldTypeForFeature = (feature: Feature, imports: Imports): string => {
72
73
  const type = typeOf(feature)
73
- if (type === null) {
74
- return `unknown /* [ERROR] can't compute a TS type for feature ${feature.name} on classifier ${feature.classifier.name} with null type */`
74
+ if (isUnresolvedReference(type)) {
75
+ return `unknown /* [ERROR] can't compute a TS type for feature ${feature.name} on classifier ${feature.classifier.name} with unresolved type (${type}) */`
75
76
  }
76
77
  if (isProperty(feature)) {
77
78
  const typeId = (() => {
@@ -98,8 +99,8 @@ export const tsFieldTypeForFeature = (feature: Feature, imports: Imports): strin
98
99
 
99
100
  export const tsTypeForValueManager = (feature: Feature, imports: Imports): string => {
100
101
  const type = typeOf(feature)
101
- if (type === null) {
102
- return `unknown /* [ERROR] can't compute a TS type for feature ${feature.name} on classifier ${feature.classifier.name} with null type */`
102
+ if (isUnresolvedReference(type)) {
103
+ return `unknown /* [ERROR] can't compute a TS type for feature ${feature.name} on classifier ${feature.classifier.name} with unresolved type (${type}) */`
103
104
  }
104
105
  if (isProperty(feature)) {
105
106
  const typeId = (() => {
@@ -15,7 +15,7 @@
15
15
  // SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
16
16
  // SPDX-License-Identifier: Apache-2.0
17
17
 
18
- import { Concept, Language } from "@lionweb/core"
18
+ import { Concept, isUnresolvedReference, Language } from "@lionweb/core"
19
19
  import { indent } from "@lionweb/textgen-utils"
20
20
  import { dependencyOrderOf, sortedStringsByUppercase } from "@lionweb/ts-utils"
21
21
  import { asString, commaSeparated, when, withNewlineAppended } from "littoral-templates"
@@ -35,7 +35,11 @@ export const languageFileFor = (language: Language, options: GeneratorOptions) =
35
35
 
36
36
  const imports = new Imports(language)
37
37
 
38
- const orderedEntities = dependencyOrderOf(entities, (entity) => (entity instanceof Concept && !!entity.extends) ? [entity.extends] : [])
38
+ const orderedEntities = dependencyOrderOf(
39
+ entities,
40
+ (entity) =>
41
+ (entity instanceof Concept && entity.extends !== undefined && !isUnresolvedReference(entity.extends)) ? [entity.extends] : []
42
+ )
39
43
  if (typeof orderedEntities === "boolean") {
40
44
  throw new Error(`language ${name} has a cycle among the graph of entities with edges formed by the inheritance dependency`)
41
45
  }
@@ -28,6 +28,7 @@ import {
28
28
  isEnumeration,
29
29
  isMultiple,
30
30
  isPartition,
31
+ isUnresolvedReference,
31
32
  Language,
32
33
  LanguageEntity,
33
34
  Link,
@@ -115,7 +116,7 @@ export const reflectiveClassFor = (imports: Imports) => {
115
116
  }
116
117
 
117
118
  const refForType = (type: SingleRef<LanguageEntity>) => {
118
- if (type === null) {
119
+ if (isUnresolvedReference(type)) {
119
120
  return `???`
120
121
  }
121
122
  if (type.language === imports.thisLanguage) {