brighterscript 0.57.2 → 0.59.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.
Files changed (124) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +16 -6
  3. package/bsconfig.schema.json +11 -0
  4. package/dist/BsConfig.d.ts +11 -0
  5. package/dist/DiagnosticMessages.d.ts +7 -2
  6. package/dist/DiagnosticMessages.js +7 -2
  7. package/dist/DiagnosticMessages.js.map +1 -1
  8. package/dist/Program.d.ts +12 -2
  9. package/dist/Program.js +69 -24
  10. package/dist/Program.js.map +1 -1
  11. package/dist/ProgramBuilder.js +1 -1
  12. package/dist/ProgramBuilder.js.map +1 -1
  13. package/dist/Scope.d.ts +6 -3
  14. package/dist/Scope.js +24 -17
  15. package/dist/Scope.js.map +1 -1
  16. package/dist/astUtils/AstEditor.d.ts +2 -3
  17. package/dist/astUtils/AstEditor.js.map +1 -1
  18. package/dist/astUtils/creators.d.ts +4 -4
  19. package/dist/astUtils/creators.js +6 -6
  20. package/dist/astUtils/creators.js.map +1 -1
  21. package/dist/astUtils/reflection.d.ts +67 -64
  22. package/dist/astUtils/reflection.js +10 -2
  23. package/dist/astUtils/reflection.js.map +1 -1
  24. package/dist/astUtils/reflection.spec.js +8 -3
  25. package/dist/astUtils/reflection.spec.js.map +1 -1
  26. package/dist/astUtils/visitors.d.ts +33 -31
  27. package/dist/astUtils/visitors.js.map +1 -1
  28. package/dist/astUtils/visitors.spec.js.map +1 -1
  29. package/dist/bscPlugin/BscPlugin.js +4 -0
  30. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  31. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +6 -6
  32. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  33. package/dist/bscPlugin/hover/HoverProcessor.spec.js +40 -34
  34. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -1
  35. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +2 -2
  36. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
  37. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +2 -2
  38. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -1
  39. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +4 -5
  40. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +1 -1
  41. package/dist/bscPlugin/validation/BrsFileValidator.d.ts +2 -0
  42. package/dist/bscPlugin/validation/BrsFileValidator.js +166 -12
  43. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  44. package/dist/bscPlugin/validation/ScopeValidator.d.ts +21 -19
  45. package/dist/bscPlugin/validation/ScopeValidator.js +164 -179
  46. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  47. package/dist/bscPlugin/validation/XmlFileValidator.d.ts +8 -0
  48. package/dist/bscPlugin/validation/XmlFileValidator.js +44 -0
  49. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -0
  50. package/dist/files/BrsFile.Class.spec.js +33 -35
  51. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  52. package/dist/files/BrsFile.d.ts +11 -5
  53. package/dist/files/BrsFile.js +15 -47
  54. package/dist/files/BrsFile.js.map +1 -1
  55. package/dist/files/BrsFile.spec.js +107 -79
  56. package/dist/files/BrsFile.spec.js.map +1 -1
  57. package/dist/files/XmlFile.d.ts +9 -4
  58. package/dist/files/XmlFile.js +6 -30
  59. package/dist/files/XmlFile.js.map +1 -1
  60. package/dist/files/XmlFile.spec.js +57 -90
  61. package/dist/files/XmlFile.spec.js.map +1 -1
  62. package/dist/files/tests/imports.spec.js +13 -15
  63. package/dist/files/tests/imports.spec.js.map +1 -1
  64. package/dist/files/tests/optionalChaning.spec.js +10 -12
  65. package/dist/files/tests/optionalChaning.spec.js.map +1 -1
  66. package/dist/index.d.ts +1 -0
  67. package/dist/index.js +1 -0
  68. package/dist/index.js.map +1 -1
  69. package/dist/interfaces.d.ts +2 -3
  70. package/dist/lexer/Lexer.spec.js +6 -0
  71. package/dist/lexer/Lexer.spec.js.map +1 -1
  72. package/dist/lexer/TokenKind.d.ts +1 -0
  73. package/dist/lexer/TokenKind.js +6 -2
  74. package/dist/lexer/TokenKind.js.map +1 -1
  75. package/dist/parser/AstNode.d.ts +65 -0
  76. package/dist/parser/AstNode.js +93 -0
  77. package/dist/parser/AstNode.js.map +1 -0
  78. package/dist/parser/AstNode.spec.d.ts +1 -0
  79. package/dist/parser/AstNode.spec.js +42 -0
  80. package/dist/parser/AstNode.spec.js.map +1 -0
  81. package/dist/parser/Expression.d.ts +6 -43
  82. package/dist/parser/Expression.js +53 -81
  83. package/dist/parser/Expression.js.map +1 -1
  84. package/dist/parser/Parser.d.ts +15 -12
  85. package/dist/parser/Parser.js +130 -117
  86. package/dist/parser/Parser.js.map +1 -1
  87. package/dist/parser/Parser.spec.d.ts +1 -1
  88. package/dist/parser/Parser.spec.js.map +1 -1
  89. package/dist/parser/SGParser.spec.js +2 -3
  90. package/dist/parser/SGParser.spec.js.map +1 -1
  91. package/dist/parser/Statement.d.ts +28 -44
  92. package/dist/parser/Statement.js +118 -104
  93. package/dist/parser/Statement.js.map +1 -1
  94. package/dist/parser/Statement.spec.js +16 -10
  95. package/dist/parser/Statement.spec.js.map +1 -1
  96. package/dist/parser/tests/expression/ArrayLiterals.spec.js +37 -0
  97. package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +1 -1
  98. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +41 -0
  99. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +1 -1
  100. package/dist/parser/tests/expression/Call.spec.js +109 -1
  101. package/dist/parser/tests/expression/Call.spec.js.map +1 -1
  102. package/dist/parser/tests/expression/Indexing.spec.js +49 -4
  103. package/dist/parser/tests/expression/Indexing.spec.js.map +1 -1
  104. package/dist/parser/tests/statement/ConstStatement.spec.js +7 -7
  105. package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -1
  106. package/dist/parser/tests/statement/Continue.spec.d.ts +1 -0
  107. package/dist/parser/tests/statement/Continue.spec.js +92 -0
  108. package/dist/parser/tests/statement/Continue.spec.js.map +1 -0
  109. package/dist/parser/tests/statement/Enum.spec.js +36 -9
  110. package/dist/parser/tests/statement/Enum.spec.js.map +1 -1
  111. package/dist/parser/tests/statement/For.spec.js +3 -4
  112. package/dist/parser/tests/statement/For.spec.js.map +1 -1
  113. package/dist/parser/tests/statement/ForEach.spec.js +4 -5
  114. package/dist/parser/tests/statement/ForEach.spec.js.map +1 -1
  115. package/dist/parser/tests/statement/InterfaceStatement.spec.js +4 -5
  116. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
  117. package/dist/parser/tests/statement/PrintStatement.spec.js +3 -4
  118. package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
  119. package/dist/util.d.ts +11 -5
  120. package/dist/util.js +57 -6
  121. package/dist/util.js.map +1 -1
  122. package/dist/validators/ClassValidator.js +22 -19
  123. package/dist/validators/ClassValidator.js.map +1 -1
  124. package/package.json +2 -2
@@ -42,14 +42,15 @@ class BsClassValidator {
42
42
  */
43
43
  verifyNewExpressions() {
44
44
  this.scope.enumerateBrsFiles((file) => {
45
- var _a, _b;
45
+ var _a;
46
46
  let newExpressions = file.parser.references.newExpressions;
47
47
  for (let newExpression of newExpressions) {
48
48
  let className = newExpression.className.getName(Parser_1.ParseMode.BrighterScript);
49
- let newableClass = this.getClassByName(className, (_a = newExpression.namespaceName) === null || _a === void 0 ? void 0 : _a.getName(Parser_1.ParseMode.BrighterScript));
49
+ const namespaceName = (_a = newExpression.findAncestor(reflection_1.isNamespaceStatement)) === null || _a === void 0 ? void 0 : _a.getName(Parser_1.ParseMode.BrighterScript);
50
+ let newableClass = this.getClassByName(className, namespaceName);
50
51
  if (!newableClass) {
51
52
  //try and find functions with this name.
52
- let fullName = util_1.default.getFullyQualifiedClassName(className, (_b = newExpression.namespaceName) === null || _b === void 0 ? void 0 : _b.getName(Parser_1.ParseMode.BrighterScript));
53
+ let fullName = util_1.default.getFullyQualifiedClassName(className, namespaceName);
53
54
  let callable = this.scope.getCallableByName(fullName);
54
55
  //if we found a callable with this name, the user used a "new" keyword in front of a function. add error
55
56
  if (callable) {
@@ -66,7 +67,8 @@ class BsClassValidator {
66
67
  for (const [className, classStatement] of this.classes) {
67
68
  //catch namespace class collision with global class
68
69
  let nonNamespaceClass = this.classes.get(util_1.default.getTextAfterFinalDot(className).toLowerCase());
69
- if (classStatement.namespaceName && nonNamespaceClass) {
70
+ const namespace = classStatement.findAncestor(reflection_1.isNamespaceStatement);
71
+ if (namespace && nonNamespaceClass) {
70
72
  this.diagnostics.push(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.namespacedClassCannotShareNamewithNonNamespacedClass(nonNamespaceClass.name.text)), { file: classStatement.file, range: classStatement.name.range, relatedInformation: [{
71
73
  location: util_1.default.createLocation(vscode_uri_1.URI.file(nonNamespaceClass.file.srcPath).toString(), nonNamespaceClass.name.range),
72
74
  message: 'Original class declared here'
@@ -134,28 +136,28 @@ class BsClassValidator {
134
136
  let methods = {};
135
137
  let fields = {};
136
138
  for (let statement of classStatement.body) {
137
- if ((0, reflection_1.isClassMethodStatement)(statement) || (0, reflection_1.isClassFieldStatement)(statement)) {
139
+ if ((0, reflection_1.isMethodStatement)(statement) || (0, reflection_1.isFieldStatement)(statement)) {
138
140
  let member = statement;
139
141
  let lowerMemberName = member.name.text.toLowerCase();
140
142
  //catch duplicate member names on same class
141
143
  if (methods[lowerMemberName] || fields[lowerMemberName]) {
142
144
  this.diagnostics.push(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.duplicateIdentifier(member.name.text)), { file: classStatement.file, range: member.name.range }));
143
145
  }
144
- let memberType = (0, reflection_1.isClassFieldStatement)(member) ? 'field' : 'method';
146
+ let memberType = (0, reflection_1.isFieldStatement)(member) ? 'field' : 'method';
145
147
  let ancestorAndMember = this.getAncestorMember(classStatement, lowerMemberName);
146
148
  if (ancestorAndMember) {
147
- let ancestorMemberKind = (0, reflection_1.isClassFieldStatement)(ancestorAndMember.member) ? 'field' : 'method';
149
+ let ancestorMemberKind = (0, reflection_1.isFieldStatement)(ancestorAndMember.member) ? 'field' : 'method';
148
150
  //mismatched member type (field/method in child, opposite in ancestor)
149
151
  if (memberType !== ancestorMemberKind) {
150
152
  this.diagnostics.push(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.classChildMemberDifferentMemberTypeThanAncestor(memberType, ancestorMemberKind, ancestorAndMember.classStatement.getName(Parser_1.ParseMode.BrighterScript))), { file: classStatement.file, range: member.range }));
151
153
  }
152
154
  //child field has same name as parent
153
- if ((0, reflection_1.isClassFieldStatement)(member)) {
155
+ if ((0, reflection_1.isFieldStatement)(member)) {
154
156
  let ancestorMemberType = new DynamicType_1.DynamicType();
155
- if ((0, reflection_1.isClassFieldStatement)(ancestorAndMember.member)) {
157
+ if ((0, reflection_1.isFieldStatement)(ancestorAndMember.member)) {
156
158
  ancestorMemberType = ancestorAndMember.member.getType();
157
159
  }
158
- else if ((0, reflection_1.isClassMethodStatement)(ancestorAndMember.member)) {
160
+ else if ((0, reflection_1.isMethodStatement)(ancestorAndMember.member)) {
159
161
  ancestorMemberType = ancestorAndMember.member.func.getFunctionType();
160
162
  }
161
163
  const childFieldType = member.getType();
@@ -167,7 +169,7 @@ class BsClassValidator {
167
169
  //child method missing the override keyword
168
170
  if (
169
171
  //is a method
170
- (0, reflection_1.isClassMethodStatement)(member) &&
172
+ (0, reflection_1.isMethodStatement)(member) &&
171
173
  //does not have an override keyword
172
174
  !member.override &&
173
175
  //is not the constructur function
@@ -177,15 +179,15 @@ class BsClassValidator {
177
179
  //child member has different visiblity
178
180
  if (
179
181
  //is a method
180
- (0, reflection_1.isClassMethodStatement)(member) &&
182
+ (0, reflection_1.isMethodStatement)(member) &&
181
183
  ((_b = (_a = member.accessModifier) === null || _a === void 0 ? void 0 : _a.kind) !== null && _b !== void 0 ? _b : TokenKind_1.TokenKind.Public) !== ((_d = (_c = ancestorAndMember.member.accessModifier) === null || _c === void 0 ? void 0 : _c.kind) !== null && _d !== void 0 ? _d : TokenKind_1.TokenKind.Public)) {
182
184
  this.diagnostics.push(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.mismatchedOverriddenMemberVisibility(classStatement.name.text, (_e = ancestorAndMember.member.name) === null || _e === void 0 ? void 0 : _e.text, ((_f = member.accessModifier) === null || _f === void 0 ? void 0 : _f.text) || 'public', ((_g = ancestorAndMember.member.accessModifier) === null || _g === void 0 ? void 0 : _g.text) || 'public', ancestorAndMember.classStatement.getName(Parser_1.ParseMode.BrighterScript))), { file: classStatement.file, range: member.range }));
183
185
  }
184
186
  }
185
- if ((0, reflection_1.isClassMethodStatement)(member)) {
187
+ if ((0, reflection_1.isMethodStatement)(member)) {
186
188
  methods[lowerMemberName] = member;
187
189
  }
188
- else if ((0, reflection_1.isClassFieldStatement)(member)) {
190
+ else if ((0, reflection_1.isFieldStatement)(member)) {
189
191
  fields[lowerMemberName] = member;
190
192
  }
191
193
  }
@@ -196,16 +198,16 @@ class BsClassValidator {
196
198
  * Check the types for fields, and validate they are valid types
197
199
  */
198
200
  validateFieldTypes() {
199
- var _a;
200
201
  for (const [, classStatement] of this.classes) {
201
202
  for (let statement of classStatement.body) {
202
- if ((0, reflection_1.isClassFieldStatement)(statement)) {
203
+ if ((0, reflection_1.isFieldStatement)(statement)) {
203
204
  let fieldType = statement.getType();
204
205
  if ((0, reflection_1.isCustomType)(fieldType)) {
205
206
  const fieldTypeName = fieldType.name;
206
207
  const lowerFieldTypeName = fieldTypeName === null || fieldTypeName === void 0 ? void 0 : fieldTypeName.toLowerCase();
207
208
  if (lowerFieldTypeName) {
208
- const currentNamespaceName = (_a = classStatement.namespaceName) === null || _a === void 0 ? void 0 : _a.getName(Parser_1.ParseMode.BrighterScript);
209
+ const namespace = classStatement.findAncestor(reflection_1.isNamespaceStatement);
210
+ const currentNamespaceName = namespace === null || namespace === void 0 ? void 0 : namespace.getName(Parser_1.ParseMode.BrighterScript);
209
211
  //check if this custom type is in our class map
210
212
  if (!this.getClassByName(lowerFieldTypeName, currentNamespaceName) && !this.scope.hasInterface(lowerFieldTypeName) && !this.scope.hasEnum(lowerFieldTypeName)) {
211
213
  this.diagnostics.push(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.cannotFindType(fieldTypeName)), { range: statement.type.range, file: classStatement.file }));
@@ -288,8 +290,9 @@ class BsClassValidator {
288
290
  //to the beginning of the parent class's name
289
291
  }
290
292
  else {
291
- if (classStatement.namespaceName) {
292
- absoluteName = `${classStatement.namespaceName.getName(Parser_1.ParseMode.BrighterScript)}.${parentClassName}`;
293
+ const namespace = classStatement.findAncestor(reflection_1.isNamespaceStatement);
294
+ if (namespace) {
295
+ absoluteName = `${namespace.getName(Parser_1.ParseMode.BrighterScript)}.${parentClassName}`;
293
296
  }
294
297
  else {
295
298
  absoluteName = parentClassName;
@@ -1 +1 @@
1
- {"version":3,"file":"ClassValidator.js","sourceRoot":"","sources":["../../src/validators/ClassValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ClassValidator.js","sourceRoot":"","sources":["../../src/validators/ClassValidator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brighterscript",
3
- "version": "0.57.2",
3
+ "version": "0.59.0",
4
4
  "description": "A superset of Roku's BrightScript language.",
5
5
  "scripts": {
6
6
  "preversion": "npm run build && npm run lint && npm run test",
@@ -142,7 +142,7 @@
142
142
  "p-settle": "^2.1.0",
143
143
  "parse-ms": "^2.1.0",
144
144
  "require-relative": "^0.8.7",
145
- "roku-deploy": "^3.8.1",
145
+ "roku-deploy": "^3.9.1",
146
146
  "serialize-error": "^7.0.1",
147
147
  "source-map": "^0.7.3",
148
148
  "vscode-languageserver": "7.0.0",