Skip to content

Commit 2771f02

Browse files
authored
Merge branch 'main' into option_for_optional_ast_properties
2 parents 0e954b8 + d2eda28 commit 2771f02

File tree

12 files changed

+258
-194
lines changed

12 files changed

+258
-194
lines changed

examples/arithmetics/src/language-server/generated/ast.ts

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
******************************************************************************/
55

66
/* eslint-disable */
7-
import type { AstNode, Reference, ReferenceInfo, TypeMetaData } from 'langium';
8-
import { AbstractAstReflection } from 'langium';
7+
import * as langium from 'langium';
98

109
export const ArithmeticsTerminals = {
1110
WS: /\s+/,
@@ -17,7 +16,7 @@ export const ArithmeticsTerminals = {
1716

1817
export type ArithmeticsTerminalNames = keyof typeof ArithmeticsTerminals;
1918

20-
export type ArithmeticsKeywordNames =
19+
export type ArithmeticsKeywordNames =
2120
| "%"
2221
| "("
2322
| ")"
@@ -58,7 +57,7 @@ export function isStatement(item: unknown): item is Statement {
5857
return reflection.isInstance(item, Statement);
5958
}
6059

61-
export interface BinaryExpression extends AstNode {
60+
export interface BinaryExpression extends langium.AstNode {
6261
readonly $container: BinaryExpression | Definition | Evaluation | FunctionCall;
6362
readonly $type: 'BinaryExpression';
6463
left: Expression;
@@ -72,7 +71,7 @@ export function isBinaryExpression(item: unknown): item is BinaryExpression {
7271
return reflection.isInstance(item, BinaryExpression);
7372
}
7473

75-
export interface DeclaredParameter extends AstNode {
74+
export interface DeclaredParameter extends langium.AstNode {
7675
readonly $container: Definition;
7776
readonly $type: 'DeclaredParameter';
7877
name: string;
@@ -84,7 +83,7 @@ export function isDeclaredParameter(item: unknown): item is DeclaredParameter {
8483
return reflection.isInstance(item, DeclaredParameter);
8584
}
8685

87-
export interface Definition extends AstNode {
86+
export interface Definition extends langium.AstNode {
8887
readonly $container: Module;
8988
readonly $type: 'Definition';
9089
args: Array<DeclaredParameter>;
@@ -98,7 +97,7 @@ export function isDefinition(item: unknown): item is Definition {
9897
return reflection.isInstance(item, Definition);
9998
}
10099

101-
export interface Evaluation extends AstNode {
100+
export interface Evaluation extends langium.AstNode {
102101
readonly $container: Module;
103102
readonly $type: 'Evaluation';
104103
expression: Expression;
@@ -110,11 +109,11 @@ export function isEvaluation(item: unknown): item is Evaluation {
110109
return reflection.isInstance(item, Evaluation);
111110
}
112111

113-
export interface FunctionCall extends AstNode {
112+
export interface FunctionCall extends langium.AstNode {
114113
readonly $container: BinaryExpression | Definition | Evaluation | FunctionCall;
115114
readonly $type: 'FunctionCall';
116115
args: Array<Expression>;
117-
func: Reference<AbstractDefinition>;
116+
func: langium.Reference<AbstractDefinition>;
118117
}
119118

120119
export const FunctionCall = 'FunctionCall';
@@ -123,7 +122,7 @@ export function isFunctionCall(item: unknown): item is FunctionCall {
123122
return reflection.isInstance(item, FunctionCall);
124123
}
125124

126-
export interface Module extends AstNode {
125+
export interface Module extends langium.AstNode {
127126
readonly $type: 'Module';
128127
name: string;
129128
statements: Array<Statement>;
@@ -135,7 +134,7 @@ export function isModule(item: unknown): item is Module {
135134
return reflection.isInstance(item, Module);
136135
}
137136

138-
export interface NumberLiteral extends AstNode {
137+
export interface NumberLiteral extends langium.AstNode {
139138
readonly $container: BinaryExpression | Definition | Evaluation | FunctionCall;
140139
readonly $type: 'NumberLiteral';
141140
value: number;
@@ -160,7 +159,7 @@ export type ArithmeticsAstType = {
160159
Statement: Statement
161160
}
162161

163-
export class ArithmeticsAstReflection extends AbstractAstReflection {
162+
export class ArithmeticsAstReflection extends langium.AbstractAstReflection {
164163

165164
getAllTypes(): string[] {
166165
return [AbstractDefinition, BinaryExpression, DeclaredParameter, Definition, Evaluation, Expression, FunctionCall, Module, NumberLiteral, Statement];
@@ -188,7 +187,7 @@ export class ArithmeticsAstReflection extends AbstractAstReflection {
188187
}
189188
}
190189

191-
getReferenceType(refInfo: ReferenceInfo): string {
190+
getReferenceType(refInfo: langium.ReferenceInfo): string {
192191
const referenceId = `${refInfo.container.$type}:${refInfo.property}`;
193192
switch (referenceId) {
194193
case 'FunctionCall:func': {
@@ -200,7 +199,7 @@ export class ArithmeticsAstReflection extends AbstractAstReflection {
200199
}
201200
}
202201

203-
getTypeMetaData(type: string): TypeMetaData {
202+
getTypeMetaData(type: string): langium.TypeMetaData {
204203
switch (type) {
205204
case BinaryExpression: {
206205
return {

examples/domainmodel/src/language-server/generated/ast.ts

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
******************************************************************************/
55

66
/* eslint-disable */
7-
import type { AstNode, Reference, ReferenceInfo, TypeMetaData } from 'langium';
8-
import { AbstractAstReflection } from 'langium';
7+
import * as langium from 'langium';
98

109
export const DomainModelTerminals = {
1110
WS: /\s+/,
@@ -16,7 +15,7 @@ export const DomainModelTerminals = {
1615

1716
export type DomainModelTerminalNames = keyof typeof DomainModelTerminals;
1817

19-
export type DomainModelKeywordNames =
18+
export type DomainModelKeywordNames =
2019
| "."
2120
| ":"
2221
| "datatype"
@@ -51,7 +50,7 @@ export function isType(item: unknown): item is Type {
5150
return reflection.isInstance(item, Type);
5251
}
5352

54-
export interface DataType extends AstNode {
53+
export interface DataType extends langium.AstNode {
5554
readonly $container: Domainmodel | PackageDeclaration;
5655
readonly $type: 'DataType';
5756
name: string;
@@ -63,7 +62,7 @@ export function isDataType(item: unknown): item is DataType {
6362
return reflection.isInstance(item, DataType);
6463
}
6564

66-
export interface Domainmodel extends AstNode {
65+
export interface Domainmodel extends langium.AstNode {
6766
readonly $type: 'Domainmodel';
6867
elements: Array<AbstractElement>;
6968
}
@@ -74,12 +73,12 @@ export function isDomainmodel(item: unknown): item is Domainmodel {
7473
return reflection.isInstance(item, Domainmodel);
7574
}
7675

77-
export interface Entity extends AstNode {
76+
export interface Entity extends langium.AstNode {
7877
readonly $container: Domainmodel | PackageDeclaration;
7978
readonly $type: 'Entity';
8079
features: Array<Feature>;
8180
name: string;
82-
superType?: Reference<Entity>;
81+
superType?: langium.Reference<Entity>;
8382
}
8483

8584
export const Entity = 'Entity';
@@ -88,12 +87,12 @@ export function isEntity(item: unknown): item is Entity {
8887
return reflection.isInstance(item, Entity);
8988
}
9089

91-
export interface Feature extends AstNode {
90+
export interface Feature extends langium.AstNode {
9291
readonly $container: Entity;
9392
readonly $type: 'Feature';
9493
many: boolean;
9594
name: string;
96-
type: Reference<Type>;
95+
type: langium.Reference<Type>;
9796
}
9897

9998
export const Feature = 'Feature';
@@ -102,7 +101,7 @@ export function isFeature(item: unknown): item is Feature {
102101
return reflection.isInstance(item, Feature);
103102
}
104103

105-
export interface PackageDeclaration extends AstNode {
104+
export interface PackageDeclaration extends langium.AstNode {
106105
readonly $container: Domainmodel | PackageDeclaration;
107106
readonly $type: 'PackageDeclaration';
108107
elements: Array<AbstractElement>;
@@ -125,7 +124,7 @@ export type DomainModelAstType = {
125124
Type: Type
126125
}
127126

128-
export class DomainModelAstReflection extends AbstractAstReflection {
127+
export class DomainModelAstReflection extends langium.AbstractAstReflection {
129128

130129
getAllTypes(): string[] {
131130
return [AbstractElement, DataType, Domainmodel, Entity, Feature, PackageDeclaration, Type];
@@ -147,7 +146,7 @@ export class DomainModelAstReflection extends AbstractAstReflection {
147146
}
148147
}
149148

150-
getReferenceType(refInfo: ReferenceInfo): string {
149+
getReferenceType(refInfo: langium.ReferenceInfo): string {
151150
const referenceId = `${refInfo.container.$type}:${refInfo.property}`;
152151
switch (referenceId) {
153152
case 'Entity:superType': {
@@ -162,7 +161,7 @@ export class DomainModelAstReflection extends AbstractAstReflection {
162161
}
163162
}
164163

165-
getTypeMetaData(type: string): TypeMetaData {
164+
getTypeMetaData(type: string): langium.TypeMetaData {
166165
switch (type) {
167166
case DataType: {
168167
return {

examples/requirements/src/language-server/generated/ast.ts

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
******************************************************************************/
55

66
/* eslint-disable */
7-
import type { AstNode, Reference, ReferenceInfo, TypeMetaData } from 'langium';
8-
import { AbstractAstReflection } from 'langium';
7+
import * as langium from 'langium';
98

109
export const RequirementsAndTestsTerminals = {
1110
WS: /\s+/,
@@ -17,7 +16,7 @@ export const RequirementsAndTestsTerminals = {
1716

1817
export type RequirementsAndTestsTerminalNames = keyof typeof RequirementsAndTestsTerminals;
1918

20-
export type RequirementsAndTestsKeywordNames =
19+
export type RequirementsAndTestsKeywordNames =
2120
| ","
2221
| ":"
2322
| "="
@@ -32,7 +31,7 @@ export type RequirementsAndTestsKeywordNames =
3231

3332
export type RequirementsAndTestsTokenNames = RequirementsAndTestsTerminalNames | RequirementsAndTestsKeywordNames;
3433

35-
export interface Contact extends AstNode {
34+
export interface Contact extends langium.AstNode {
3635
readonly $container: RequirementModel | TestModel;
3736
readonly $type: 'Contact';
3837
user_name: string;
@@ -44,7 +43,7 @@ export function isContact(item: unknown): item is Contact {
4443
return reflection.isInstance(item, Contact);
4544
}
4645

47-
export interface Environment extends AstNode {
46+
export interface Environment extends langium.AstNode {
4847
readonly $container: RequirementModel;
4948
readonly $type: 'Environment';
5049
description: string;
@@ -57,10 +56,10 @@ export function isEnvironment(item: unknown): item is Environment {
5756
return reflection.isInstance(item, Environment);
5857
}
5958

60-
export interface Requirement extends AstNode {
59+
export interface Requirement extends langium.AstNode {
6160
readonly $container: RequirementModel;
6261
readonly $type: 'Requirement';
63-
environments: Array<Reference<Environment>>;
62+
environments: Array<langium.Reference<Environment>>;
6463
name: string;
6564
text: string;
6665
}
@@ -71,7 +70,7 @@ export function isRequirement(item: unknown): item is Requirement {
7170
return reflection.isInstance(item, Requirement);
7271
}
7372

74-
export interface RequirementModel extends AstNode {
73+
export interface RequirementModel extends langium.AstNode {
7574
readonly $type: 'RequirementModel';
7675
contact?: Contact;
7776
environments: Array<Environment>;
@@ -84,12 +83,12 @@ export function isRequirementModel(item: unknown): item is RequirementModel {
8483
return reflection.isInstance(item, RequirementModel);
8584
}
8685

87-
export interface Test extends AstNode {
86+
export interface Test extends langium.AstNode {
8887
readonly $container: TestModel;
8988
readonly $type: 'Test';
90-
environments: Array<Reference<Environment>>;
89+
environments: Array<langium.Reference<Environment>>;
9190
name: string;
92-
requirements: Array<Reference<Requirement>>;
91+
requirements: Array<langium.Reference<Requirement>>;
9392
testFile?: string;
9493
}
9594

@@ -99,7 +98,7 @@ export function isTest(item: unknown): item is Test {
9998
return reflection.isInstance(item, Test);
10099
}
101100

102-
export interface TestModel extends AstNode {
101+
export interface TestModel extends langium.AstNode {
103102
readonly $type: 'TestModel';
104103
contact?: Contact;
105104
tests: Array<Test>;
@@ -120,7 +119,7 @@ export type RequirementsAndTestsAstType = {
120119
TestModel: TestModel
121120
}
122121

123-
export class RequirementsAndTestsAstReflection extends AbstractAstReflection {
122+
export class RequirementsAndTestsAstReflection extends langium.AbstractAstReflection {
124123

125124
getAllTypes(): string[] {
126125
return [Contact, Environment, Requirement, RequirementModel, Test, TestModel];
@@ -134,7 +133,7 @@ export class RequirementsAndTestsAstReflection extends AbstractAstReflection {
134133
}
135134
}
136135

137-
getReferenceType(refInfo: ReferenceInfo): string {
136+
getReferenceType(refInfo: langium.ReferenceInfo): string {
138137
const referenceId = `${refInfo.container.$type}:${refInfo.property}`;
139138
switch (referenceId) {
140139
case 'Requirement:environments':
@@ -150,7 +149,7 @@ export class RequirementsAndTestsAstReflection extends AbstractAstReflection {
150149
}
151150
}
152151

153-
getTypeMetaData(type: string): TypeMetaData {
152+
getTypeMetaData(type: string): langium.TypeMetaData {
154153
switch (type) {
155154
case Contact: {
156155
return {

0 commit comments

Comments
 (0)