static-injector 2.1.0 → 2.2.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.
- package/import/commonjs/index.js +403 -211
- package/import/{es2015 → es2022}/di/create_injector.js +5 -3
- package/import/{es2015 → es2022}/di/forward_ref.js +32 -5
- package/import/{es2015 → es2022}/di/injection_token.js +20 -11
- package/import/{es2015 → es2022}/di/injector.js +15 -16
- package/import/{es2015 → es2022}/di/injector_compatibility.js +27 -13
- package/import/{es2015 → es2022}/di/injector_token.js +3 -3
- package/import/{es2015 → es2022}/di/interface/defs.js +22 -27
- package/import/{es2015 → es2022}/di/interface/injector.js +1 -1
- package/import/{es2015 → es2022}/di/interface/provider.js +3 -1
- package/import/{es2015 → es2022}/di/null_injector.js +3 -3
- package/import/es2022/di/provider_collection.js +104 -0
- package/import/{es2015 → es2022}/di/r3_injector.js +71 -37
- package/import/es2022/error_details_base_url.js +19 -0
- package/import/es2022/errors.js +44 -0
- package/import/es2022/interface/type.js +21 -0
- package/import/{es2015 → es2022}/render3/definition_factory.js +2 -3
- package/import/{es2015 → es2022}/render3/error_code.js +1 -0
- package/import/{es2015 → es2022}/render3/errors_di.js +2 -3
- package/import/es2022/render3/fields.js +22 -0
- package/import/{es2015 → es2022}/render3/instructions/di.js +0 -7
- package/import/{es2015 → es2022}/render3/util/stringify_utils.js +5 -5
- package/import/{es2015 → es2022}/util/array_utils.js +0 -7
- package/import/es2022/util/decorators.js +53 -0
- package/import/{es2015 → es2022}/util/empty.js +4 -0
- package/import/{es2015 → es2022}/util/stringify.js +5 -5
- package/import/{fesm2015 → fesm2022}/index.js +399 -209
- package/import/typings/di/create_injector.d.ts +3 -5
- package/import/typings/di/forward_ref.d.ts +30 -3
- package/import/typings/di/inject_switch.d.ts +1 -1
- package/import/typings/di/injectable.d.ts +4 -3
- package/import/typings/di/injection_token.d.ts +21 -6
- package/import/typings/di/injector.d.ts +19 -3
- package/import/typings/di/injector_compatibility.d.ts +12 -5
- package/import/typings/di/injector_token.d.ts +2 -2
- package/import/typings/di/interface/defs.d.ts +17 -9
- package/import/typings/di/interface/injector.d.ts +2 -2
- package/import/typings/di/interface/provider.d.ts +64 -4
- package/import/typings/di/metadata.d.ts +4 -4
- package/import/typings/di/null_injector.d.ts +1 -1
- package/import/typings/di/provider_collection.d.ts +53 -11
- package/import/typings/di/provider_token.d.ts +2 -2
- package/import/typings/di/r3_injector.d.ts +11 -14
- package/import/typings/di/scope.d.ts +1 -1
- package/import/typings/error_details_base_url.d.ts +19 -0
- package/import/typings/errors.d.ts +114 -0
- package/import/typings/interface/type.d.ts +45 -0
- package/import/typings/render3/errors_di.d.ts +7 -0
- package/import/typings/render3/fields.d.ts +9 -0
- package/import/typings/render3/instructions/di.d.ts +0 -7
- package/import/typings/util/array_utils.d.ts +15 -7
- package/import/typings/util/decorators.d.ts +3 -1
- package/import/typings/util/empty.d.ts +1 -0
- package/package.json +7 -7
- package/readme.md +4 -1
- package/transform/compiler/src/injectable_compiler_2.d.ts +0 -1
- package/transform/compiler/src/injectable_compiler_2.js +31 -16
- package/transform/compiler/src/output/output_ast.d.ts +53 -10
- package/transform/compiler/src/output/output_ast.js +211 -12
- package/transform/compiler/src/parse_util.js +10 -0
- package/transform/compiler/src/render3/partial/api.js +1 -1
- package/transform/compiler/src/render3/r3_factory.d.ts +0 -8
- package/transform/compiler/src/render3/r3_factory.js +5 -4
- package/transform/compiler/src/render3/r3_identifiers.js +37 -37
- package/transform/compiler/src/render3/view/util.js +1 -3
- package/transform/compiler-cli/src/ngtsc/annotations/common/src/di.js +2 -4
- package/transform/compiler-cli/src/ngtsc/annotations/common/src/factory.js +1 -0
- package/transform/compiler-cli/src/ngtsc/annotations/common/src/util.d.ts +1 -1
- package/transform/compiler-cli/src/ngtsc/annotations/common/src/util.js +5 -9
- package/transform/compiler-cli/src/ngtsc/annotations/src/injectable.d.ts +2 -1
- package/transform/compiler-cli/src/ngtsc/annotations/src/injectable.js +12 -8
- package/transform/compiler-cli/src/ngtsc/diagnostics/error.d.ts +2 -2
- package/transform/compiler-cli/src/ngtsc/diagnostics/error.js +8 -4
- package/transform/compiler-cli/src/ngtsc/diagnostics/error_code.js +1 -1
- package/transform/compiler-cli/src/ngtsc/imports/src/default.js +1 -2
- package/transform/compiler-cli/src/ngtsc/reflection/src/host.d.ts +24 -173
- package/transform/compiler-cli/src/ngtsc/reflection/src/host.js +2 -51
- package/transform/compiler-cli/src/ngtsc/reflection/src/typescript.d.ts +5 -3
- package/transform/compiler-cli/src/ngtsc/reflection/src/typescript.js +5 -10
- package/transform/compiler-cli/src/ngtsc/transform/src/api.d.ts +5 -23
- package/transform/compiler-cli/src/ngtsc/transform/src/api.js +0 -21
- package/transform/compiler-cli/src/ngtsc/transform/src/utils.js +1 -2
- package/transform/compiler-cli/src/ngtsc/translator/src/api/ast_factory.d.ts +7 -0
- package/transform/compiler-cli/src/ngtsc/translator/src/context.js +1 -0
- package/transform/compiler-cli/src/ngtsc/translator/src/import_manager.js +4 -2
- package/transform/compiler-cli/src/ngtsc/translator/src/translator.d.ts +1 -0
- package/transform/compiler-cli/src/ngtsc/translator/src/translator.js +10 -4
- package/transform/compiler-cli/src/ngtsc/translator/src/typescript_ast_factory.d.ts +2 -1
- package/transform/compiler-cli/src/ngtsc/translator/src/typescript_ast_factory.js +20 -16
- package/transform/injectable-transform.d.ts +2 -2
- package/transform/injectable-transform.js +32 -6
- package/import/es2015/di/provider_collection.js +0 -49
- package/import/es2015/interface/type.js +0 -8
- package/import/es2015/render3/fields.js +0 -11
- package/import/es2015/util/decorators.js +0 -30
- /package/import/{es2015 → es2022}/di/initializer_token.js +0 -0
- /package/import/{es2015 → es2022}/di/inject_switch.js +0 -0
- /package/import/{es2015 → es2022}/di/injectable.js +0 -0
- /package/import/{es2015 → es2022}/di/injector_marker.js +0 -0
- /package/import/{es2015 → es2022}/di/internal_tokens.js +0 -0
- /package/import/{es2015 → es2022}/di/metadata.js +0 -0
- /package/import/{es2015 → es2022}/di/provider_token.js +0 -0
- /package/import/{es2015 → es2022}/di/scope.js +0 -0
- /package/import/{es2015 → es2022}/index.js +0 -0
- /package/import/{es2015 → es2022}/interface/lifecycle_hooks.js +0 -0
- /package/import/{es2015 → es2022}/render3/di.js +0 -0
- /package/import/{es2015 → es2022}/util/closure.js +0 -0
- /package/import/{es2015 → es2022}/util/property.js +0 -0
|
@@ -47,6 +47,11 @@ export declare class MapType extends Type {
|
|
|
47
47
|
constructor(valueType: Type | null | undefined, modifiers?: TypeModifier);
|
|
48
48
|
visitType(visitor: TypeVisitor, context: any): any;
|
|
49
49
|
}
|
|
50
|
+
export declare class TransplantedType<T> extends Type {
|
|
51
|
+
readonly type: T;
|
|
52
|
+
constructor(type: T, modifiers?: TypeModifier);
|
|
53
|
+
visitType(visitor: TypeVisitor, context: any): any;
|
|
54
|
+
}
|
|
50
55
|
export declare const DYNAMIC_TYPE: BuiltinType;
|
|
51
56
|
export declare const INFERRED_TYPE: BuiltinType;
|
|
52
57
|
export declare const BOOL_TYPE: BuiltinType;
|
|
@@ -60,6 +65,7 @@ export interface TypeVisitor {
|
|
|
60
65
|
visitExpressionType(type: ExpressionType, context: any): any;
|
|
61
66
|
visitArrayType(type: ArrayType, context: any): any;
|
|
62
67
|
visitMapType(type: MapType, context: any): any;
|
|
68
|
+
visitTransplantedType(type: TransplantedType<unknown>, context: any): any;
|
|
63
69
|
}
|
|
64
70
|
export declare enum UnaryOperator {
|
|
65
71
|
Minus = 0,
|
|
@@ -104,6 +110,7 @@ export declare abstract class Expression {
|
|
|
104
110
|
* Return true if the expression is constant.
|
|
105
111
|
*/
|
|
106
112
|
abstract isConstant(): boolean;
|
|
113
|
+
abstract clone(): Expression;
|
|
107
114
|
prop(name: string, sourceSpan?: ParseSourceSpan | null): ReadPropExpr;
|
|
108
115
|
key(index: Expression, type?: Type | null, sourceSpan?: ParseSourceSpan | null): ReadKeyExpr;
|
|
109
116
|
callFn(params: Expression[], sourceSpan?: ParseSourceSpan | null, pure?: boolean): InvokeFunctionExpr;
|
|
@@ -115,6 +122,7 @@ export declare class ReadVarExpr extends Expression {
|
|
|
115
122
|
isEquivalent(e: Expression): boolean;
|
|
116
123
|
isConstant(): boolean;
|
|
117
124
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
125
|
+
clone(): ReadVarExpr;
|
|
118
126
|
set(value: Expression): WriteVarExpr;
|
|
119
127
|
}
|
|
120
128
|
export declare class TypeofExpr extends Expression {
|
|
@@ -123,6 +131,7 @@ export declare class TypeofExpr extends Expression {
|
|
|
123
131
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
124
132
|
isEquivalent(e: Expression): boolean;
|
|
125
133
|
isConstant(): boolean;
|
|
134
|
+
clone(): TypeofExpr;
|
|
126
135
|
}
|
|
127
136
|
export declare class WrappedNodeExpr<T> extends Expression {
|
|
128
137
|
node: T;
|
|
@@ -130,6 +139,7 @@ export declare class WrappedNodeExpr<T> extends Expression {
|
|
|
130
139
|
isEquivalent(e: Expression): boolean;
|
|
131
140
|
isConstant(): boolean;
|
|
132
141
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
142
|
+
clone(): WrappedNodeExpr<T>;
|
|
133
143
|
}
|
|
134
144
|
export declare class WriteVarExpr extends Expression {
|
|
135
145
|
name: string;
|
|
@@ -138,6 +148,7 @@ export declare class WriteVarExpr extends Expression {
|
|
|
138
148
|
isEquivalent(e: Expression): boolean;
|
|
139
149
|
isConstant(): boolean;
|
|
140
150
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
151
|
+
clone(): WriteVarExpr;
|
|
141
152
|
toDeclStmt(type?: Type | null, modifiers?: StmtModifier): DeclareVarStmt;
|
|
142
153
|
toConstDecl(): DeclareVarStmt;
|
|
143
154
|
}
|
|
@@ -149,6 +160,7 @@ export declare class WriteKeyExpr extends Expression {
|
|
|
149
160
|
isEquivalent(e: Expression): boolean;
|
|
150
161
|
isConstant(): boolean;
|
|
151
162
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
163
|
+
clone(): WriteKeyExpr;
|
|
152
164
|
}
|
|
153
165
|
export declare class WritePropExpr extends Expression {
|
|
154
166
|
receiver: Expression;
|
|
@@ -158,15 +170,18 @@ export declare class WritePropExpr extends Expression {
|
|
|
158
170
|
isEquivalent(e: Expression): boolean;
|
|
159
171
|
isConstant(): boolean;
|
|
160
172
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
173
|
+
clone(): WritePropExpr;
|
|
161
174
|
}
|
|
162
175
|
export declare class InvokeFunctionExpr extends Expression {
|
|
163
176
|
fn: Expression;
|
|
164
177
|
args: Expression[];
|
|
165
178
|
pure: boolean;
|
|
166
179
|
constructor(fn: Expression, args: Expression[], type?: Type | null, sourceSpan?: ParseSourceSpan | null, pure?: boolean);
|
|
180
|
+
get receiver(): Expression;
|
|
167
181
|
isEquivalent(e: Expression): boolean;
|
|
168
182
|
isConstant(): boolean;
|
|
169
183
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
184
|
+
clone(): InvokeFunctionExpr;
|
|
170
185
|
}
|
|
171
186
|
export declare class InstantiateExpr extends Expression {
|
|
172
187
|
classExpr: Expression;
|
|
@@ -175,6 +190,7 @@ export declare class InstantiateExpr extends Expression {
|
|
|
175
190
|
isEquivalent(e: Expression): boolean;
|
|
176
191
|
isConstant(): boolean;
|
|
177
192
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
193
|
+
clone(): InstantiateExpr;
|
|
178
194
|
}
|
|
179
195
|
export declare class LiteralExpr extends Expression {
|
|
180
196
|
value: number | string | boolean | null | undefined;
|
|
@@ -182,17 +198,20 @@ export declare class LiteralExpr extends Expression {
|
|
|
182
198
|
isEquivalent(e: Expression): boolean;
|
|
183
199
|
isConstant(): boolean;
|
|
184
200
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
201
|
+
clone(): LiteralExpr;
|
|
185
202
|
}
|
|
186
203
|
export declare class TemplateLiteral {
|
|
187
204
|
elements: TemplateLiteralElement[];
|
|
188
205
|
expressions: Expression[];
|
|
189
206
|
constructor(elements: TemplateLiteralElement[], expressions: Expression[]);
|
|
207
|
+
clone(): TemplateLiteral;
|
|
190
208
|
}
|
|
191
209
|
export declare class TemplateLiteralElement {
|
|
192
210
|
text: string;
|
|
193
|
-
sourceSpan?: ParseSourceSpan;
|
|
211
|
+
sourceSpan?: ParseSourceSpan | undefined;
|
|
194
212
|
rawText: string;
|
|
195
|
-
constructor(text: string, sourceSpan?: ParseSourceSpan, rawText?: string);
|
|
213
|
+
constructor(text: string, sourceSpan?: ParseSourceSpan | undefined, rawText?: string);
|
|
214
|
+
clone(): TemplateLiteralElement;
|
|
196
215
|
}
|
|
197
216
|
export declare class LiteralPiece {
|
|
198
217
|
text: string;
|
|
@@ -215,12 +234,13 @@ export declare class ExternalExpr extends Expression {
|
|
|
215
234
|
isEquivalent(e: Expression): boolean;
|
|
216
235
|
isConstant(): boolean;
|
|
217
236
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
237
|
+
clone(): ExternalExpr;
|
|
218
238
|
}
|
|
219
239
|
export declare class ExternalReference {
|
|
220
240
|
moduleName: string | null;
|
|
221
241
|
name: string | null;
|
|
222
|
-
runtime?: any
|
|
223
|
-
constructor(moduleName: string | null, name: string | null, runtime?: any
|
|
242
|
+
runtime?: any;
|
|
243
|
+
constructor(moduleName: string | null, name: string | null, runtime?: any);
|
|
224
244
|
}
|
|
225
245
|
export declare class ConditionalExpr extends Expression {
|
|
226
246
|
condition: Expression;
|
|
@@ -230,6 +250,15 @@ export declare class ConditionalExpr extends Expression {
|
|
|
230
250
|
isEquivalent(e: Expression): boolean;
|
|
231
251
|
isConstant(): boolean;
|
|
232
252
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
253
|
+
clone(): ConditionalExpr;
|
|
254
|
+
}
|
|
255
|
+
export declare class DynamicImportExpr extends Expression {
|
|
256
|
+
url: string;
|
|
257
|
+
constructor(url: string, sourceSpan?: ParseSourceSpan | null);
|
|
258
|
+
isEquivalent(e: Expression): boolean;
|
|
259
|
+
isConstant(): boolean;
|
|
260
|
+
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
261
|
+
clone(): DynamicImportExpr;
|
|
233
262
|
}
|
|
234
263
|
export declare class NotExpr extends Expression {
|
|
235
264
|
condition: Expression;
|
|
@@ -237,22 +266,25 @@ export declare class NotExpr extends Expression {
|
|
|
237
266
|
isEquivalent(e: Expression): boolean;
|
|
238
267
|
isConstant(): boolean;
|
|
239
268
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
269
|
+
clone(): NotExpr;
|
|
240
270
|
}
|
|
241
271
|
export declare class FnParam {
|
|
242
272
|
name: string;
|
|
243
273
|
type: Type | null;
|
|
244
274
|
constructor(name: string, type?: Type | null);
|
|
245
275
|
isEquivalent(param: FnParam): boolean;
|
|
276
|
+
clone(): FnParam;
|
|
246
277
|
}
|
|
247
278
|
export declare class FunctionExpr extends Expression {
|
|
248
279
|
params: FnParam[];
|
|
249
280
|
statements: Statement[];
|
|
250
|
-
name?: string | null;
|
|
251
|
-
constructor(params: FnParam[], statements: Statement[], type?: Type | null, sourceSpan?: ParseSourceSpan | null, name?: string | null);
|
|
281
|
+
name?: string | null | undefined;
|
|
282
|
+
constructor(params: FnParam[], statements: Statement[], type?: Type | null, sourceSpan?: ParseSourceSpan | null, name?: string | null | undefined);
|
|
252
283
|
isEquivalent(e: Expression): boolean;
|
|
253
284
|
isConstant(): boolean;
|
|
254
285
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
255
286
|
toDeclStmt(name: string, modifiers?: StmtModifier): DeclareFunctionStmt;
|
|
287
|
+
clone(): FunctionExpr;
|
|
256
288
|
}
|
|
257
289
|
export declare class UnaryOperatorExpr extends Expression {
|
|
258
290
|
operator: UnaryOperator;
|
|
@@ -262,6 +294,7 @@ export declare class UnaryOperatorExpr extends Expression {
|
|
|
262
294
|
isEquivalent(e: Expression): boolean;
|
|
263
295
|
isConstant(): boolean;
|
|
264
296
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
297
|
+
clone(): UnaryOperatorExpr;
|
|
265
298
|
}
|
|
266
299
|
export declare class BinaryOperatorExpr extends Expression {
|
|
267
300
|
operator: BinaryOperator;
|
|
@@ -272,15 +305,18 @@ export declare class BinaryOperatorExpr extends Expression {
|
|
|
272
305
|
isEquivalent(e: Expression): boolean;
|
|
273
306
|
isConstant(): boolean;
|
|
274
307
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
308
|
+
clone(): BinaryOperatorExpr;
|
|
275
309
|
}
|
|
276
310
|
export declare class ReadPropExpr extends Expression {
|
|
277
311
|
receiver: Expression;
|
|
278
312
|
name: string;
|
|
279
313
|
constructor(receiver: Expression, name: string, type?: Type | null, sourceSpan?: ParseSourceSpan | null);
|
|
314
|
+
get index(): string;
|
|
280
315
|
isEquivalent(e: Expression): boolean;
|
|
281
316
|
isConstant(): boolean;
|
|
282
317
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
283
318
|
set(value: Expression): WritePropExpr;
|
|
319
|
+
clone(): ReadPropExpr;
|
|
284
320
|
}
|
|
285
321
|
export declare class ReadKeyExpr extends Expression {
|
|
286
322
|
receiver: Expression;
|
|
@@ -290,6 +326,7 @@ export declare class ReadKeyExpr extends Expression {
|
|
|
290
326
|
isConstant(): boolean;
|
|
291
327
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
292
328
|
set(value: Expression): WriteKeyExpr;
|
|
329
|
+
clone(): ReadKeyExpr;
|
|
293
330
|
}
|
|
294
331
|
export declare class LiteralArrayExpr extends Expression {
|
|
295
332
|
entries: Expression[];
|
|
@@ -297,6 +334,7 @@ export declare class LiteralArrayExpr extends Expression {
|
|
|
297
334
|
isConstant(): boolean;
|
|
298
335
|
isEquivalent(e: Expression): boolean;
|
|
299
336
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
337
|
+
clone(): LiteralArrayExpr;
|
|
300
338
|
}
|
|
301
339
|
export declare class LiteralMapEntry {
|
|
302
340
|
key: string;
|
|
@@ -304,6 +342,7 @@ export declare class LiteralMapEntry {
|
|
|
304
342
|
quoted: boolean;
|
|
305
343
|
constructor(key: string, value: Expression, quoted: boolean);
|
|
306
344
|
isEquivalent(e: LiteralMapEntry): boolean;
|
|
345
|
+
clone(): LiteralMapEntry;
|
|
307
346
|
}
|
|
308
347
|
export declare class LiteralMapExpr extends Expression {
|
|
309
348
|
entries: LiteralMapEntry[];
|
|
@@ -312,6 +351,7 @@ export declare class LiteralMapExpr extends Expression {
|
|
|
312
351
|
isEquivalent(e: Expression): boolean;
|
|
313
352
|
isConstant(): boolean;
|
|
314
353
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
354
|
+
clone(): LiteralMapExpr;
|
|
315
355
|
}
|
|
316
356
|
export declare class CommaExpr extends Expression {
|
|
317
357
|
parts: Expression[];
|
|
@@ -319,6 +359,7 @@ export declare class CommaExpr extends Expression {
|
|
|
319
359
|
isEquivalent(e: Expression): boolean;
|
|
320
360
|
isConstant(): boolean;
|
|
321
361
|
visitExpression(visitor: ExpressionVisitor, context: any): any;
|
|
362
|
+
clone(): CommaExpr;
|
|
322
363
|
}
|
|
323
364
|
export interface ExpressionVisitor {
|
|
324
365
|
visitReadVarExpr(ast: ReadVarExpr, context: any): any;
|
|
@@ -330,6 +371,7 @@ export interface ExpressionVisitor {
|
|
|
330
371
|
visitLiteralExpr(ast: LiteralExpr, context: any): any;
|
|
331
372
|
visitExternalExpr(ast: ExternalExpr, context: any): any;
|
|
332
373
|
visitConditionalExpr(ast: ConditionalExpr, context: any): any;
|
|
374
|
+
visitDynamicImportExpr(ast: DynamicImportExpr, context: any): any;
|
|
333
375
|
visitNotExpr(ast: NotExpr, context: any): any;
|
|
334
376
|
visitFunctionExpr(ast: FunctionExpr, context: any): any;
|
|
335
377
|
visitUnaryOperatorExpr(ast: UnaryOperatorExpr, context: any): any;
|
|
@@ -366,8 +408,8 @@ export declare class JSDocComment extends LeadingComment {
|
|
|
366
408
|
export declare abstract class Statement {
|
|
367
409
|
modifiers: StmtModifier;
|
|
368
410
|
sourceSpan: ParseSourceSpan | null;
|
|
369
|
-
leadingComments?: LeadingComment[];
|
|
370
|
-
constructor(modifiers?: StmtModifier, sourceSpan?: ParseSourceSpan | null, leadingComments?: LeadingComment[]);
|
|
411
|
+
leadingComments?: LeadingComment[] | undefined;
|
|
412
|
+
constructor(modifiers?: StmtModifier, sourceSpan?: ParseSourceSpan | null, leadingComments?: LeadingComment[] | undefined);
|
|
371
413
|
/**
|
|
372
414
|
* Calculates whether this statement produces the same value as the given statement.
|
|
373
415
|
* Note: We don't check Types nor ParseSourceSpans nor function arguments.
|
|
@@ -379,9 +421,9 @@ export declare abstract class Statement {
|
|
|
379
421
|
}
|
|
380
422
|
export declare class DeclareVarStmt extends Statement {
|
|
381
423
|
name: string;
|
|
382
|
-
value?: Expression;
|
|
424
|
+
value?: Expression | undefined;
|
|
383
425
|
type: Type | null;
|
|
384
|
-
constructor(name: string, value?: Expression, type?: Type | null, modifiers?: StmtModifier, sourceSpan?: ParseSourceSpan | null, leadingComments?: LeadingComment[]);
|
|
426
|
+
constructor(name: string, value?: Expression | undefined, type?: Type | null, modifiers?: StmtModifier, sourceSpan?: ParseSourceSpan | null, leadingComments?: LeadingComment[]);
|
|
385
427
|
isEquivalent(stmt: Statement): boolean;
|
|
386
428
|
visitStatement(visitor: StatementVisitor, context: any): any;
|
|
387
429
|
}
|
|
@@ -427,6 +469,7 @@ export declare function variable(name: string, type?: Type | null, sourceSpan?:
|
|
|
427
469
|
export declare function importExpr(id: ExternalReference, typeParams?: Type[] | null, sourceSpan?: ParseSourceSpan | null): ExternalExpr;
|
|
428
470
|
export declare function importType(id: ExternalReference, typeParams?: Type[] | null, typeModifiers?: TypeModifier): ExpressionType | null;
|
|
429
471
|
export declare function expressionType(expr: Expression, typeModifiers?: TypeModifier, typeParams?: Type[] | null): ExpressionType;
|
|
472
|
+
export declare function transplantedType<T>(type: T, typeModifiers?: TypeModifier): TransplantedType<T>;
|
|
430
473
|
export declare function typeofExpr(expr: Expression): TypeofExpr;
|
|
431
474
|
export declare function literalArr(values: Expression[], type?: Type | null, sourceSpan?: ParseSourceSpan | null): LiteralArrayExpr;
|
|
432
475
|
export declare function literalMap(values: {
|