brighterscript 1.0.0-alpha.16 → 1.0.0-alpha.19
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/CHANGELOG.md +72 -1
- package/README.md +30 -9
- package/dist/BsConfig.d.ts +4 -0
- package/dist/DiagnosticMessages.d.ts +16 -1
- package/dist/DiagnosticMessages.js +15 -0
- package/dist/DiagnosticMessages.js.map +1 -1
- package/dist/Logger.js +5 -5
- package/dist/Logger.js.map +1 -1
- package/dist/Program.d.ts +2 -2
- package/dist/Program.js +3 -3
- package/dist/Program.js.map +1 -1
- package/dist/ProgramBuilder.d.ts +4 -0
- package/dist/ProgramBuilder.js +14 -4
- package/dist/ProgramBuilder.js.map +1 -1
- package/dist/Scope.d.ts +58 -8
- package/dist/Scope.js +141 -25
- package/dist/Scope.js.map +1 -1
- package/dist/XmlScope.js +1 -1
- package/dist/XmlScope.js.map +1 -1
- package/dist/astUtils/creators.d.ts +3 -3
- package/dist/astUtils/creators.js +8 -8
- package/dist/astUtils/creators.js.map +1 -1
- package/dist/astUtils/creators.spec.js +10 -0
- package/dist/astUtils/creators.spec.js.map +1 -1
- package/dist/astUtils/reflection.d.ts +8 -5
- package/dist/astUtils/reflection.js +18 -6
- package/dist/astUtils/reflection.js.map +1 -1
- package/dist/astUtils/reflection.spec.js +10 -0
- package/dist/astUtils/reflection.spec.js.map +1 -1
- package/dist/astUtils/visitors.d.ts +4 -1
- package/dist/astUtils/visitors.js.map +1 -1
- package/dist/astUtils/visitors.spec.js +2 -0
- package/dist/astUtils/visitors.spec.js.map +1 -1
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +2 -2
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js +7 -3
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js.map +1 -1
- package/dist/{types/FunctionType.spec.d.ts → bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.d.ts} +0 -0
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +32 -0
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +1 -0
- package/dist/cli.js +9 -2
- package/dist/cli.js.map +1 -1
- package/dist/examples/plugins/removePrint.js +12 -14
- package/dist/examples/plugins/removePrint.js.map +1 -1
- package/dist/files/BrsFile.Class.spec.js +3 -3
- package/dist/files/BrsFile.Class.spec.js.map +1 -1
- package/dist/files/BrsFile.d.ts +2 -2
- package/dist/files/BrsFile.js +89 -59
- package/dist/files/BrsFile.js.map +1 -1
- package/dist/files/BrsFile.spec.js +187 -67
- package/dist/files/BrsFile.spec.js.map +1 -1
- package/dist/globalCallables.js +79 -79
- package/dist/globalCallables.js.map +1 -1
- package/dist/interfaces.d.ts +43 -4
- package/dist/parser/Expression.d.ts +75 -8
- package/dist/parser/Expression.js +147 -22
- package/dist/parser/Expression.js.map +1 -1
- package/dist/parser/Parser.Class.spec.js +6 -6
- package/dist/parser/Parser.Class.spec.js.map +1 -1
- package/dist/parser/Parser.d.ts +3 -6
- package/dist/parser/Parser.js +145 -142
- package/dist/parser/Parser.js.map +1 -1
- package/dist/parser/Parser.spec.js +61 -6
- package/dist/parser/Parser.spec.js.map +1 -1
- package/dist/parser/SGTypes.d.ts +2 -2
- package/dist/parser/SGTypes.js +2 -2
- package/dist/parser/SGTypes.js.map +1 -1
- package/dist/parser/Statement.d.ts +63 -43
- package/dist/parser/Statement.js +135 -92
- package/dist/parser/Statement.js.map +1 -1
- package/dist/parser/tests/statement/InterfaceStatement.spec.js +181 -0
- package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
- package/dist/parser/tests/statement/TryCatch.spec.js +7 -5
- package/dist/parser/tests/statement/TryCatch.spec.js.map +1 -1
- package/dist/types/ArrayType.js +4 -1
- package/dist/types/ArrayType.js.map +1 -1
- package/dist/types/ArrayType.spec.js +3 -1
- package/dist/types/ArrayType.spec.js.map +1 -1
- package/dist/types/BooleanType.d.ts +4 -2
- package/dist/types/BooleanType.js +7 -2
- package/dist/types/BooleanType.js.map +1 -1
- package/dist/types/BooleanType.spec.js +3 -1
- package/dist/types/BooleanType.spec.js.map +1 -1
- package/dist/types/BscType.d.ts +1 -0
- package/dist/types/BscType.js +16 -1
- package/dist/types/BscType.js.map +1 -1
- package/dist/types/CustomType.js +10 -0
- package/dist/types/CustomType.js.map +1 -1
- package/dist/types/DoubleType.d.ts +2 -0
- package/dist/types/DoubleType.js +7 -2
- package/dist/types/DoubleType.js.map +1 -1
- package/dist/types/DoubleType.spec.js +3 -1
- package/dist/types/DoubleType.spec.js.map +1 -1
- package/dist/types/DynamicType.d.ts +2 -0
- package/dist/types/DynamicType.js +5 -1
- package/dist/types/DynamicType.js.map +1 -1
- package/dist/types/FloatType.d.ts +3 -1
- package/dist/types/FloatType.js +7 -2
- package/dist/types/FloatType.js.map +1 -1
- package/dist/types/FloatType.spec.js +2 -0
- package/dist/types/FloatType.spec.js.map +1 -1
- package/dist/types/FunctionType.d.ts +3 -22
- package/dist/types/FunctionType.js +8 -68
- package/dist/types/FunctionType.js.map +1 -1
- package/dist/types/IntegerType.d.ts +3 -1
- package/dist/types/IntegerType.js +7 -2
- package/dist/types/IntegerType.js.map +1 -1
- package/dist/types/IntegerType.spec.js +3 -1
- package/dist/types/IntegerType.spec.js.map +1 -1
- package/dist/types/InterfaceType.d.ts +13 -10
- package/dist/types/InterfaceType.js +33 -29
- package/dist/types/InterfaceType.js.map +1 -1
- package/dist/types/InterfaceType.spec.js +36 -16
- package/dist/types/InterfaceType.spec.js.map +1 -1
- package/dist/types/InvalidType.d.ts +4 -2
- package/dist/types/InvalidType.js +7 -2
- package/dist/types/InvalidType.js.map +1 -1
- package/dist/types/InvalidType.spec.js +2 -0
- package/dist/types/InvalidType.spec.js.map +1 -1
- package/dist/types/LazyType.js +4 -0
- package/dist/types/LazyType.js.map +1 -1
- package/dist/types/LongIntegerType.d.ts +3 -1
- package/dist/types/LongIntegerType.js +7 -2
- package/dist/types/LongIntegerType.js.map +1 -1
- package/dist/types/LongIntegerType.spec.js +2 -0
- package/dist/types/LongIntegerType.spec.js.map +1 -1
- package/dist/types/ObjectType.d.ts +2 -1
- package/dist/types/ObjectType.js +4 -2
- package/dist/types/ObjectType.js.map +1 -1
- package/dist/types/StringType.d.ts +4 -2
- package/dist/types/StringType.js +7 -2
- package/dist/types/StringType.js.map +1 -1
- package/dist/types/StringType.spec.js +2 -0
- package/dist/types/StringType.spec.js.map +1 -1
- package/dist/types/TypedFunctionType.d.ts +28 -0
- package/dist/types/TypedFunctionType.js +88 -0
- package/dist/types/TypedFunctionType.js.map +1 -0
- package/dist/types/TypedFunctionType.spec.d.ts +1 -0
- package/dist/types/TypedFunctionType.spec.js +37 -0
- package/dist/types/TypedFunctionType.spec.js.map +1 -0
- package/dist/types/UninitializedType.js.map +1 -1
- package/dist/types/VoidType.d.ts +4 -2
- package/dist/types/VoidType.js +5 -1
- package/dist/types/VoidType.js.map +1 -1
- package/dist/types/helpers.js +7 -2
- package/dist/types/helpers.js.map +1 -1
- package/dist/util.d.ts +6 -7
- package/dist/util.js +43 -55
- package/dist/util.js.map +1 -1
- package/dist/validators/ClassValidator.d.ts +14 -1
- package/dist/validators/ClassValidator.js +129 -82
- package/dist/validators/ClassValidator.js.map +1 -1
- package/package.json +3 -2
- package/dist/types/FunctionType.spec.js +0 -35
- package/dist/types/FunctionType.spec.js.map +0 -1
- package/dist/types/UniversalFunctionType.d.ts +0 -9
- package/dist/types/UniversalFunctionType.js +0 -25
- package/dist/types/UniversalFunctionType.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"globalCallables.js","sourceRoot":"","sources":["../src/globalCallables.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"globalCallables.js","sourceRoot":"","sources":["../src/globalCallables.ts"],"names":[],"mappings":"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"}
|
package/dist/interfaces.d.ts
CHANGED
|
@@ -2,17 +2,19 @@ import type { Range, Diagnostic, CodeAction, SemanticTokenTypes, SemanticTokenMo
|
|
|
2
2
|
import type { Scope } from './Scope';
|
|
3
3
|
import type { BrsFile } from './files/BrsFile';
|
|
4
4
|
import type { XmlFile } from './files/XmlFile';
|
|
5
|
-
import type {
|
|
5
|
+
import type { TypedFunctionType } from './types/TypedFunctionType';
|
|
6
6
|
import type { ParseMode } from './parser/Parser';
|
|
7
7
|
import type { Program } from './Program';
|
|
8
8
|
import type { ProgramBuilder } from './ProgramBuilder';
|
|
9
|
-
import type { FunctionStatement } from './parser/Statement';
|
|
9
|
+
import type { FunctionStatement, ClassStatement, InterfaceStatement } from './parser/Statement';
|
|
10
10
|
import type { Expression, FunctionExpression } from './parser/Expression';
|
|
11
11
|
import type { TranspileState } from './parser/TranspileState';
|
|
12
12
|
import type { SourceMapGenerator, SourceNode } from 'source-map';
|
|
13
|
-
import type { BscType } from './types/BscType';
|
|
13
|
+
import type { BscType, SymbolContainer } from './types/BscType';
|
|
14
14
|
import type { Token } from './lexer/Token';
|
|
15
15
|
import type { AstEditor } from './astUtils/AstEditor';
|
|
16
|
+
import type { CustomType } from './types/CustomType';
|
|
17
|
+
import type { InterfaceType } from './types/InterfaceType';
|
|
16
18
|
export interface BsDiagnostic extends Diagnostic {
|
|
17
19
|
file: BscFile;
|
|
18
20
|
/**
|
|
@@ -28,7 +30,7 @@ export interface Callable {
|
|
|
28
30
|
* Is the callable declared as "sub". If falsey, assumed declared as "function"
|
|
29
31
|
*/
|
|
30
32
|
isSub: boolean;
|
|
31
|
-
type:
|
|
33
|
+
type: TypedFunctionType;
|
|
32
34
|
/**
|
|
33
35
|
* A short description of the callable. Should be a short sentence.
|
|
34
36
|
*/
|
|
@@ -393,3 +395,40 @@ export interface FileLink<T> {
|
|
|
393
395
|
item: T;
|
|
394
396
|
file: BrsFile;
|
|
395
397
|
}
|
|
398
|
+
/**
|
|
399
|
+
* Common interface to support Statements which define entities that have a member table
|
|
400
|
+
* e.g. Class, Interface
|
|
401
|
+
*/
|
|
402
|
+
export interface MemberSymbolTableProvider extends SymbolContainer {
|
|
403
|
+
buildSymbolTable(parent?: InheritableStatement): void;
|
|
404
|
+
hasParent(): boolean;
|
|
405
|
+
getPossibleFullParentNames(): string[];
|
|
406
|
+
getName(parseMode: ParseMode): string;
|
|
407
|
+
getThisBscType(): BscType;
|
|
408
|
+
}
|
|
409
|
+
export declare type InheritableStatement = ClassStatement | InterfaceStatement;
|
|
410
|
+
export declare type InheritableType = CustomType | InterfaceType;
|
|
411
|
+
/**
|
|
412
|
+
* Options for the parser functionDeclaration() method
|
|
413
|
+
*/
|
|
414
|
+
export interface FunctionDeclarationParseOptions {
|
|
415
|
+
/**
|
|
416
|
+
* Function should have a name. Add a diagnostic if it is not there
|
|
417
|
+
* False for for anonymous functions
|
|
418
|
+
*/
|
|
419
|
+
hasName?: boolean;
|
|
420
|
+
/**
|
|
421
|
+
* Function should have a body. Add a diagnostic if it is not there
|
|
422
|
+
* False for for functions defined in Interfaces
|
|
423
|
+
*/
|
|
424
|
+
hasBody?: boolean;
|
|
425
|
+
/**
|
|
426
|
+
* Function should have an end token. Add a diagnostic if it is not there
|
|
427
|
+
* False for for functions defined in Interfaces
|
|
428
|
+
*/
|
|
429
|
+
hasEnd?: boolean;
|
|
430
|
+
/**
|
|
431
|
+
*This function is only callable as a member for a class or interface, etc.
|
|
432
|
+
*/
|
|
433
|
+
onlyCallableAsMember?: boolean;
|
|
434
|
+
}
|
|
@@ -6,9 +6,12 @@ import { ParseMode } from './Parser';
|
|
|
6
6
|
import type { WalkOptions, WalkVisitor } from '../astUtils/visitors';
|
|
7
7
|
import { InternalWalkMode } from '../astUtils/visitors';
|
|
8
8
|
import type { TranspileResult, TypedefProvider } from '../interfaces';
|
|
9
|
+
import { VoidType } from '../types/VoidType';
|
|
10
|
+
import { DynamicType } from '../types/DynamicType';
|
|
9
11
|
import type { BscType, SymbolContainer } from '../types/BscType';
|
|
10
12
|
import { SymbolTable } from '../SymbolTable';
|
|
11
|
-
import {
|
|
13
|
+
import { TypedFunctionType } from '../types/TypedFunctionType';
|
|
14
|
+
import { ArrayType } from '../types/ArrayType';
|
|
12
15
|
export declare type ExpressionVisitor = (expression: Expression, parent: Expression) => void;
|
|
13
16
|
/** A BrightScript expression */
|
|
14
17
|
export declare abstract class Expression {
|
|
@@ -59,14 +62,14 @@ export declare class FunctionExpression extends Expression implements TypedefPro
|
|
|
59
62
|
readonly leftParen: Token;
|
|
60
63
|
readonly rightParen: Token;
|
|
61
64
|
readonly asToken?: Token;
|
|
62
|
-
readonly
|
|
65
|
+
readonly returnType?: TypeExpression;
|
|
63
66
|
/**
|
|
64
67
|
* If this function is enclosed within another function, this will reference that parent function
|
|
65
68
|
*/
|
|
66
69
|
readonly parentFunction?: FunctionExpression;
|
|
67
70
|
readonly namespaceName?: NamespacedVariableNameExpression;
|
|
68
71
|
readonly parentSymbolTable?: SymbolTable;
|
|
69
|
-
constructor(parameters: FunctionParameterExpression[], body: Block, functionType: Token | null, end: Token, leftParen: Token, rightParen: Token, asToken?: Token,
|
|
72
|
+
constructor(parameters: FunctionParameterExpression[], body: Block, functionType: Token | null, end: Token, leftParen: Token, rightParen: Token, asToken?: Token, returnType?: TypeExpression,
|
|
70
73
|
/**
|
|
71
74
|
* If this function is enclosed within another function, this will reference that parent function
|
|
72
75
|
*/
|
|
@@ -79,10 +82,11 @@ export declare class FunctionExpression extends Expression implements TypedefPro
|
|
|
79
82
|
private _range;
|
|
80
83
|
readonly symbolTable: SymbolTable;
|
|
81
84
|
labelStatements: LabelStatement[];
|
|
85
|
+
private _returnType;
|
|
82
86
|
/**
|
|
83
87
|
* The type this function returns
|
|
84
88
|
*/
|
|
85
|
-
|
|
89
|
+
getReturnType(): BscType;
|
|
86
90
|
/**
|
|
87
91
|
* The list of function calls that are declared within this function scope. This excludes CallExpressions
|
|
88
92
|
* declared in child functions
|
|
@@ -96,21 +100,27 @@ export declare class FunctionExpression extends Expression implements TypedefPro
|
|
|
96
100
|
* A list of all child functions declared directly within this function
|
|
97
101
|
*/
|
|
98
102
|
childFunctionExpressions: FunctionExpression[];
|
|
103
|
+
/**
|
|
104
|
+
* The range of the function declaration, starting at the 'f' in function or 's' in sub (or the open paren if the keyword is missing),
|
|
105
|
+
* and ending with the last character in the returnTypeToken, or the 's' in 'as', or the rightParen
|
|
106
|
+
*/
|
|
107
|
+
get functionDeclarationRange(): Range;
|
|
99
108
|
transpile(state: BrsTranspileState, name?: Identifier, includeBody?: boolean): any[];
|
|
100
109
|
getTypedef(state: BrsTranspileState, name?: Identifier): any[];
|
|
101
110
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
102
|
-
getFunctionType():
|
|
111
|
+
getFunctionType(): TypedFunctionType;
|
|
103
112
|
}
|
|
104
113
|
export declare class FunctionParameterExpression extends Expression {
|
|
105
114
|
name: Identifier;
|
|
106
|
-
|
|
115
|
+
private typeInContext;
|
|
107
116
|
equalsToken?: Token;
|
|
108
117
|
defaultValue?: Expression;
|
|
109
118
|
asToken?: Token;
|
|
110
|
-
|
|
119
|
+
type?: TypeExpression;
|
|
111
120
|
readonly namespaceName?: NamespacedVariableNameExpression;
|
|
112
|
-
constructor(name: Identifier,
|
|
121
|
+
constructor(name: Identifier, typeInContext: BscType, equalsToken?: Token, defaultValue?: Expression, asToken?: Token, type?: TypeExpression, namespaceName?: NamespacedVariableNameExpression);
|
|
113
122
|
readonly range: Range;
|
|
123
|
+
getType(): BscType;
|
|
114
124
|
transpile(state: BrsTranspileState): any[];
|
|
115
125
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
116
126
|
get isOptional(): boolean;
|
|
@@ -365,6 +375,63 @@ export declare class RegexLiteralExpression extends Expression {
|
|
|
365
375
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
366
376
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
367
377
|
}
|
|
378
|
+
export declare class TypeExpression extends Expression {
|
|
379
|
+
private tokens;
|
|
380
|
+
namespaceName?: NamespacedVariableNameExpression;
|
|
381
|
+
constructor(tokens: {
|
|
382
|
+
type?: Token;
|
|
383
|
+
}, namespaceName?: NamespacedVariableNameExpression);
|
|
384
|
+
readonly range: Range;
|
|
385
|
+
private _type;
|
|
386
|
+
/**
|
|
387
|
+
* The this TypeExpression refers to
|
|
388
|
+
*/
|
|
389
|
+
get type(): BscType;
|
|
390
|
+
/**
|
|
391
|
+
* Derive a BscType from the type token
|
|
392
|
+
* Can deal with multiple brackets to make multidimensional arrays, eg. float[][]
|
|
393
|
+
* Defaults to `DynamicType`
|
|
394
|
+
*/
|
|
395
|
+
getType(parseMode?: ParseMode): DynamicType | BscType | import("../types/FloatType").FloatType | import("../types/IntegerType").IntegerType | import("../types/DoubleType").DoubleType | import("../types/LongIntegerType").LongIntegerType | import("../types/StringType").StringType | import("../types/BooleanType").BooleanType | import("../types/FunctionType").FunctionType | import("../types/InvalidType").InvalidType | VoidType;
|
|
396
|
+
/**
|
|
397
|
+
* Is this a valid, (eg. known) type?
|
|
398
|
+
*/
|
|
399
|
+
isValidType(parseMode?: ParseMode): boolean;
|
|
400
|
+
/**
|
|
401
|
+
* Gives a human readable string that says the type
|
|
402
|
+
* @returns text to display to show the type
|
|
403
|
+
*/
|
|
404
|
+
getText(): string;
|
|
405
|
+
transpile(state: BrsTranspileState): TranspileResult;
|
|
406
|
+
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
407
|
+
}
|
|
408
|
+
export declare class ArrayTypeExpression extends TypeExpression {
|
|
409
|
+
innerTypes: TypeExpression[];
|
|
410
|
+
private bracketTokens;
|
|
411
|
+
namespaceName?: NamespacedVariableNameExpression;
|
|
412
|
+
constructor(innerTypes: TypeExpression[], // this is an array so that in the future when we support union types
|
|
413
|
+
bracketTokens: {
|
|
414
|
+
leftBracket?: Token;
|
|
415
|
+
rightBracket?: Token;
|
|
416
|
+
}, namespaceName?: NamespacedVariableNameExpression);
|
|
417
|
+
readonly range: Range;
|
|
418
|
+
private get defaultTypeExpression();
|
|
419
|
+
/**
|
|
420
|
+
* Derive a BscType from the type token
|
|
421
|
+
* Returns an array type with the inner types based on the inner type expressions
|
|
422
|
+
*/
|
|
423
|
+
getType(parseMode?: ParseMode): ArrayType;
|
|
424
|
+
/**
|
|
425
|
+
* Is this a valid, (eg. known) type?
|
|
426
|
+
*/
|
|
427
|
+
isValidType(parseMode?: ParseMode): boolean;
|
|
428
|
+
/**
|
|
429
|
+
* Gives a human readable string that says the type
|
|
430
|
+
* @returns text to display to show the type
|
|
431
|
+
*/
|
|
432
|
+
getText(): string;
|
|
433
|
+
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
434
|
+
}
|
|
368
435
|
declare type ExpressionValue = string | number | boolean | Expression | ExpressionValue[] | {
|
|
369
436
|
[key: string]: ExpressionValue;
|
|
370
437
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RegexLiteralExpression = exports.NullCoalescingExpression = exports.TernaryExpression = exports.AnnotationExpression = exports.TaggedTemplateStringExpression = exports.TemplateStringExpression = exports.TemplateStringQuasiExpression = exports.CallfuncExpression = exports.NewExpression = exports.SourceLiteralExpression = exports.VariableExpression = exports.UnaryExpression = exports.AALiteralExpression = exports.AAMemberExpression = exports.ArrayLiteralExpression = exports.EscapedCharCodeLiteralExpression = exports.LiteralExpression = exports.GroupingExpression = exports.IndexedGetExpression = exports.XmlAttributeGetExpression = exports.DottedGetExpression = exports.NamespacedVariableNameExpression = exports.FunctionParameterExpression = exports.FunctionExpression = exports.CallExpression = exports.BinaryExpression = exports.Expression = void 0;
|
|
3
|
+
exports.ArrayTypeExpression = exports.TypeExpression = exports.RegexLiteralExpression = exports.NullCoalescingExpression = exports.TernaryExpression = exports.AnnotationExpression = exports.TaggedTemplateStringExpression = exports.TemplateStringExpression = exports.TemplateStringQuasiExpression = exports.CallfuncExpression = exports.NewExpression = exports.SourceLiteralExpression = exports.VariableExpression = exports.UnaryExpression = exports.AALiteralExpression = exports.AAMemberExpression = exports.ArrayLiteralExpression = exports.EscapedCharCodeLiteralExpression = exports.LiteralExpression = exports.GroupingExpression = exports.IndexedGetExpression = exports.XmlAttributeGetExpression = exports.DottedGetExpression = exports.NamespacedVariableNameExpression = exports.FunctionParameterExpression = exports.FunctionExpression = exports.CallExpression = exports.BinaryExpression = exports.Expression = void 0;
|
|
4
4
|
const TokenKind_1 = require("../lexer/TokenKind");
|
|
5
5
|
const util_1 = require("../util");
|
|
6
6
|
const Parser_1 = require("./Parser");
|
|
@@ -10,8 +10,9 @@ const reflection_1 = require("../astUtils/reflection");
|
|
|
10
10
|
const VoidType_1 = require("../types/VoidType");
|
|
11
11
|
const DynamicType_1 = require("../types/DynamicType");
|
|
12
12
|
const SymbolTable_1 = require("../SymbolTable");
|
|
13
|
-
const
|
|
13
|
+
const TypedFunctionType_1 = require("../types/TypedFunctionType");
|
|
14
14
|
const ObjectType_1 = require("../types/ObjectType");
|
|
15
|
+
const ArrayType_1 = require("../types/ArrayType");
|
|
15
16
|
/** A BrightScript expression */
|
|
16
17
|
class Expression {
|
|
17
18
|
constructor() {
|
|
@@ -94,7 +95,7 @@ class CallExpression extends Expression {
|
|
|
94
95
|
exports.CallExpression = CallExpression;
|
|
95
96
|
CallExpression.MaximumArguments = util_1.MAX_PARAM_COUNT;
|
|
96
97
|
class FunctionExpression extends Expression {
|
|
97
|
-
constructor(parameters, body, functionType, end, leftParen, rightParen, asToken,
|
|
98
|
+
constructor(parameters, body, functionType, end, leftParen, rightParen, asToken, returnType,
|
|
98
99
|
/**
|
|
99
100
|
* If this function is enclosed within another function, this will reference that parent function
|
|
100
101
|
*/
|
|
@@ -107,7 +108,7 @@ class FunctionExpression extends Expression {
|
|
|
107
108
|
this.leftParen = leftParen;
|
|
108
109
|
this.rightParen = rightParen;
|
|
109
110
|
this.asToken = asToken;
|
|
110
|
-
this.
|
|
111
|
+
this.returnType = returnType;
|
|
111
112
|
this.parentFunction = parentFunction;
|
|
112
113
|
this.namespaceName = namespaceName;
|
|
113
114
|
this.parentSymbolTable = parentSymbolTable;
|
|
@@ -121,18 +122,18 @@ class FunctionExpression extends Expression {
|
|
|
121
122
|
* A list of all child functions declared directly within this function
|
|
122
123
|
*/
|
|
123
124
|
this.childFunctionExpressions = [];
|
|
124
|
-
if (this.
|
|
125
|
-
this.
|
|
125
|
+
if (this.returnType) {
|
|
126
|
+
this._returnType = this.returnType.type;
|
|
126
127
|
}
|
|
127
128
|
else if (this.functionType.text.toLowerCase() === 'sub') {
|
|
128
|
-
this.
|
|
129
|
+
this._returnType = new VoidType_1.VoidType();
|
|
129
130
|
}
|
|
130
131
|
else {
|
|
131
|
-
this.
|
|
132
|
+
this._returnType = new DynamicType_1.DynamicType();
|
|
132
133
|
}
|
|
133
134
|
this.symbolTable = new SymbolTable_1.SymbolTable(parentSymbolTable);
|
|
134
135
|
for (let param of parameters) {
|
|
135
|
-
this.symbolTable.addSymbol(param.name.text, param.name.range, param.
|
|
136
|
+
this.symbolTable.addSymbol(param.name.text, param.name.range, param.getType());
|
|
136
137
|
}
|
|
137
138
|
}
|
|
138
139
|
get range() {
|
|
@@ -144,10 +145,24 @@ class FunctionExpression extends Expression {
|
|
|
144
145
|
cacheRange() {
|
|
145
146
|
var _a;
|
|
146
147
|
if (!this._range) {
|
|
147
|
-
this._range = util_1.default.createBoundingRange(this.functionType, this.leftParen, ...((_a = this.parameters) !== null && _a !== void 0 ? _a : []), this.rightParen, this.asToken, this.
|
|
148
|
+
this._range = util_1.default.createBoundingRange(this.functionType, this.leftParen, ...((_a = this.parameters) !== null && _a !== void 0 ? _a : []), this.rightParen, this.asToken, this.returnType, this.body, this.end);
|
|
148
149
|
}
|
|
149
150
|
return this._range;
|
|
150
151
|
}
|
|
152
|
+
/**
|
|
153
|
+
* The type this function returns
|
|
154
|
+
*/
|
|
155
|
+
getReturnType() {
|
|
156
|
+
return this._returnType;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* The range of the function declaration, starting at the 'f' in function or 's' in sub (or the open paren if the keyword is missing),
|
|
160
|
+
* and ending with the last character in the returnTypeToken, or the 's' in 'as', or the rightParen
|
|
161
|
+
*/
|
|
162
|
+
get functionDeclarationRange() {
|
|
163
|
+
var _a;
|
|
164
|
+
return util_1.default.createBoundingRange(this.functionType, this.leftParen, ...((_a = this.parameters) !== null && _a !== void 0 ? _a : []), this.rightParen, this.asToken, this.returnType);
|
|
165
|
+
}
|
|
151
166
|
transpile(state, name, includeBody = true) {
|
|
152
167
|
let results = [];
|
|
153
168
|
//'function'|'sub'
|
|
@@ -176,7 +191,7 @@ class FunctionExpression extends Expression {
|
|
|
176
191
|
//as
|
|
177
192
|
state.transpileToken(this.asToken), ' ',
|
|
178
193
|
//return type
|
|
179
|
-
state.sourceNode(this.
|
|
194
|
+
state.sourceNode(this.returnType, this.getReturnType().toTypeString(state.typeContext)));
|
|
180
195
|
}
|
|
181
196
|
if (includeBody) {
|
|
182
197
|
state.lineage.unshift(this);
|
|
@@ -184,9 +199,11 @@ class FunctionExpression extends Expression {
|
|
|
184
199
|
state.lineage.shift();
|
|
185
200
|
results.push(...body);
|
|
186
201
|
}
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
202
|
+
if (this.end) {
|
|
203
|
+
results.push('\n');
|
|
204
|
+
//'end sub'|'end function'
|
|
205
|
+
results.push(state.indent(), state.transpileToken(this.end));
|
|
206
|
+
}
|
|
190
207
|
return results;
|
|
191
208
|
}
|
|
192
209
|
getTypedef(state, name) {
|
|
@@ -199,31 +216,35 @@ class FunctionExpression extends Expression {
|
|
|
199
216
|
}
|
|
200
217
|
//This is the core of full-program walking...it allows us to step into sub functions
|
|
201
218
|
if (options.walkMode & visitors_1.InternalWalkMode.recurseChildFunctions) {
|
|
219
|
+
(0, visitors_1.walk)(this, 'returnType', visitor, options);
|
|
202
220
|
(0, visitors_1.walk)(this, 'body', visitor, options);
|
|
203
221
|
}
|
|
204
222
|
}
|
|
205
223
|
}
|
|
206
224
|
getFunctionType() {
|
|
207
|
-
let functionType = new
|
|
225
|
+
let functionType = new TypedFunctionType_1.TypedFunctionType(this.getReturnType());
|
|
208
226
|
functionType.isSub = this.functionType.text === 'sub';
|
|
209
227
|
for (let param of this.parameters) {
|
|
210
|
-
functionType.addParameter(param.name.text, param.
|
|
228
|
+
functionType.addParameter(param.name.text, param.getType(), param.isOptional);
|
|
211
229
|
}
|
|
212
230
|
return functionType;
|
|
213
231
|
}
|
|
214
232
|
}
|
|
215
233
|
exports.FunctionExpression = FunctionExpression;
|
|
216
234
|
class FunctionParameterExpression extends Expression {
|
|
217
|
-
constructor(name,
|
|
235
|
+
constructor(name, typeInContext, equalsToken, defaultValue, asToken, type, namespaceName) {
|
|
218
236
|
super();
|
|
219
237
|
this.name = name;
|
|
220
|
-
this.
|
|
238
|
+
this.typeInContext = typeInContext;
|
|
221
239
|
this.equalsToken = equalsToken;
|
|
222
240
|
this.defaultValue = defaultValue;
|
|
223
241
|
this.asToken = asToken;
|
|
224
|
-
this.
|
|
242
|
+
this.type = type;
|
|
225
243
|
this.namespaceName = namespaceName;
|
|
226
|
-
this.range = util_1.default.createBoundingRange(this.name, this.equalsToken, this.defaultValue, this.asToken, this.
|
|
244
|
+
this.range = util_1.default.createBoundingRange(this.name, this.equalsToken, this.defaultValue, this.asToken, this.type);
|
|
245
|
+
}
|
|
246
|
+
getType() {
|
|
247
|
+
return this.typeInContext;
|
|
227
248
|
}
|
|
228
249
|
transpile(state) {
|
|
229
250
|
let result = [
|
|
@@ -240,7 +261,7 @@ class FunctionParameterExpression extends Expression {
|
|
|
240
261
|
result.push(' ');
|
|
241
262
|
result.push(state.transpileToken(this.asToken));
|
|
242
263
|
result.push(' ');
|
|
243
|
-
result.push(state.sourceNode(this.
|
|
264
|
+
result.push(state.sourceNode(this.type, this.getType().toTypeString(state.typeContext)));
|
|
244
265
|
}
|
|
245
266
|
return result;
|
|
246
267
|
}
|
|
@@ -248,6 +269,7 @@ class FunctionParameterExpression extends Expression {
|
|
|
248
269
|
// eslint-disable-next-line no-bitwise
|
|
249
270
|
if (this.defaultValue && options.walkMode & visitors_1.InternalWalkMode.walkExpressions) {
|
|
250
271
|
(0, visitors_1.walk)(this, 'defaultValue', visitor, options);
|
|
272
|
+
(0, visitors_1.walk)(this, 'type', visitor, options);
|
|
251
273
|
}
|
|
252
274
|
}
|
|
253
275
|
get isOptional() {
|
|
@@ -543,7 +565,7 @@ class AALiteralExpression extends Expression {
|
|
|
543
565
|
}
|
|
544
566
|
buildSymbolTable() {
|
|
545
567
|
this.symbolTable.clear();
|
|
546
|
-
this.symbolTable.addSymbol('m', { start: this.open.range.start, end: this.close.range.end }, new ObjectType_1.ObjectType(this.memberTable));
|
|
568
|
+
this.symbolTable.addSymbol('m', { start: this.open.range.start, end: this.close.range.end }, new ObjectType_1.ObjectType('object', this.memberTable));
|
|
547
569
|
for (const element of this.elements) {
|
|
548
570
|
if ((0, reflection_1.isAAMemberExpression)(element)) {
|
|
549
571
|
this.memberTable.addSymbol(element.keyToken.text, element.keyToken.range, (0, Parser_1.getBscTypeFromExpression)(element.value, this.functionExpression));
|
|
@@ -1128,6 +1150,109 @@ class RegexLiteralExpression extends Expression {
|
|
|
1128
1150
|
}
|
|
1129
1151
|
}
|
|
1130
1152
|
exports.RegexLiteralExpression = RegexLiteralExpression;
|
|
1153
|
+
class TypeExpression extends Expression {
|
|
1154
|
+
constructor(tokens, namespaceName) {
|
|
1155
|
+
super();
|
|
1156
|
+
this.tokens = tokens;
|
|
1157
|
+
this.namespaceName = namespaceName;
|
|
1158
|
+
this.range = util_1.default.createBoundingRange(this.tokens.type);
|
|
1159
|
+
}
|
|
1160
|
+
/**
|
|
1161
|
+
* The this TypeExpression refers to
|
|
1162
|
+
*/
|
|
1163
|
+
get type() {
|
|
1164
|
+
if (this._type) {
|
|
1165
|
+
return this._type;
|
|
1166
|
+
}
|
|
1167
|
+
this._type = this.getType(Parser_1.ParseMode.BrighterScript);
|
|
1168
|
+
return this._type;
|
|
1169
|
+
}
|
|
1170
|
+
/**
|
|
1171
|
+
* Derive a BscType from the type token
|
|
1172
|
+
* Can deal with multiple brackets to make multidimensional arrays, eg. float[][]
|
|
1173
|
+
* Defaults to `DynamicType`
|
|
1174
|
+
*/
|
|
1175
|
+
getType(parseMode = Parser_1.ParseMode.BrighterScript) {
|
|
1176
|
+
let exprType = this.tokens.type
|
|
1177
|
+
? util_1.default.tokenToBscType(this.tokens.type, parseMode === Parser_1.ParseMode.BrighterScript, this.namespaceName)
|
|
1178
|
+
: new DynamicType_1.DynamicType();
|
|
1179
|
+
return exprType;
|
|
1180
|
+
}
|
|
1181
|
+
/**
|
|
1182
|
+
* Is this a valid, (eg. known) type?
|
|
1183
|
+
*/
|
|
1184
|
+
isValidType(parseMode = Parser_1.ParseMode.BrighterScript) {
|
|
1185
|
+
return !!util_1.default.tokenToBscType(this.tokens.type, parseMode === Parser_1.ParseMode.BrighterScript, this.namespaceName);
|
|
1186
|
+
}
|
|
1187
|
+
/**
|
|
1188
|
+
* Gives a human readable string that says the type
|
|
1189
|
+
* @returns text to display to show the type
|
|
1190
|
+
*/
|
|
1191
|
+
getText() {
|
|
1192
|
+
let result = this.tokens.type.text;
|
|
1193
|
+
return result;
|
|
1194
|
+
}
|
|
1195
|
+
transpile(state) {
|
|
1196
|
+
let result = [];
|
|
1197
|
+
//type declaration
|
|
1198
|
+
result.push(state.sourceNode({ range: this.range }, this.type.toTypeString(state.typeContext)));
|
|
1199
|
+
return result;
|
|
1200
|
+
}
|
|
1201
|
+
walk(visitor, options) {
|
|
1202
|
+
//nothing to walk
|
|
1203
|
+
}
|
|
1204
|
+
}
|
|
1205
|
+
exports.TypeExpression = TypeExpression;
|
|
1206
|
+
class ArrayTypeExpression extends TypeExpression {
|
|
1207
|
+
constructor(innerTypes, // this is an array so that in the future when we support union types
|
|
1208
|
+
bracketTokens, namespaceName) {
|
|
1209
|
+
super({}, namespaceName);
|
|
1210
|
+
this.innerTypes = innerTypes;
|
|
1211
|
+
this.bracketTokens = bracketTokens;
|
|
1212
|
+
this.namespaceName = namespaceName;
|
|
1213
|
+
this.range = util_1.default.createBoundingRange(this.bracketTokens.leftBracket, this.bracketTokens.rightBracket, ...this.innerTypes);
|
|
1214
|
+
}
|
|
1215
|
+
/*
|
|
1216
|
+
* TODO - Support union types
|
|
1217
|
+
*/
|
|
1218
|
+
get defaultTypeExpression() {
|
|
1219
|
+
return this.innerTypes[0];
|
|
1220
|
+
}
|
|
1221
|
+
/**
|
|
1222
|
+
* Derive a BscType from the type token
|
|
1223
|
+
* Returns an array type with the inner types based on the inner type expressions
|
|
1224
|
+
*/
|
|
1225
|
+
getType(parseMode = Parser_1.ParseMode.BrighterScript) {
|
|
1226
|
+
const innerBscTypes = this.innerTypes.map(inner => inner.getType(parseMode));
|
|
1227
|
+
return new ArrayType_1.ArrayType(...innerBscTypes);
|
|
1228
|
+
}
|
|
1229
|
+
/**
|
|
1230
|
+
* Is this a valid, (eg. known) type?
|
|
1231
|
+
*/
|
|
1232
|
+
isValidType(parseMode = Parser_1.ParseMode.BrighterScript) {
|
|
1233
|
+
if (parseMode === Parser_1.ParseMode.BrighterScript) {
|
|
1234
|
+
return this.innerTypes.reduce((validSoFar, innerType) => {
|
|
1235
|
+
return validSoFar && innerType.isValidType(parseMode);
|
|
1236
|
+
}, true);
|
|
1237
|
+
}
|
|
1238
|
+
return false;
|
|
1239
|
+
}
|
|
1240
|
+
/**
|
|
1241
|
+
* Gives a human readable string that says the type
|
|
1242
|
+
* @returns text to display to show the type
|
|
1243
|
+
*/
|
|
1244
|
+
getText() {
|
|
1245
|
+
return this.defaultTypeExpression.getText() + '[]';
|
|
1246
|
+
}
|
|
1247
|
+
walk(visitor, options) {
|
|
1248
|
+
if (options.walkMode & visitors_1.InternalWalkMode.walkExpressions) {
|
|
1249
|
+
for (let i = 0; i < this.innerTypes.length; i++) {
|
|
1250
|
+
(0, visitors_1.walk)(this.innerTypes, i, visitor, options, this);
|
|
1251
|
+
}
|
|
1252
|
+
}
|
|
1253
|
+
}
|
|
1254
|
+
}
|
|
1255
|
+
exports.ArrayTypeExpression = ArrayTypeExpression;
|
|
1131
1256
|
function expressionToValue(expr, strict) {
|
|
1132
1257
|
if (!expr) {
|
|
1133
1258
|
return null;
|