@lionweb/validation 0.7.0 → 0.7.2-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/CHANGELOG.md +3 -1
  2. package/dist/index.d.ts +5 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +5 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/issues/LanguageIssues.d.ts +99 -0
  7. package/dist/issues/LanguageIssues.d.ts.map +1 -0
  8. package/dist/issues/LanguageIssues.js +146 -0
  9. package/dist/issues/LanguageIssues.js.map +1 -0
  10. package/dist/issues/ReferenceIssues.d.ts +43 -0
  11. package/dist/issues/ReferenceIssues.d.ts.map +1 -0
  12. package/dist/issues/ReferenceIssues.js +53 -0
  13. package/dist/issues/ReferenceIssues.js.map +1 -0
  14. package/dist/issues/SyntaxIssues.d.ts +53 -0
  15. package/dist/issues/SyntaxIssues.d.ts.map +1 -0
  16. package/dist/issues/SyntaxIssues.js +81 -0
  17. package/dist/issues/SyntaxIssues.js.map +1 -0
  18. package/dist/issues/ValidationIssue.d.ts +15 -0
  19. package/dist/issues/ValidationIssue.d.ts.map +1 -0
  20. package/dist/issues/ValidationIssue.js +17 -0
  21. package/dist/issues/ValidationIssue.js.map +1 -0
  22. package/dist/issues/index.d.ts +5 -0
  23. package/dist/issues/index.d.ts.map +1 -0
  24. package/dist/issues/index.js +5 -0
  25. package/dist/issues/index.js.map +1 -0
  26. package/dist/languages/CompositeLionWebLanguageWrapper.d.ts +24 -0
  27. package/dist/languages/CompositeLionWebLanguageWrapper.d.ts.map +1 -0
  28. package/dist/languages/CompositeLionWebLanguageWrapper.js +56 -0
  29. package/dist/languages/CompositeLionWebLanguageWrapper.js.map +1 -0
  30. package/dist/languages/LanguageRegistry.d.ts +19 -0
  31. package/dist/languages/LanguageRegistry.d.ts.map +1 -0
  32. package/dist/languages/LanguageRegistry.js +37 -0
  33. package/dist/languages/LanguageRegistry.js.map +1 -0
  34. package/dist/languages/LanguageUtils.d.ts +35 -0
  35. package/dist/languages/LanguageUtils.d.ts.map +1 -0
  36. package/dist/languages/LanguageUtils.js +54 -0
  37. package/dist/languages/LanguageUtils.js.map +1 -0
  38. package/dist/languages/LionCore-M3.json +2356 -0
  39. package/dist/languages/LionCore-builtins.json +372 -0
  40. package/dist/languages/LionWebLanguageWrapper.d.ts +31 -0
  41. package/dist/languages/LionWebLanguageWrapper.d.ts.map +1 -0
  42. package/dist/languages/LionWebLanguageWrapper.js +69 -0
  43. package/dist/languages/LionWebLanguageWrapper.js.map +1 -0
  44. package/dist/languages/MetaPointerMap.d.ts +11 -0
  45. package/dist/languages/MetaPointerMap.d.ts.map +1 -0
  46. package/dist/languages/MetaPointerMap.js +39 -0
  47. package/dist/languages/MetaPointerMap.js.map +1 -0
  48. package/dist/languages/index.d.ts +3 -0
  49. package/dist/languages/index.d.ts.map +1 -0
  50. package/dist/languages/index.js +3 -0
  51. package/dist/languages/index.js.map +1 -0
  52. package/dist/runners/FileUtils.d.ts +6 -0
  53. package/dist/runners/FileUtils.d.ts.map +1 -0
  54. package/dist/runners/FileUtils.js +53 -0
  55. package/dist/runners/FileUtils.js.map +1 -0
  56. package/dist/runners/RunCheckFolder.d.ts +2 -0
  57. package/dist/runners/RunCheckFolder.d.ts.map +1 -0
  58. package/dist/runners/RunCheckFolder.js +6 -0
  59. package/dist/runners/RunCheckFolder.js.map +1 -0
  60. package/dist/runners/RunCheckFolderWithLanguage.d.ts +2 -0
  61. package/dist/runners/RunCheckFolderWithLanguage.d.ts.map +1 -0
  62. package/dist/runners/RunCheckFolderWithLanguage.js +40 -0
  63. package/dist/runners/RunCheckFolderWithLanguage.js.map +1 -0
  64. package/dist/runners/RunCheckOneFile.d.ts +2 -0
  65. package/dist/runners/RunCheckOneFile.d.ts.map +1 -0
  66. package/dist/runners/RunCheckOneFile.js +6 -0
  67. package/dist/runners/RunCheckOneFile.js.map +1 -0
  68. package/dist/runners/RunCheckOneFileWithLanguage.d.ts +2 -0
  69. package/dist/runners/RunCheckOneFileWithLanguage.d.ts.map +1 -0
  70. package/dist/runners/RunCheckOneFileWithLanguage.js +31 -0
  71. package/dist/runners/RunCheckOneFileWithLanguage.js.map +1 -0
  72. package/dist/runners/RunLioncoreDiff.d.ts +2 -0
  73. package/dist/runners/RunLioncoreDiff.d.ts.map +1 -0
  74. package/dist/runners/RunLioncoreDiff.js +22 -0
  75. package/dist/runners/RunLioncoreDiff.js.map +1 -0
  76. package/dist/runners/Utils.d.ts +7 -0
  77. package/dist/runners/Utils.d.ts.map +1 -0
  78. package/dist/runners/Utils.js +48 -0
  79. package/dist/runners/Utils.js.map +1 -0
  80. package/dist/runners/index.d.ts +3 -0
  81. package/dist/runners/index.d.ts.map +1 -0
  82. package/dist/runners/index.js +3 -0
  83. package/dist/runners/index.js.map +1 -0
  84. package/dist/validators/LionWebChunkDefinitions.d.ts +9 -0
  85. package/dist/validators/LionWebChunkDefinitions.d.ts.map +1 -0
  86. package/dist/validators/LionWebChunkDefinitions.js +100 -0
  87. package/dist/validators/LionWebChunkDefinitions.js.map +1 -0
  88. package/dist/validators/LionWebLanguageReferenceValidator.d.ts +21 -0
  89. package/dist/validators/LionWebLanguageReferenceValidator.d.ts.map +1 -0
  90. package/dist/validators/LionWebLanguageReferenceValidator.js +166 -0
  91. package/dist/validators/LionWebLanguageReferenceValidator.js.map +1 -0
  92. package/dist/validators/LionWebLanguageValidator.d.ts +23 -0
  93. package/dist/validators/LionWebLanguageValidator.d.ts.map +1 -0
  94. package/dist/validators/LionWebLanguageValidator.js +67 -0
  95. package/dist/validators/LionWebLanguageValidator.js.map +1 -0
  96. package/dist/validators/LionWebReferenceValidator.d.ts +43 -0
  97. package/dist/validators/LionWebReferenceValidator.d.ts.map +1 -0
  98. package/dist/validators/LionWebReferenceValidator.js +203 -0
  99. package/dist/validators/LionWebReferenceValidator.js.map +1 -0
  100. package/dist/validators/LionWebSyntaxValidator.d.ts +9 -0
  101. package/dist/validators/LionWebSyntaxValidator.d.ts.map +1 -0
  102. package/dist/validators/LionWebSyntaxValidator.js +11 -0
  103. package/dist/validators/LionWebSyntaxValidator.js.map +1 -0
  104. package/dist/validators/LionWebValidator.d.ts +24 -0
  105. package/dist/validators/LionWebValidator.d.ts.map +1 -0
  106. package/dist/validators/LionWebValidator.js +55 -0
  107. package/dist/validators/LionWebValidator.js.map +1 -0
  108. package/dist/validators/ValidationFunctions.d.ts +60 -0
  109. package/dist/validators/ValidationFunctions.d.ts.map +1 -0
  110. package/dist/validators/ValidationFunctions.js +104 -0
  111. package/dist/validators/ValidationFunctions.js.map +1 -0
  112. package/dist/validators/generic/SyntaxValidator.d.ts +37 -0
  113. package/dist/validators/generic/SyntaxValidator.d.ts.map +1 -0
  114. package/dist/validators/generic/SyntaxValidator.js +152 -0
  115. package/dist/validators/generic/SyntaxValidator.js.map +1 -0
  116. package/dist/validators/generic/ValidationResult.d.ts +8 -0
  117. package/dist/validators/generic/ValidationResult.d.ts.map +1 -0
  118. package/dist/validators/generic/ValidationResult.js +15 -0
  119. package/dist/validators/generic/ValidationResult.js.map +1 -0
  120. package/dist/validators/generic/index.d.ts +4 -0
  121. package/dist/validators/generic/index.d.ts.map +1 -0
  122. package/dist/validators/generic/index.js +4 -0
  123. package/dist/validators/generic/index.js.map +1 -0
  124. package/dist/validators/generic/schema/DefinitionSchema.d.ts +23 -0
  125. package/dist/validators/generic/schema/DefinitionSchema.d.ts.map +1 -0
  126. package/dist/validators/generic/schema/DefinitionSchema.js +43 -0
  127. package/dist/validators/generic/schema/DefinitionSchema.js.map +1 -0
  128. package/dist/validators/generic/schema/ValidationTypes.d.ts +101 -0
  129. package/dist/validators/generic/schema/ValidationTypes.d.ts.map +1 -0
  130. package/dist/validators/generic/schema/ValidationTypes.js +43 -0
  131. package/dist/validators/generic/schema/ValidationTypes.js.map +1 -0
  132. package/dist/validators/generic/schema/index.d.ts +3 -0
  133. package/dist/validators/generic/schema/index.d.ts.map +1 -0
  134. package/dist/validators/generic/schema/index.js +3 -0
  135. package/dist/validators/generic/schema/index.js.map +1 -0
  136. package/dist/validators/index.d.ts +9 -0
  137. package/dist/validators/index.d.ts.map +1 -0
  138. package/dist/validators/index.js +9 -0
  139. package/dist/validators/index.js.map +1 -0
  140. package/package.json +11 -7
@@ -0,0 +1,56 @@
1
+ import { LionWebLanguageWrapper } from "./LionWebLanguageWrapper.js";
2
+ import { MetaPointerMap } from "./MetaPointerMap.js";
3
+ /**
4
+ * Collection of language definitions
5
+ */
6
+ export class CompositeLionWebLanguageWrapper extends LionWebLanguageWrapper {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.metaPointerMap = new MetaPointerMap();
10
+ this.languageMap = new Map();
11
+ this.languages = [];
12
+ }
13
+ addLanguage(lionWebLanguage) {
14
+ let language = this.languageMap.get(lionWebLanguage.key);
15
+ if (language === undefined) {
16
+ language = new Map();
17
+ this.languageMap.set(lionWebLanguage.key, language);
18
+ }
19
+ const version = language.get(lionWebLanguage.version);
20
+ if (version === undefined) {
21
+ language.set(lionWebLanguage.version, lionWebLanguage);
22
+ }
23
+ else {
24
+ // console.error("Language already known")
25
+ return;
26
+ }
27
+ this.languages.push(lionWebLanguage);
28
+ lionWebLanguage.jsonChunk.nodes.forEach(node => {
29
+ this.metaPointerMap.add(lionWebLanguage.key, lionWebLanguage.version, node);
30
+ });
31
+ }
32
+ getLanguage(pointer) {
33
+ return this.languageMap.get(pointer.language)?.get(pointer.version);
34
+ }
35
+ /**
36
+ * Gets the node with _metaPointer_ in any of the known languages
37
+ * @param metaPointer
38
+ */
39
+ getNodeByMetaPointer(metaPointer) {
40
+ return this.metaPointerMap.get(metaPointer);
41
+ }
42
+ /**
43
+ * Get node in any of the languages.
44
+ * @param nodeId
45
+ */
46
+ getNode(nodeId) {
47
+ for (const chunk of this.languages) {
48
+ const node = chunk.getNode(nodeId);
49
+ if (node !== undefined) {
50
+ return node;
51
+ }
52
+ }
53
+ return undefined;
54
+ }
55
+ }
56
+ //# sourceMappingURL=CompositeLionWebLanguageWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositeLionWebLanguageWrapper.js","sourceRoot":"","sources":["../../src/languages/CompositeLionWebLanguageWrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD;;GAEG;AACH,MAAM,OAAO,+BAAgC,SAAQ,sBAAsB;IAA3E;;QACI,mBAAc,GAAmB,IAAI,cAAc,EAAE,CAAA;QACrD,gBAAW,GAAG,IAAI,GAAG,EAA+C,CAAA;QACpE,cAAS,GAA6B,EAAE,CAAA;IA8C5C,CAAC;IA5CG,WAAW,CAAC,eAAuC;QAC/C,IAAI,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;QACxD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzB,QAAQ,GAAG,IAAI,GAAG,EAAkC,CAAA;YACpD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;QACvD,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QACrD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;QAC1D,CAAC;aAAM,CAAC;YACJ,0CAA0C;YAC1C,OAAM;QACV,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QACpC,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC3C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,EAAE,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAC/E,CAAC,CAAC,CAAA;IACN,CAAC;IAED,WAAW,CAAC,OAA+B;QACvC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACvE,CAAC;IAED;;;OAGG;IACH,oBAAoB,CAAC,WAAmC;QACpD,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;IAC/C,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,MAAiB;QACrB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAClC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACrB,OAAO,IAAI,CAAA;YACf,CAAC;QACL,CAAC;QACD,OAAO,SAAS,CAAA;IACpB,CAAC;CACJ"}
@@ -0,0 +1,19 @@
1
+ import { LionWebId, LionWebJsonMetaPointer, LionWebJsonNode } from "@lionweb/json";
2
+ import { CompositeLionWebLanguageWrapper } from "./CompositeLionWebLanguageWrapper.js";
3
+ import { LionWebLanguageWrapper } from "./LionWebLanguageWrapper.js";
4
+ /**
5
+ * Collection of language definitions
6
+ */
7
+ export declare class LanguageRegistry {
8
+ languages: CompositeLionWebLanguageWrapper;
9
+ addLanguage(lionWebLanguage: LionWebLanguageWrapper): void;
10
+ clear(): void;
11
+ getLanguage(pointer: LionWebJsonMetaPointer): LionWebLanguageWrapper | undefined;
12
+ /**
13
+ * Gets the node with _metaPointer_ in any of the known languages
14
+ * @param metaPointer
15
+ */
16
+ getNodeByMetaPointer(metaPointer: LionWebJsonMetaPointer): LionWebJsonNode | undefined;
17
+ findNode(nodeId: LionWebId): LionWebJsonNode | undefined;
18
+ }
19
+ //# sourceMappingURL=LanguageRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LanguageRegistry.d.ts","sourceRoot":"","sources":["../../src/languages/LanguageRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAClF,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAA;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAEpE;;GAEG;AACH,qBAAa,gBAAgB;IACzB,SAAS,EAAE,+BAA+B,CAAwG;IAElJ,WAAW,CAAC,eAAe,EAAE,sBAAsB;IAMnD,KAAK,IAAI,IAAI;IAIb,WAAW,CAAC,OAAO,EAAE,sBAAsB,GAAG,sBAAsB,GAAG,SAAS;IAIhF;;;OAGG;IACH,oBAAoB,CAAC,WAAW,EAAE,sBAAsB,GAAG,eAAe,GAAG,SAAS;IAItF,QAAQ,CAAC,MAAM,EAAE,SAAS;CAS7B"}
@@ -0,0 +1,37 @@
1
+ import { CompositeLionWebLanguageWrapper } from "./CompositeLionWebLanguageWrapper.js";
2
+ /**
3
+ * Collection of language definitions
4
+ */
5
+ export class LanguageRegistry {
6
+ constructor() {
7
+ this.languages = new CompositeLionWebLanguageWrapper({ nodes: [], languages: [], serializationFormatVersion: "2023.1" });
8
+ }
9
+ addLanguage(lionWebLanguage) {
10
+ // console.log("LanguageRegistry.add: " + lionWebLanguage.name + " " + lionWebLanguage.jsonChunk.nodes.length)
11
+ this.languages.addLanguage(lionWebLanguage);
12
+ }
13
+ clear() {
14
+ this.languages = new CompositeLionWebLanguageWrapper({ nodes: [], languages: [], serializationFormatVersion: "2023.1" });
15
+ }
16
+ getLanguage(pointer) {
17
+ return this.languages.languageMap.get(pointer.language)?.get(pointer.version);
18
+ }
19
+ /**
20
+ * Gets the node with _metaPointer_ in any of the known languages
21
+ * @param metaPointer
22
+ */
23
+ getNodeByMetaPointer(metaPointer) {
24
+ return this.languages.getNodeByMetaPointer(metaPointer);
25
+ }
26
+ findNode(nodeId) {
27
+ for (const chunk of this.languages.languages) {
28
+ const node = chunk.getNode(nodeId);
29
+ if (node !== undefined) {
30
+ return node;
31
+ }
32
+ }
33
+ return undefined;
34
+ }
35
+ }
36
+ // export const KnownLanguages = new LanguageRegistry()
37
+ //# sourceMappingURL=LanguageRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LanguageRegistry.js","sourceRoot":"","sources":["../../src/languages/LanguageRegistry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAA;AAGtF;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAA7B;QACI,cAAS,GAAoC,IAAI,+BAA+B,CAAC,EAAC,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,0BAA0B,EAAE,QAAQ,EAAC,CAAC,CAAA;IAiCtJ,CAAC;IA/BG,WAAW,CAAC,eAAuC;QAC/C,+GAA+G;QAE/G,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;IAC/C,CAAC;IAED,KAAK;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,+BAA+B,CAAC,EAAC,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,0BAA0B,EAAE,QAAQ,EAAC,CAAC,CAAA;IAC1H,CAAC;IAED,WAAW,CAAC,OAA+B;QACvC,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACjF,CAAC;IAED;;;OAGG;IACH,oBAAoB,CAAC,WAAmC;QACpD,OAAO,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAA;IAC3D,CAAC;IAED,QAAQ,CAAC,MAAiB;QACtB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAClC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACrB,OAAO,IAAI,CAAA;YACf,CAAC;QACL,CAAC;QACD,OAAO,SAAS,CAAA;IACpB,CAAC;CACJ;AAED,uDAAuD"}
@@ -0,0 +1,35 @@
1
+ import { LionWebJsonChunk, LionWebJsonNode } from "@lionweb/json";
2
+ export declare const LionCore_M3_Json: LionWebJsonChunk;
3
+ export declare const LionCore_builtins_Json: LionWebJsonChunk;
4
+ export declare function isLionCoreLanguage(node: LionWebJsonNode): boolean;
5
+ /**
6
+ * Does _node_ represent a language concept?
7
+ * @param node
8
+ */
9
+ export declare const isConcept: (node: LionWebJsonNode) => boolean;
10
+ /**
11
+ * Does _node_ represent a language annotation?
12
+ * @param node
13
+ */
14
+ export declare const isAnnotation: (node: LionWebJsonNode) => boolean;
15
+ /**
16
+ * Does _node_ represent a language interface?
17
+ * @param node
18
+ */
19
+ export declare const isInterface: (node: LionWebJsonNode) => boolean;
20
+ /**
21
+ * Does _node_ represent a language property?
22
+ * @param node
23
+ */
24
+ export declare const isProperty: (node: LionWebJsonNode) => boolean;
25
+ /**
26
+ * Does _node_ represent a language containment?
27
+ * @param node
28
+ */
29
+ export declare const isContainment: (node: LionWebJsonNode) => boolean;
30
+ /**
31
+ * Does _node_ represent a language reference?
32
+ * @param node
33
+ */
34
+ export declare const isReference: (node: LionWebJsonNode) => boolean;
35
+ //# sourceMappingURL=LanguageUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LanguageUtils.d.ts","sourceRoot":"","sources":["../../src/languages/LanguageUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AASrF,eAAO,MAAM,gBAAgB,EAAkB,gBAAgB,CAAA;AAC/D,eAAO,MAAM,sBAAsB,EAAwB,gBAAgB,CAAA;AAE3E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,WAEvD;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,MAAM,eAAe,KAAG,OAEjD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,eAAe,KAAG,OAEpD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM,eAAe,KAAG,OAEnD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,eAAe,KAAG,OAElD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,eAAe,KAAG,OAErD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM,eAAe,KAAG,OAEnD,CAAA"}
@@ -0,0 +1,54 @@
1
+ import { isEqualMetaPointer } from "@lionweb/json";
2
+ import { LION_CORE_M3_KEY, MetaPointers } from "@lionweb/json-utils";
3
+ import { createRequire } from "module";
4
+ const require = createRequire(import.meta.url);
5
+ const LionCore_M3 = require("./LionCore-M3.json");
6
+ const LionCore_builtins = require("./LionCore-builtins.json");
7
+ export const LionCore_M3_Json = LionCore_M3;
8
+ export const LionCore_builtins_Json = LionCore_builtins;
9
+ export function isLionCoreLanguage(node) {
10
+ return node.classifier.language === LION_CORE_M3_KEY && node.classifier.version === "2023.1";
11
+ }
12
+ /**
13
+ * Does _node_ represent a language concept?
14
+ * @param node
15
+ */
16
+ export const isConcept = (node) => {
17
+ return isEqualMetaPointer(node.classifier, MetaPointers.Concept);
18
+ };
19
+ /**
20
+ * Does _node_ represent a language annotation?
21
+ * @param node
22
+ */
23
+ export const isAnnotation = (node) => {
24
+ return isEqualMetaPointer(node.classifier, MetaPointers.Annotation);
25
+ };
26
+ /**
27
+ * Does _node_ represent a language interface?
28
+ * @param node
29
+ */
30
+ export const isInterface = (node) => {
31
+ return isEqualMetaPointer(node.classifier, MetaPointers.Interface);
32
+ };
33
+ /**
34
+ * Does _node_ represent a language property?
35
+ * @param node
36
+ */
37
+ export const isProperty = (node) => {
38
+ return isEqualMetaPointer(node.classifier, MetaPointers.Property);
39
+ };
40
+ /**
41
+ * Does _node_ represent a language containment?
42
+ * @param node
43
+ */
44
+ export const isContainment = (node) => {
45
+ return isEqualMetaPointer(node.classifier, MetaPointers.Containment);
46
+ };
47
+ /**
48
+ * Does _node_ represent a language reference?
49
+ * @param node
50
+ */
51
+ export const isReference = (node) => {
52
+ return isEqualMetaPointer(node.classifier, MetaPointers.Reference);
53
+ };
54
+ //# sourceMappingURL=LanguageUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LanguageUtils.js","sourceRoot":"","sources":["../../src/languages/LanguageUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAqC,MAAM,eAAe,CAAA;AACrF,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEtC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AACjD,MAAM,iBAAiB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAA;AAE7D,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAA+B,CAAA;AAC/D,MAAM,CAAC,MAAM,sBAAsB,GAAG,iBAAqC,CAAA;AAE3E,MAAM,UAAU,kBAAkB,CAAC,IAAqB;IACpD,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,KAAK,gBAAgB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,QAAQ,CAAA;AAChG,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAqB,EAAW,EAAE;IACxD,OAAO,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;AACpE,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAqB,EAAW,EAAE;IAC3D,OAAO,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC,CAAA;AACvE,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAqB,EAAW,EAAE;IAC1D,OAAO,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC,CAAA;AACtE,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAqB,EAAW,EAAE;IACzD,OAAO,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAA;AACrE,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAqB,EAAW,EAAE;IAC5D,OAAO,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,WAAW,CAAC,CAAA;AACxE,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAqB,EAAW,EAAE;IAC1D,OAAO,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC,CAAA;AACtE,CAAC,CAAA"}