brighterscript 1.0.0-alpha.28 → 1.0.0-alpha.29

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.
Files changed (68) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/AstValidationSegmenter.d.ts +11 -1
  3. package/dist/AstValidationSegmenter.js +72 -14
  4. package/dist/AstValidationSegmenter.js.map +1 -1
  5. package/dist/DependencyGraph.d.ts +4 -0
  6. package/dist/DependencyGraph.js +19 -0
  7. package/dist/DependencyGraph.js.map +1 -1
  8. package/dist/Program.d.ts +18 -14
  9. package/dist/Program.js +143 -82
  10. package/dist/Program.js.map +1 -1
  11. package/dist/Scope.d.ts +22 -2
  12. package/dist/Scope.js +162 -91
  13. package/dist/Scope.js.map +1 -1
  14. package/dist/Stopwatch.d.ts +4 -0
  15. package/dist/Stopwatch.js +7 -0
  16. package/dist/Stopwatch.js.map +1 -1
  17. package/dist/SymbolTable.d.ts +1 -0
  18. package/dist/SymbolTable.js +26 -0
  19. package/dist/SymbolTable.js.map +1 -1
  20. package/dist/astUtils/reflection.d.ts +3 -2
  21. package/dist/astUtils/reflection.js +8 -3
  22. package/dist/astUtils/reflection.js.map +1 -1
  23. package/dist/bscPlugin/BscPlugin.d.ts +2 -1
  24. package/dist/bscPlugin/BscPlugin.js +6 -0
  25. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  26. package/dist/bscPlugin/completions/CompletionsProcessor.js +5 -2
  27. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
  28. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js +1 -1
  29. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -1
  30. package/dist/bscPlugin/validation/BrsFileAfterValidatior.d.ts +7 -0
  31. package/dist/bscPlugin/validation/BrsFileAfterValidatior.js +18 -0
  32. package/dist/bscPlugin/validation/BrsFileAfterValidatior.js.map +1 -0
  33. package/dist/bscPlugin/validation/BrsFileValidator.d.ts +1 -0
  34. package/dist/bscPlugin/validation/BrsFileValidator.js +16 -4
  35. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  36. package/dist/bscPlugin/validation/ScopeValidator.d.ts +11 -2
  37. package/dist/bscPlugin/validation/ScopeValidator.js +114 -63
  38. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  39. package/dist/bscPlugin/validation/ScopeValidator.spec.js +2 -1
  40. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +1 -1
  41. package/dist/files/BrsFile.d.ts +11 -3
  42. package/dist/files/BrsFile.js +125 -13
  43. package/dist/files/BrsFile.js.map +1 -1
  44. package/dist/files/BrsFile.spec.js +216 -91
  45. package/dist/files/BrsFile.spec.js.map +1 -1
  46. package/dist/files/BscFile.d.ts +2 -1
  47. package/dist/files/BscFile.js.map +1 -1
  48. package/dist/files/XmlFile.d.ts +2 -2
  49. package/dist/files/XmlFile.js +1 -1
  50. package/dist/files/XmlFile.js.map +1 -1
  51. package/dist/interfaces.d.ts +2 -1
  52. package/dist/interfaces.js.map +1 -1
  53. package/dist/parser/Expression.d.ts +6 -0
  54. package/dist/parser/Expression.js +7 -1
  55. package/dist/parser/Expression.js.map +1 -1
  56. package/dist/parser/Parser.js +0 -3
  57. package/dist/parser/Parser.js.map +1 -1
  58. package/dist/parser/TranspileState.js +3 -2
  59. package/dist/parser/TranspileState.js.map +1 -1
  60. package/dist/types/ReferenceType.d.ts +8 -0
  61. package/dist/types/ReferenceType.js +45 -1
  62. package/dist/types/ReferenceType.js.map +1 -1
  63. package/dist/types/ReferenceType.spec.js +15 -0
  64. package/dist/types/ReferenceType.spec.js.map +1 -1
  65. package/dist/util.d.ts +5 -1
  66. package/dist/util.js +19 -3
  67. package/dist/util.js.map +1 -1
  68. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SymbolTable.js","sourceRoot":"","sources":["../src/SymbolTable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SymbolTable.js","sourceRoot":"","sources":["../src/SymbolTable.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,7 @@ import type { InterfaceType } from '../types/InterfaceType';
21
21
  import type { ObjectType } from '../types/ObjectType';
22
22
  import type { AstNode, Expression, Statement } from '../parser/AstNode';
23
23
  import type { AssetFile } from '../files/AssetFile';
24
- import type { TypePropertyReferenceType, ReferenceType, BinaryOperatorReferenceType } from '../types/ReferenceType';
24
+ import type { TypePropertyReferenceType, ReferenceType, BinaryOperatorReferenceType, ArrayDefaultTypeReferenceType } from '../types/ReferenceType';
25
25
  import type { EnumMemberType, EnumType } from '../types/EnumType';
26
26
  import type { UnionType } from '../types/UnionType';
27
27
  import type { UninitializedType } from '../types/UninitializedType';
@@ -135,6 +135,7 @@ export declare function isEnumType(value: any): value is EnumType;
135
135
  export declare function isEnumMemberType(value: any): value is EnumMemberType;
136
136
  export declare function isTypePropertyReferenceType(value: any): value is TypePropertyReferenceType;
137
137
  export declare function isBinaryOperatorReferenceType(value: any): value is BinaryOperatorReferenceType;
138
+ export declare function isArrayDefaultTypeReferenceType(value: any): value is ArrayDefaultTypeReferenceType;
138
139
  export declare function isNamespaceType(value: any): value is NamespaceType;
139
140
  export declare function isUnionType(value: any): value is UnionType;
140
141
  export declare function isUninitializedType(value: any): value is UninitializedType;
@@ -142,7 +143,7 @@ export declare function isArrayType(value: any): value is ArrayType;
142
143
  export declare function isAssociativeArrayType(value: any): value is AssociativeArrayType;
143
144
  export declare function isInheritableType(target: any): target is InheritableType;
144
145
  export declare function isCallableType(target: any): target is BaseFunctionType;
145
- export declare function isAnyReferenceType(target: any): target is ReferenceType | TypePropertyReferenceType | BinaryOperatorReferenceType;
146
+ export declare function isAnyReferenceType(target: any): target is ReferenceType | TypePropertyReferenceType | BinaryOperatorReferenceType | ArrayDefaultTypeReferenceType;
146
147
  export declare function isNumberType(value: any): value is IntegerType | LongIntegerType | FloatType | DoubleType;
147
148
  export declare function isPrimitiveType(value: any): value is IntegerType | LongIntegerType | FloatType | DoubleType | StringType | BooleanType;
148
149
  export declare function isNativeType(value: any): value is IntegerType | LongIntegerType | FloatType | DoubleType | StringType | BooleanType | VoidType | DynamicType | ObjectType | FunctionType;
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isIndexedGetExpression = exports.isXmlAttributeGetExpression = exports.isDottedGetExpression = exports.isFunctionExpression = exports.isCallExpression = exports.isBinaryExpression = exports.isExpression = exports.isThrowStatement = exports.isCatchStatement = exports.isTryCatchStatement = exports.isContinueStatement = exports.isConstStatement = exports.isEnumMemberStatement = exports.isEnumStatement = exports.isMemberMethod = exports.isMemberField = exports.isInterfaceFieldStatement = exports.isInterfaceMethodStatement = exports.isInterfaceStatement = exports.isFieldStatement = exports.isMethodStatement = exports.isImportStatement = exports.isClassStatement = exports.isNamespaceStatement = exports.isLibraryStatement = exports.isIndexedSetStatement = exports.isDottedSetStatement = exports.isWhileStatement = exports.isForEachStatement = exports.isForStatement = exports.isStopStatement = exports.isEndStatement = exports.isReturnStatement = exports.isLabelStatement = exports.isGotoStatement = exports.isPrintStatement = exports.isIncrementStatement = exports.isIfStatement = exports.isFunctionStatement = exports.isExitWhileStatement = exports.isExitForStatement = exports.isExpressionStatement = exports.isBlock = exports.isAssignmentStatement = exports.isBody = exports.isStatement = exports.isXmlScope = exports.isAssetFile = exports.isXmlFile = exports.isBrsFile = void 0;
4
- exports.isPrimitiveType = exports.isNumberType = exports.isAnyReferenceType = exports.isCallableType = exports.isInheritableType = exports.isAssociativeArrayType = exports.isArrayType = exports.isUninitializedType = exports.isUnionType = exports.isNamespaceType = exports.isBinaryOperatorReferenceType = exports.isTypePropertyReferenceType = exports.isEnumMemberType = exports.isEnumType = exports.isReferenceType = exports.isObjectType = exports.isInterfaceType = exports.isDynamicType = exports.isComponentType = exports.isClassType = exports.isVoidType = exports.isInvalidType = exports.isDoubleType = exports.isFloatType = exports.isLongIntegerType = exports.isIntegerType = exports.isBooleanType = exports.isFunctionType = exports.isTypedFunctionType = exports.isStringType = exports.isTypedArrayExpression = exports.isTypeCastExpression = exports.isTypeExpression = exports.isTypedefProvider = exports.isAnnotationExpression = exports.isFunctionParameterExpression = exports.isTaggedTemplateStringExpression = exports.isTemplateStringExpression = exports.isTemplateStringQuasiExpression = exports.isCallfuncExpression = exports.isNewExpression = exports.isSourceLiteralExpression = exports.isVariableExpression = exports.isUnaryExpression = exports.isAAMemberExpression = exports.isAALiteralExpression = exports.isArrayLiteralExpression = exports.isEscapedCharCodeLiteralExpression = exports.isLiteralExpression = exports.isGroupingExpression = void 0;
5
- exports.isLiteralDouble = exports.isLiteralFloat = exports.isLiteralLongInteger = exports.isLiteralInteger = exports.isLiteralNumber = exports.isLiteralString = exports.isLiteralBoolean = exports.isLiteralInvalid = exports.isNativeType = void 0;
4
+ exports.isNumberType = exports.isAnyReferenceType = exports.isCallableType = exports.isInheritableType = exports.isAssociativeArrayType = exports.isArrayType = exports.isUninitializedType = exports.isUnionType = exports.isNamespaceType = exports.isArrayDefaultTypeReferenceType = exports.isBinaryOperatorReferenceType = exports.isTypePropertyReferenceType = exports.isEnumMemberType = exports.isEnumType = exports.isReferenceType = exports.isObjectType = exports.isInterfaceType = exports.isDynamicType = exports.isComponentType = exports.isClassType = exports.isVoidType = exports.isInvalidType = exports.isDoubleType = exports.isFloatType = exports.isLongIntegerType = exports.isIntegerType = exports.isBooleanType = exports.isFunctionType = exports.isTypedFunctionType = exports.isStringType = exports.isTypedArrayExpression = exports.isTypeCastExpression = exports.isTypeExpression = exports.isTypedefProvider = exports.isAnnotationExpression = exports.isFunctionParameterExpression = exports.isTaggedTemplateStringExpression = exports.isTemplateStringExpression = exports.isTemplateStringQuasiExpression = exports.isCallfuncExpression = exports.isNewExpression = exports.isSourceLiteralExpression = exports.isVariableExpression = exports.isUnaryExpression = exports.isAAMemberExpression = exports.isAALiteralExpression = exports.isArrayLiteralExpression = exports.isEscapedCharCodeLiteralExpression = exports.isLiteralExpression = exports.isGroupingExpression = void 0;
5
+ exports.isLiteralDouble = exports.isLiteralFloat = exports.isLiteralLongInteger = exports.isLiteralInteger = exports.isLiteralNumber = exports.isLiteralString = exports.isLiteralBoolean = exports.isLiteralInvalid = exports.isNativeType = exports.isPrimitiveType = void 0;
6
6
  const visitors_1 = require("./visitors");
7
7
  const AstNode_1 = require("../parser/AstNode");
8
8
  const BscTypeKind_1 = require("../types/BscTypeKind");
@@ -391,6 +391,11 @@ function isBinaryOperatorReferenceType(value) {
391
391
  return ((_a = value === null || value === void 0 ? void 0 : value.__reflection) === null || _a === void 0 ? void 0 : _a.name) === 'BinaryOperatorReferenceType';
392
392
  }
393
393
  exports.isBinaryOperatorReferenceType = isBinaryOperatorReferenceType;
394
+ function isArrayDefaultTypeReferenceType(value) {
395
+ var _a;
396
+ return ((_a = value === null || value === void 0 ? void 0 : value.__reflection) === null || _a === void 0 ? void 0 : _a.name) === 'ArrayDefaultTypeReferenceType';
397
+ }
398
+ exports.isArrayDefaultTypeReferenceType = isArrayDefaultTypeReferenceType;
394
399
  function isNamespaceType(value) {
395
400
  return (value === null || value === void 0 ? void 0 : value.kind) === BscTypeKind_1.BscTypeKind.NamespaceType;
396
401
  }
@@ -422,7 +427,7 @@ exports.isCallableType = isCallableType;
422
427
  function isAnyReferenceType(target) {
423
428
  var _a;
424
429
  const name = (_a = target === null || target === void 0 ? void 0 : target.__reflection) === null || _a === void 0 ? void 0 : _a.name;
425
- return name === 'ReferenceType' || name === 'TypePropertyReferenceType' || name === 'BinaryOperatorReferenceType';
430
+ return name === 'ReferenceType' || name === 'TypePropertyReferenceType' || name === 'BinaryOperatorReferenceType' || name === 'ArrayDefaultTypeReferenceType';
426
431
  }
427
432
  exports.isAnyReferenceType = isAnyReferenceType;
428
433
  const numberTypeKinds = [
@@ -1 +1 @@
1
- {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../src/astUtils/reflection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../src/astUtils/reflection.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { CompilerPlugin, OnFileValidateEvent, OnGetCodeActionsEvent, ProvideHoverEvent, OnGetSemanticTokensEvent, OnScopeValidateEvent, ProvideCompletionsEvent, ProvideDefinitionEvent, ProvideReferencesEvent, AfterProgramValidateEvent, AfterSerializeFileEvent, BeforeBuildProgramEvent, OnPrepareFileEvent, ProvideFileEvent, WriteFileEvent } from '../interfaces';
1
+ import type { CompilerPlugin, OnFileValidateEvent, OnGetCodeActionsEvent, ProvideHoverEvent, OnGetSemanticTokensEvent, OnScopeValidateEvent, ProvideCompletionsEvent, ProvideDefinitionEvent, ProvideReferencesEvent, AfterProgramValidateEvent, AfterSerializeFileEvent, BeforeBuildProgramEvent, OnPrepareFileEvent, ProvideFileEvent, WriteFileEvent, AfterFileValidateEvent } from '../interfaces';
2
2
  export declare class BscPlugin implements CompilerPlugin {
3
3
  name: string;
4
4
  afterProvideFile(event: ProvideFileEvent): void;
@@ -9,6 +9,7 @@ export declare class BscPlugin implements CompilerPlugin {
9
9
  provideReferences(event: ProvideReferencesEvent): void;
10
10
  onGetSemanticTokens(event: OnGetSemanticTokensEvent): void;
11
11
  onFileValidate(event: OnFileValidateEvent): void;
12
+ afterFileValidate(event: AfterFileValidateEvent): void;
12
13
  private scopeValidator;
13
14
  onScopeValidate(event: OnScopeValidateEvent): void;
14
15
  afterProgramValidate(event: AfterProgramValidateEvent): void;
@@ -18,6 +18,7 @@ const XmlFilePreTranspileProcessor_1 = require("./transpile/XmlFilePreTranspileP
18
18
  const FileWriter_1 = require("./FileWriter");
19
19
  const FileProvider_1 = require("./fileProviders/FileProvider");
20
20
  const FileSerializer_1 = require("./serialize/FileSerializer");
21
+ const BrsFileAfterValidatior_1 = require("./validation/BrsFileAfterValidatior");
21
22
  class BscPlugin {
22
23
  constructor() {
23
24
  this.name = 'BscPlugin';
@@ -55,6 +56,11 @@ class BscPlugin {
55
56
  return new XmlFileValidator_1.XmlFileValidator(event).process();
56
57
  }
57
58
  }
59
+ afterFileValidate(event) {
60
+ if ((0, reflection_1.isBrsFile)(event.file)) {
61
+ return new BrsFileAfterValidatior_1.BrsFileAfterValidator(event).process();
62
+ }
63
+ }
58
64
  onScopeValidate(event) {
59
65
  this.scopeValidator.processEvent(event);
60
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BscPlugin.js","sourceRoot":"","sources":["../../src/bscPlugin/BscPlugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BscPlugin.js","sourceRoot":"","sources":["../../src/bscPlugin/BscPlugin.ts"],"names":[],"mappings":"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"}
@@ -258,7 +258,7 @@ class CompletionsProcessor {
258
258
  }
259
259
  let ignoreAllPropertyNames = false;
260
260
  // eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check
261
- switch (tokenBefore.kind) {
261
+ switch (tokenBefore === null || tokenBefore === void 0 ? void 0 : tokenBefore.kind) {
262
262
  case TokenKind_1.TokenKind.New:
263
263
  //we are after a new keyword; so we can only be namespaces that have a class or classes at this point
264
264
  currentSymbols = currentSymbols.filter(symbol => (0, reflection_1.isClassType)(symbol.type) || this.isNamespaceTypeWithMemberType(symbol.type, reflection_1.isClassType));
@@ -280,7 +280,10 @@ class CompletionsProcessor {
280
280
  }
281
281
  getScopeSymbolCompletions(file, scope, symbolTableLookupFlag) {
282
282
  // get all scope available symbols
283
- const scopeAvailableSymbols = scope.symbolTable.getOwnSymbols(symbolTableLookupFlag).filter(sym => {
283
+ let scopeSymbols = file.parseMode === Parser_1.ParseMode.BrighterScript
284
+ ? [...scope.symbolTable.getOwnSymbols(symbolTableLookupFlag), ...scope.allNamespaceTypeTable.getOwnSymbols(symbolTableLookupFlag)]
285
+ : scope.symbolTable.getOwnSymbols(symbolTableLookupFlag);
286
+ const scopeAvailableSymbols = scopeSymbols.filter(sym => {
284
287
  if (file.parseMode === Parser_1.ParseMode.BrighterScript) {
285
288
  // eslint-disable-next-line no-bitwise
286
289
  if (sym.flags & 32 /* SymbolTypeFlag.postTranspile */) {
@@ -1 +1 @@
1
- {"version":3,"file":"CompletionsProcessor.js","sourceRoot":"","sources":["../../../src/bscPlugin/completions/CompletionsProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CompletionsProcessor.js","sourceRoot":"","sources":["../../../src/bscPlugin/completions/CompletionsProcessor.ts"],"names":[],"mappings":"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"}
@@ -64,7 +64,7 @@ class BrsFilePreTranspileProcessor {
64
64
  if (containingNamespace && parts[0] !== containingNamespace.toLowerCase()) {
65
65
  parts.unshift(containingNamespace.toLowerCase());
66
66
  }
67
- result = scope === null || scope === void 0 ? void 0 : scope.getEnumMap().get(parts.join('.'));
67
+ result = scope === null || scope === void 0 ? void 0 : scope.getEnumFileLink(parts.join('.'));
68
68
  if (result) {
69
69
  const value = result.item.getMemberValue(memberName);
70
70
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"BrsFileTranspileProcessor.js","sourceRoot":"","sources":["../../../src/bscPlugin/transpile/BrsFileTranspileProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrsFileTranspileProcessor.js","sourceRoot":"","sources":["../../../src/bscPlugin/transpile/BrsFileTranspileProcessor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { BrsFile } from '../../files/BrsFile';
2
+ import type { AfterFileValidateEvent } from '../../interfaces';
3
+ export declare class BrsFileAfterValidator {
4
+ event: AfterFileValidateEvent<BrsFile>;
5
+ constructor(event: AfterFileValidateEvent<BrsFile>);
6
+ process(): void;
7
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BrsFileAfterValidator = void 0;
4
+ const reflection_1 = require("../../astUtils/reflection");
5
+ class BrsFileAfterValidator {
6
+ constructor(event) {
7
+ this.event = event;
8
+ }
9
+ process() {
10
+ if ((0, reflection_1.isBrsFile)(this.event.file)) {
11
+ const unlinkGlobalSymbolTable = this.event.file.parser.symbolTable.pushParentProvider(() => this.event.program.globalScope.symbolTable);
12
+ this.event.file.processSymbolInformation();
13
+ unlinkGlobalSymbolTable();
14
+ }
15
+ }
16
+ }
17
+ exports.BrsFileAfterValidator = BrsFileAfterValidator;
18
+ //# sourceMappingURL=BrsFileAfterValidatior.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrsFileAfterValidatior.js","sourceRoot":"","sources":["../../../src/bscPlugin/validation/BrsFileAfterValidatior.ts"],"names":[],"mappings":";;;AAAA,0DAAsD;AAMtD,MAAa,qBAAqB;IAC9B,YACW,KAAsC;QAAtC,UAAK,GAAL,KAAK,CAAiC;IAEjD,CAAC;IAEM,OAAO;QACV,IAAI,IAAA,sBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAC5B,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YACxI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC3C,uBAAuB,EAAE,CAAC;SAC7B;IAEL,CAAC;CACJ;AAdD,sDAcC"}
@@ -15,6 +15,7 @@ export declare class BrsFileValidator {
15
15
  * This is applicable to things like FunctionStatement, ClassStatement, NamespaceStatement, EnumStatement, InterfaceStatement
16
16
  */
17
17
  private validateDeclarationLocations;
18
+ private validateFunctionParameterCount;
18
19
  private validateEnumDeclaration;
19
20
  private validateEnumValueTypes;
20
21
  /**
@@ -5,7 +5,9 @@ const reflection_1 = require("../../astUtils/reflection");
5
5
  const visitors_1 = require("../../astUtils/visitors");
6
6
  const DiagnosticMessages_1 = require("../../DiagnosticMessages");
7
7
  const TokenKind_1 = require("../../lexer/TokenKind");
8
+ const Expression_1 = require("../../parser/Expression");
8
9
  const Parser_1 = require("../../parser/Parser");
10
+ const ReferenceType_1 = require("../../types/ReferenceType");
9
11
  const AssociativeArrayType_1 = require("../../types/AssociativeArrayType");
10
12
  const DynamicType_1 = require("../../types/DynamicType");
11
13
  const util_1 = require("../../util");
@@ -26,9 +28,6 @@ class BrsFileValidator {
26
28
  if (!this.event.file.hasTypedef) {
27
29
  this.validateImportStatements();
28
30
  }
29
- if ((0, reflection_1.isBrsFile)(this.event.file)) {
30
- this.event.file.processSymbolInformation();
31
- }
32
31
  unlinkGlobalSymbolTable();
33
32
  }
34
33
  /**
@@ -83,7 +82,10 @@ class BrsFileValidator {
83
82
  var _a;
84
83
  //register the for loop variable
85
84
  const loopTargetType = node.target.getType({ flags: 1 /* SymbolTypeFlag.runtime */ });
86
- const loopVarType = (0, reflection_1.isArrayType)(loopTargetType) ? loopTargetType.defaultType : DynamicType_1.DynamicType.instance;
85
+ let loopVarType = (0, reflection_1.isArrayType)(loopTargetType) ? loopTargetType.defaultType : DynamicType_1.DynamicType.instance;
86
+ if (!loopTargetType.isResolvable()) {
87
+ loopVarType = new ReferenceType_1.ArrayDefaultTypeReferenceType(loopTargetType);
88
+ }
87
89
  (_a = node.parent.getSymbolTable()) === null || _a === void 0 ? void 0 : _a.addSymbol(node.tokens.item.text, { definingNode: node }, loopVarType, 1 /* SymbolTypeFlag.runtime */);
88
90
  },
89
91
  NamespaceStatement: (node) => {
@@ -112,6 +114,7 @@ class BrsFileValidator {
112
114
  if (!node.symbolTable.hasSymbol('m', 1 /* SymbolTypeFlag.runtime */) || node.findAncestor(reflection_1.isAALiteralExpression)) {
113
115
  node.symbolTable.addSymbol('m', undefined, new AssociativeArrayType_1.AssociativeArrayType(), 1 /* SymbolTypeFlag.runtime */);
114
116
  }
117
+ this.validateFunctionParameterCount(node);
115
118
  },
116
119
  FunctionParameterExpression: (node) => {
117
120
  var _a, _b;
@@ -164,6 +167,15 @@ class BrsFileValidator {
164
167
  //the statement was defined in the wrong place. Flag it.
165
168
  this.event.file.addDiagnostic(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.keywordMustBeDeclaredAtNamespaceLevel(keyword)), { range: (_c = rangeFactory === null || rangeFactory === void 0 ? void 0 : rangeFactory()) !== null && _c !== void 0 ? _c : statement.range }));
166
169
  }
170
+ validateFunctionParameterCount(func) {
171
+ var _a, _b, _c, _d, _e;
172
+ if (func.parameters.length > Expression_1.CallExpression.MaximumArguments) {
173
+ //flag every parameter over the limit
174
+ for (let i = Expression_1.CallExpression.MaximumArguments; i < func.parameters.length; i++) {
175
+ this.event.file.addDiagnostic(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.tooManyCallableParameters(func.parameters.length, Expression_1.CallExpression.MaximumArguments)), { range: (_e = (_c = (_b = (_a = func.parameters[i]) === null || _a === void 0 ? void 0 : _a.tokens.name) === null || _b === void 0 ? void 0 : _b.range) !== null && _c !== void 0 ? _c : (_d = func.parameters[i]) === null || _d === void 0 ? void 0 : _d.range) !== null && _e !== void 0 ? _e : func.range }));
176
+ }
177
+ }
178
+ }
167
179
  validateEnumDeclaration(stmt) {
168
180
  var _a, _b, _c, _d, _e, _f;
169
181
  const members = stmt.getMembers();
@@ -1 +1 @@
1
- {"version":3,"file":"BrsFileValidator.js","sourceRoot":"","sources":["../../../src/bscPlugin/validation/BrsFileValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrsFileValidator.js","sourceRoot":"","sources":["../../../src/bscPlugin/validation/BrsFileValidator.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,11 @@
1
+ import type { Range } from 'vscode-languageserver';
1
2
  import type { BrsFile } from '../../files/BrsFile';
2
3
  import type { OnScopeValidateEvent } from '../../interfaces';
3
4
  import type { Token } from '../../lexer/Token';
4
- import { type AstNode } from '../../parser/AstNode';
5
+ import type { AstNode } from '../../parser/AstNode';
5
6
  import type { VariableExpression, DottedGetExpression } from '../../parser/Expression';
6
7
  import { CallExpression } from '../../parser/Expression';
8
+ import type { BscType } from '../../types/BscType';
7
9
  /**
8
10
  * A validator that handles all scope validations for a program validation cycle.
9
11
  * You should create ONE of these to handle all scope events between beforeProgramValidate and afterProgramValidate,
@@ -17,6 +19,9 @@ export declare class ScopeValidator {
17
19
  processEvent(event: OnScopeValidateEvent): void;
18
20
  reset(): void;
19
21
  private walkFiles;
22
+ private doesFileRequireChangedSymbol;
23
+ private doesFileProvideChangedSymbol;
24
+ private doesFileAssignChangedSymbol;
20
25
  private currentSegmentBeingValidated;
21
26
  private isTypeKnown;
22
27
  /**
@@ -92,7 +97,11 @@ export declare class ScopeValidator {
92
97
  private diagnosticDetectFunctionCollisions;
93
98
  private detectNameCollisions;
94
99
  validateNameCollision(file: BrsFile, node: AstNode, nameIdentifier: Token): void;
95
- private detectShadowedLocalVar;
100
+ detectShadowedLocalVar(file: BrsFile, varDeclaration: {
101
+ name: string;
102
+ type: BscType;
103
+ nameRange: Range;
104
+ }): void;
96
105
  private detectVariableNamespaceCollisions;
97
106
  private validateXmlInterface;
98
107
  /**