Skip to content

Commit cd7e799

Browse files
committed
Use readonly fields for type meta data
1 parent 1e69ab4 commit cd7e799

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

packages/langium/src/syntax-tree.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -257,39 +257,39 @@ export abstract class AbstractAstReflection implements AstReflection {
257257
* A map of all AST node types and their meta data.
258258
*/
259259
export interface AstMetaData {
260-
[type: string]: TypeMetaData
260+
readonly [type: string]: TypeMetaData
261261
}
262262

263263
/**
264264
* Represents runtime meta data about an AST node type.
265265
*/
266266
export interface TypeMetaData {
267267
/** The name of this AST node type. Corresponds to the `AstNode.$type` value. */
268-
name: string
268+
readonly name: string
269269
/** A list of properties with their relevant meta data. */
270-
properties: {
271-
[name: string]: PropertyMetaData
270+
readonly properties: {
271+
readonly [name: string]: PropertyMetaData
272272
}
273273
/** The super types of this AST node type. */
274-
superTypes: string[]
274+
readonly superTypes: readonly string[]
275275
}
276276

277277
/**
278278
* Describes the meta data of a property of an AST node.
279279
*/
280280
export interface PropertyMetaData {
281281
/** The name of this property. */
282-
name: string
282+
readonly name: string
283283
/**
284284
* Indicates that the property is mandatory in the AST node.
285285
* For example, if an AST node contains an array, but no elements of this array have been parsed,
286286
* we still expect an empty array instead of `undefined`.
287287
*/
288-
defaultValue?: PropertyType
288+
readonly defaultValue?: PropertyType
289289
/**
290290
* If the property is a reference, this is the type of the reference target.
291291
*/
292-
referenceType?: string
292+
readonly referenceType?: string
293293
}
294294

295295
/**

0 commit comments

Comments
 (0)