@zenstackhq/language 3.0.0-beta.19 → 3.0.0-beta.20

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/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Model, DataSource, DataModel, TypeDef, Enum, Attribute, Expression, InvocationExpr, FunctionDecl } from './ast.cjs';
2
- import { ValidationAcceptor, Module, DeepPartial } from 'langium';
2
+ import { ValidationAcceptor, Module, DeepPartial, AstNode } from 'langium';
3
3
  import { LangiumServices, PartialLangiumServices, LangiumSharedServices, DefaultSharedModuleContext } from 'langium/lsp';
4
4
 
5
5
  /**
@@ -90,4 +90,69 @@ declare function createZModelServices(logToConsole?: boolean): {
90
90
  ZModelLanguage: ZModelServices;
91
91
  };
92
92
 
93
- export { type ZModelAddedServices, ZModelLanguageMetaData, ZModelLanguageModule, type ZModelServices, ZModelSharedModule, type ZModelSharedServices, createZModelLanguageServices, createZModelServices, loadDocument };
93
+ /**
94
+ * Options for the generator.
95
+ */
96
+ interface ZModelCodeOptions {
97
+ binaryExprNumberOfSpaces: number;
98
+ unaryExprNumberOfSpaces: number;
99
+ indent: number;
100
+ quote: 'single' | 'double';
101
+ }
102
+ /**
103
+ * Generates ZModel source code from AST.
104
+ */
105
+ declare class ZModelCodeGenerator {
106
+ private readonly options;
107
+ constructor(options?: Partial<ZModelCodeOptions>);
108
+ /**
109
+ * Generates ZModel source code from AST.
110
+ */
111
+ generate(ast: AstNode): string;
112
+ private _generateModel;
113
+ private _generateDataSource;
114
+ private _generateEnum;
115
+ private _generateEnumField;
116
+ private _generateGenerator;
117
+ private _generateConfigField;
118
+ private _generateConfigArrayExpr;
119
+ private _generateConfigInvocationExpr;
120
+ private _generatePlugin;
121
+ private _generatePluginField;
122
+ private _generateDataModel;
123
+ private _generateDataField;
124
+ private fieldType;
125
+ private _generateDataModelAttribute;
126
+ private _generateDataFieldAttribute;
127
+ private attribute;
128
+ private _generateAttributeArg;
129
+ private _generateObjectExpr;
130
+ private objectField;
131
+ private _generateArrayExpr;
132
+ private _generateLiteralExpr;
133
+ private _generateNumberLiteral;
134
+ private _generateBooleanLiteral;
135
+ private _generateUnaryExpr;
136
+ private _generateBinaryExpr;
137
+ private _generateReferenceExpr;
138
+ private _generateReferenceArg;
139
+ private _generateMemberExpr;
140
+ private _generateInvocationExpr;
141
+ private _generateNullExpr;
142
+ private _generateThisExpr;
143
+ private _generateAttribute;
144
+ private _generateAttributeParam;
145
+ private _generateAttributeParamType;
146
+ private _generateFunctionDecl;
147
+ private _generateFunctionParam;
148
+ private _generateFunctionParamType;
149
+ private _generateTypeDef;
150
+ private argument;
151
+ private get binaryExprSpace();
152
+ private get unaryExprSpace();
153
+ private get indent();
154
+ private isParenthesesNeededForBinaryExpr;
155
+ private isCollectionPredicateOperator;
156
+ }
157
+
158
+ export { type ZModelAddedServices, ZModelCodeGenerator, ZModelLanguageMetaData, ZModelLanguageModule, type ZModelServices, ZModelSharedModule, type ZModelSharedServices, createZModelLanguageServices, createZModelServices, loadDocument };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Model, DataSource, DataModel, TypeDef, Enum, Attribute, Expression, InvocationExpr, FunctionDecl } from './ast.js';
2
- import { ValidationAcceptor, Module, DeepPartial } from 'langium';
2
+ import { ValidationAcceptor, Module, DeepPartial, AstNode } from 'langium';
3
3
  import { LangiumServices, PartialLangiumServices, LangiumSharedServices, DefaultSharedModuleContext } from 'langium/lsp';
4
4
 
5
5
  /**
@@ -90,4 +90,69 @@ declare function createZModelServices(logToConsole?: boolean): {
90
90
  ZModelLanguage: ZModelServices;
91
91
  };
92
92
 
93
- export { type ZModelAddedServices, ZModelLanguageMetaData, ZModelLanguageModule, type ZModelServices, ZModelSharedModule, type ZModelSharedServices, createZModelLanguageServices, createZModelServices, loadDocument };
93
+ /**
94
+ * Options for the generator.
95
+ */
96
+ interface ZModelCodeOptions {
97
+ binaryExprNumberOfSpaces: number;
98
+ unaryExprNumberOfSpaces: number;
99
+ indent: number;
100
+ quote: 'single' | 'double';
101
+ }
102
+ /**
103
+ * Generates ZModel source code from AST.
104
+ */
105
+ declare class ZModelCodeGenerator {
106
+ private readonly options;
107
+ constructor(options?: Partial<ZModelCodeOptions>);
108
+ /**
109
+ * Generates ZModel source code from AST.
110
+ */
111
+ generate(ast: AstNode): string;
112
+ private _generateModel;
113
+ private _generateDataSource;
114
+ private _generateEnum;
115
+ private _generateEnumField;
116
+ private _generateGenerator;
117
+ private _generateConfigField;
118
+ private _generateConfigArrayExpr;
119
+ private _generateConfigInvocationExpr;
120
+ private _generatePlugin;
121
+ private _generatePluginField;
122
+ private _generateDataModel;
123
+ private _generateDataField;
124
+ private fieldType;
125
+ private _generateDataModelAttribute;
126
+ private _generateDataFieldAttribute;
127
+ private attribute;
128
+ private _generateAttributeArg;
129
+ private _generateObjectExpr;
130
+ private objectField;
131
+ private _generateArrayExpr;
132
+ private _generateLiteralExpr;
133
+ private _generateNumberLiteral;
134
+ private _generateBooleanLiteral;
135
+ private _generateUnaryExpr;
136
+ private _generateBinaryExpr;
137
+ private _generateReferenceExpr;
138
+ private _generateReferenceArg;
139
+ private _generateMemberExpr;
140
+ private _generateInvocationExpr;
141
+ private _generateNullExpr;
142
+ private _generateThisExpr;
143
+ private _generateAttribute;
144
+ private _generateAttributeParam;
145
+ private _generateAttributeParamType;
146
+ private _generateFunctionDecl;
147
+ private _generateFunctionParam;
148
+ private _generateFunctionParamType;
149
+ private _generateTypeDef;
150
+ private argument;
151
+ private get binaryExprSpace();
152
+ private get unaryExprSpace();
153
+ private get indent();
154
+ private isParenthesesNeededForBinaryExpr;
155
+ private isCollectionPredicateOperator;
156
+ }
157
+
158
+ export { type ZModelAddedServices, ZModelCodeGenerator, ZModelLanguageMetaData, ZModelLanguageModule, type ZModelServices, ZModelSharedModule, type ZModelSharedServices, createZModelLanguageServices, createZModelServices, loadDocument };