brighterscript 1.0.0-alpha.34 → 1.0.0-alpha.35

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 (107) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/AstValidationSegmenter.js +5 -0
  3. package/dist/AstValidationSegmenter.js.map +1 -1
  4. package/dist/CodeActionUtil.d.ts +3 -9
  5. package/dist/CodeActionUtil.js +4 -4
  6. package/dist/CodeActionUtil.js.map +1 -1
  7. package/dist/CommentFlagProcessor.js +1 -1
  8. package/dist/CommentFlagProcessor.js.map +1 -1
  9. package/dist/CrossScopeValidator.js +14 -22
  10. package/dist/CrossScopeValidator.js.map +1 -1
  11. package/dist/DiagnosticCollection.js +6 -6
  12. package/dist/DiagnosticCollection.js.map +1 -1
  13. package/dist/DiagnosticFilterer.js +19 -16
  14. package/dist/DiagnosticFilterer.js.map +1 -1
  15. package/dist/DiagnosticManager.d.ts +7 -2
  16. package/dist/DiagnosticManager.js +34 -15
  17. package/dist/DiagnosticManager.js.map +1 -1
  18. package/dist/DiagnosticMessages.d.ts +4 -4
  19. package/dist/DiagnosticMessages.js +2 -2
  20. package/dist/DiagnosticMessages.js.map +1 -1
  21. package/dist/LanguageServer.js +6 -7
  22. package/dist/LanguageServer.js.map +1 -1
  23. package/dist/Program.js +11 -7
  24. package/dist/Program.js.map +1 -1
  25. package/dist/ProgramBuilder.js +26 -29
  26. package/dist/ProgramBuilder.js.map +1 -1
  27. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +7 -4
  28. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  29. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +1 -2
  30. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  31. package/dist/bscPlugin/completions/CompletionsProcessor.js +3 -2
  32. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
  33. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +28 -0
  34. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +1 -1
  35. package/dist/bscPlugin/definition/DefinitionProvider.js +11 -12
  36. package/dist/bscPlugin/definition/DefinitionProvider.js.map +1 -1
  37. package/dist/bscPlugin/definition/DefinitionProvider.spec.js +3 -4
  38. package/dist/bscPlugin/definition/DefinitionProvider.spec.js.map +1 -1
  39. package/dist/bscPlugin/hover/HoverProcessor.spec.js +31 -0
  40. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -1
  41. package/dist/bscPlugin/validation/BrsFileValidator.js +23 -30
  42. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  43. package/dist/bscPlugin/validation/BrsFileValidator.spec.js +6 -6
  44. package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +1 -1
  45. package/dist/bscPlugin/validation/ProgramValidator.js +1 -1
  46. package/dist/bscPlugin/validation/ProgramValidator.js.map +1 -1
  47. package/dist/bscPlugin/validation/ScopeValidator.d.ts +0 -1
  48. package/dist/bscPlugin/validation/ScopeValidator.js +71 -111
  49. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  50. package/dist/bscPlugin/validation/ScopeValidator.spec.js +68 -2
  51. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +1 -1
  52. package/dist/bscPlugin/validation/XmlFileValidator.js +4 -5
  53. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -1
  54. package/dist/diagnosticUtils.js +11 -10
  55. package/dist/diagnosticUtils.js.map +1 -1
  56. package/dist/files/BrsFile.Class.spec.js +57 -3
  57. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  58. package/dist/files/BrsFile.js +10 -11
  59. package/dist/files/BrsFile.js.map +1 -1
  60. package/dist/files/BrsFile.spec.js +65 -23
  61. package/dist/files/BrsFile.spec.js.map +1 -1
  62. package/dist/files/XmlFile.js +1 -2
  63. package/dist/files/XmlFile.js.map +1 -1
  64. package/dist/files/XmlFile.spec.js +9 -16
  65. package/dist/files/XmlFile.spec.js.map +1 -1
  66. package/dist/files/tests/optionalChaning.spec.js +5 -5
  67. package/dist/files/tests/optionalChaning.spec.js.map +1 -1
  68. package/dist/interfaces.d.ts +47 -4
  69. package/dist/interfaces.js.map +1 -1
  70. package/dist/lexer/Lexer.d.ts +4 -5
  71. package/dist/lexer/Lexer.js +8 -16
  72. package/dist/lexer/Lexer.js.map +1 -1
  73. package/dist/parser/BrsTranspileState.d.ts +4 -0
  74. package/dist/parser/BrsTranspileState.js +4 -0
  75. package/dist/parser/BrsTranspileState.js.map +1 -1
  76. package/dist/parser/Expression.js +8 -1
  77. package/dist/parser/Expression.js.map +1 -1
  78. package/dist/parser/Expression.spec.d.ts +1 -0
  79. package/dist/parser/Expression.spec.js +40 -0
  80. package/dist/parser/Expression.spec.js.map +1 -0
  81. package/dist/parser/Parser.d.ts +2 -2
  82. package/dist/parser/Parser.js +77 -94
  83. package/dist/parser/Parser.js.map +1 -1
  84. package/dist/parser/Parser.spec.js +2 -2
  85. package/dist/parser/Parser.spec.js.map +1 -1
  86. package/dist/parser/SGParser.d.ts +5 -3
  87. package/dist/parser/SGParser.js +12 -10
  88. package/dist/parser/SGParser.js.map +1 -1
  89. package/dist/parser/SGParser.spec.js +6 -11
  90. package/dist/parser/SGParser.spec.js.map +1 -1
  91. package/dist/parser/Statement.js +6 -0
  92. package/dist/parser/Statement.js.map +1 -1
  93. package/dist/parser/TranspileState.d.ts +2 -1
  94. package/dist/parser/TranspileState.js +12 -8
  95. package/dist/parser/TranspileState.js.map +1 -1
  96. package/dist/parser/tests/expression/Call.spec.js +2 -2
  97. package/dist/parser/tests/expression/Call.spec.js.map +1 -1
  98. package/dist/parser/tests/statement/Enum.spec.js +14 -15
  99. package/dist/parser/tests/statement/Enum.spec.js.map +1 -1
  100. package/dist/parser/tests/statement/Misc.spec.js +1 -1
  101. package/dist/parser/tests/statement/Misc.spec.js.map +1 -1
  102. package/dist/util.d.ts +7 -5
  103. package/dist/util.js +26 -25
  104. package/dist/util.js.map +1 -1
  105. package/dist/validators/ClassValidator.js +11 -13
  106. package/dist/validators/ClassValidator.js.map +1 -1
  107. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -6,6 +6,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6
6
 
7
7
 
8
8
 
9
+ ## [1.0.0-alpha.35](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.34...v1.0.0-alpha.35) - 2024-07-31
10
+ ### Changed
11
+ - Remove `file` prop from `BsDiagnostic` ([#1248](https://github.com/rokucommunity/brighterscript/pull/1248))
12
+ ### Fixed
13
+ - Ensures conditional compiltion blocks have proper validation segments ([#1267](https://github.com/rokucommunity/brighterscript/pull/1267))
14
+ - Allow variables and parameters to shadow namespaces ([#1263](https://github.com/rokucommunity/brighterscript/pull/1263))
15
+ - Ensure methods leading comments are transpiled above instance function def ([#1257](https://github.com/rokucommunity/brighterscript/pull/1257))
16
+ - Make absolute import completions use original extension ([#1266](https://github.com/rokucommunity/brighterscript/pull/1266))
17
+
18
+
19
+
9
20
  ## [1.0.0-alpha.34](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.33...v1.0.0-alpha.34) - 2024-07-24
10
21
  ### Changed
11
22
  - Export `Location` so it can be used directly in plugins ([#1236](https://github.com/rokucommunity/brighterscript/pull/1236))
@@ -295,6 +306,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
295
306
  ## [0.66.0-alpha.0](https://github.com/rokucommunity/brighterscript/compare/v0.65.1...v0.66.0-alpha.0) - 2023-06-09
296
307
  ### Changed
297
308
  - all the type tracking stuff!
309
+ ## [0.67.5](https://github.com/rokucommunity/brighterscript/compare/v0.67.4...v0.67.5) - 2024-07-31
310
+ ### Fixed
311
+ - templatestring support for `annotation.getArguments()` ([#1264](https://github.com/rokucommunity/brighterscript/pull/1264))
312
+
313
+
314
+
315
+ ## [0.67.4](https://github.com/rokucommunity/brighterscript/compare/v0.67.3...v0.67.4) - 2024-07-24
316
+ ### Changed
317
+ - upgrade to [roku-deploy@3.12.1](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3121---2024-07-19). Notable changes since 3.12.0:
318
+ - Fix bug with absolute paths and getDestPath ([roku-deploy#171](https://github.com/rokucommunity/roku-deploy/pull/171))
319
+
320
+
321
+
298
322
  ## [0.67.3](https://github.com/rokucommunity/brighterscript/compare/v0.67.2...v0.67.3) - 2024-06-14
299
323
  ### Changed
300
324
  - Flag using devDependency in production code ([#1222](https://github.com/rokucommunity/brighterscript/pull/1222))
@@ -98,6 +98,11 @@ class AstValidationSegmenter {
98
98
  }
99
99
  checkSegmentWalk(segment) {
100
100
  if ((0, reflection_1.isNamespaceStatement)(segment) || (0, reflection_1.isBody)(segment)) {
101
+ // skip namespaces and namespace bodies - no symbols to verify in those
102
+ return;
103
+ }
104
+ if ((0, reflection_1.isConditionalCompileStatement)(segment) || (0, reflection_1.isBlock)(segment)) {
105
+ // skip conditional compile statements and blocks - no symbols to verify in those
101
106
  return;
102
107
  }
103
108
  this.currentNamespaceStatement = segment.findAncestor(reflection_1.isNamespaceStatement);
@@ -1 +1 @@
1
- {"version":3,"file":"AstValidationSegmenter.js","sourceRoot":"","sources":["../src/AstValidationSegmenter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AstValidationSegmenter.js","sourceRoot":"","sources":["../src/AstValidationSegmenter.ts"],"names":[],"mappings":";;;AACA,sDAA0P;AAC1P,kDAA+E;AAG/E,iCAA8B;AAK9B,iDAA8C;AAE9C,sCAAsC;AACzB,QAAA,qBAAqB,GAAG,mBAAQ,CAAC,eAAe,GAAG,mBAAQ,CAAC,gBAAgB,GAAG,mBAAQ,CAAC,qBAAqB,CAAC;AAgB3H,MAAa,sBAAsB;IAS/B,YAAmB,IAAa;QAAb,SAAI,GAAJ,IAAI,CAAS;QAPzB,sBAAiB,GAAG,IAAI,GAAG,EAAoB,CAAC;QAChD,0BAAqB,GAAG,IAAI,KAAK,EAAW,CAAC;QAC7C,6BAAwB,GAAG,IAAI,GAAG,EAAW,CAAC;QAC9C,8BAAyB,GAAG,IAAI,GAAG,EAAkC,CAAC;QACtE,4BAAuB,GAAG,IAAI,GAAG,EAAgC,CAAC;IAGrC,CAAC;IAErC,KAAK;QACD,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC;QACtC,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,CAAC;QACvC,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC;IACpC,CAAC;IAED,WAAW,CAAC,GAAY;QACpB,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YAClB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC,EAAE;YACC,QAAQ,EAAE,mBAAQ,CAAC,eAAe;SACrC,CAAC,CAAC;IACP,CAAC;IAED,4BAA4B,CAAC,OAAgB,EAAE,UAAqE,EAAE,oBAAkC;;QACpJ,IAAI,CAAC,UAAU,EAAE;YACb,OAAO,KAAK,CAAC;SAChB;QACD,IAAI,gBAAgB,GAAG,UAAwB,CAAC;QAChD,OAAO,IAAA,kCAAqB,EAAC,gBAAgB,CAAC,EAAE;YAC5C,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC;SAC3C;QACD,IAAI,IAAA,iCAAoB,EAAC,gBAAgB,CAAC,EAAE;YACxC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5E,IAAI,mBAAmB,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,IAAI,mBAAmB,KAAK,OAAO,CAAC,EAAE;gBAChG,OAAO,KAAK,CAAC;aAChB;SACJ;QACD,IAAI,IAAA,6BAAgB,EAAC,UAAU,CAAC,IAAI,IAAA,+BAAkB,EAAC,UAAU,CAAC,UAAU,CAAC,EAAE;YAC3E,OAAO,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,IAA0B,EAAE,oBAAoB,CAAC;gBACrH,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,KAA2B,EAAE,oBAAoB,CAAC,CAAC;SAC3H;QAED,MAAM,IAAI,GAAG,WAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,iCAAyB,CAAC,+BAAuB,CAAC;QACpG,IAAI,SAAS,GAAqB,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,EAAqB,CAAC;QACxC,MAAM,OAAO,GAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAErH,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,EAAE,CAAA,EAAE;YAC3B,IAAI,UAAiC,CAAC;YACtC,IAAI,CAAC,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA,EAAE;gBAC7D,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBAC9C,UAAU,GAAG,IAAI,GAAG,EAAoB,CAAC;oBACzC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;iBAC3D;qBAAM;oBACH,UAAU,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;iBAC5D;gBACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAE3C,IAAI,SAAS,CAAC,OAAO,IAAI,IAAA,6BAAgB,EAAC,SAAS,CAAC,YAAY,CAAC,EAAE;oBAC/D,yDAAyD;oBACzD,MAAM,cAAc,GAAG,EAAE,CAAC;oBAC1B,sCAAsC;oBACtC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,iCAAM,OAAO,KAAE,KAAK,EAAE,gEAAgD,EAAE,SAAS,EAAE,cAAc,IAAG,CAAC;oBACzI,SAAS,GAAG,CAAC,GAAG,cAAc,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC1D;gBACD,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,MAAA,IAAI,CAAC,yBAAyB,0CAAE,YAAY,EAAE,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,0CAAE,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,mCAAI,EAAE,CAAC;gBAC1H,MAAM,aAAa,GAAG,MAAA,WAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,aAAa,0CAAE,WAAW,EAAE,CAAC;gBACpF,MAAM,kBAAkB,GAAG,EAAc,CAAC;gBAC1C,IAAI,UAAU,GAAG,EAAE,CAAC;gBACpB,KAAK,MAAM,SAAS,IAAI,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBAC9C,UAAU,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBACzD,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACpC,IAAI,iBAAiB,EAAE;wBACnB,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,GAAG,GAAG,GAAG,UAAU,CAAC,CAAC;qBACjE;iBACJ;gBAED,UAAU,CAAC,GAAG,CAAC;oBACX,SAAS,EAAE,SAAS;oBACpB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK;oBAC9B,aAAa,EAAE,IAAI;oBACnB,oBAAoB,EAAE,MAAA,MAAA,IAAI,CAAC,yBAAyB,0CAAE,YAAY,EAAE,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;oBACtF,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,OAAO,EAAE,kBAAkB;iBAC9B,CAAC,CAAC;aACN;YACD,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAKD,gBAAgB,CAAC,OAAgB;QAC7B,IAAI,IAAA,iCAAoB,EAAC,OAAO,CAAC,IAAI,IAAA,mBAAM,EAAC,OAAO,CAAC,EAAE;YAClD,uEAAuE;YACvE,OAAO;SACV;QACD,IAAI,IAAA,0CAA6B,EAAC,OAAO,CAAC,IAAI,IAAA,oBAAO,EAAC,OAAO,CAAC,EAAE;YAC5D,iFAAiF;YACjF,OAAO;SACV;QACD,IAAI,CAAC,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,iCAAoB,CAAC,CAAC;QAE5E,IAAI,IAAA,6BAAgB,EAAC,OAAO,CAAC,EAAE;YAC3B,IAAI,OAAO,CAAC,eAAe,EAAE;gBACzB,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;gBACzD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;gBAC3D,IAAI,wBAAwB,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;gBACnH,IAAI,CAAC,wBAAwB,EAAE;oBAC3B,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;iBAC9D;aACJ;YACD,OAAO;SACV;QACD,IAAI,IAAA,iCAAoB,EAAC,OAAO,CAAC,EAAE;YAC/B,IAAI,OAAO,CAAC,mBAAmB,EAAE;gBAC7B,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;gBAC7D,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;gBAC/D,IAAI,wBAAwB,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;gBAC3H,IAAI,CAAC,wBAAwB,EAAE;oBAC3B,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;iBAClE;aACJ;YACD,OAAO;SACV;QAED,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC3C,IAAI,wBAAwB,GAAG,KAAK,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,0BAAe,EAAE,CAAC;QACtC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;QAClD,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/C,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,YAAY,CAAC,6BAAgB,CAAC,CAAC;QAEpE,OAAO,CAAC,IAAI,CAAC,IAAA,wBAAa,EAAC;YACvB,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC1B,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,qBAAS,CAAC,KAAK,EAAE;oBAC7C,2DAA2D;oBAC3D,eAAe,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC7D,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;iBACjE;YACL,CAAC;YACD,2BAA2B,EAAE,CAAC,IAAI,EAAE,EAAE;gBAClC,eAAe,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7D,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,eAAe,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7D,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE;oBAChE,MAAM,sBAAsB,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;oBACtG,wBAAwB,GAAG,sBAAsB,IAAI,wBAAwB,CAAC;iBACjF;gBACD,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,CAAC;YACD,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC1B,MAAM,sBAAsB,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;gBACtG,wBAAwB,GAAG,sBAAsB,IAAI,wBAAwB,CAAC;gBAC9E,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,CAAC;YACD,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE;gBACrB,MAAM,sBAAsB,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;gBACtG,wBAAwB,GAAG,sBAAsB,IAAI,wBAAwB,CAAC;gBAC9E,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,CAAC;SACJ,CAAC,EAAE;YACA,QAAQ,EAAE,6BAAqB;YAC/B,YAAY,EAAE,OAAO;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAC3D,IAAI,CAAC,wBAAwB,EAAE;YAC3B,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;SAC9C;QACD,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAE3C,CAAC;IAED,yBAAyB;QACrB,MAAM,2BAA2B,GAAc,EAAE,CAAC;QAClD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9C,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBACrC,SAAS;aACZ;YACD,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC7C;QACD,OAAO,2BAA2B,CAAC;IACvC,CAAC;IAED,6BAA6B,CAAC,cAAgD;QAC1E,MAAM,2BAA2B,GAAc,EAAE,CAAC;QAClD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9C,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBACrC,SAAS;aACZ;YACD,MAAM,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpE,IAAI,eAAe,EAAE;gBACjB,IAAI,WAAI,CAAC,2BAA2B,CAAC,CAAC,GAAG,eAAe,CAAC,EAAE,cAAc,CAAC,EAAE;oBACxE,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC1C,SAAS;iBACZ;aACJ;SACJ;QACD,OAAO,2BAA2B,CAAC;IACvC,CAAC;IAED,sBAAsB,CAAC,OAAgB;QACnC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,qBAAqB;QACjB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,EAAE;YACjD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SAC9C;IACL,CAAC;IAGD,sBAAsB;QAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvE,CAAC;IAGD,+BAA+B,CAAC,OAAgB,EAAE,cAAgD;QAC9F,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACtC,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,+BAA+B,CAAC,UAAkB,EAAE,IAAoB;QACpE,KAAK,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,IAAI,CAAC,yBAAyB,EAAE;YACjE,KAAK,IAAI,gBAAgB,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE;gBACjD,IAAI,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,EAAE;oBACnE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAC3C,MAAM;iBACT;aACJ;SACJ;IACL,CAAC;CACJ;AAzPD,wDAyPC"}
@@ -1,20 +1,14 @@
1
1
  import type { Diagnostic, Position, Range } from 'vscode-languageserver';
2
2
  import { CodeActionKind, CodeAction } from 'vscode-languageserver';
3
+ import type { BsDiagnostic } from './interfaces';
3
4
  export declare class CodeActionUtil {
4
5
  createCodeAction(obj: CodeActionShorthand): CodeAction;
5
- serializableDiagnostics(diagnostics: Diagnostic[] | undefined): {
6
- range: Range;
7
- severity: import("vscode-languageserver-types").DiagnosticSeverity;
8
- source: string;
9
- code: string | number;
10
- message: string;
11
- relatedInformation: import("vscode-languageserver-types").DiagnosticRelatedInformation[];
12
- }[];
6
+ serializableDiagnostics(diagnostics: BsDiagnostic[] | undefined): Diagnostic[];
13
7
  }
14
8
  export { CodeActionKind };
15
9
  export interface CodeActionShorthand {
16
10
  title: string;
17
- diagnostics?: Diagnostic[];
11
+ diagnostics?: BsDiagnostic[];
18
12
  kind?: CodeActionKind;
19
13
  isPreferred?: boolean;
20
14
  changes: Array<InsertChange | ReplaceChange>;
@@ -3,14 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.codeActionUtil = exports.CodeActionKind = exports.CodeActionUtil = void 0;
4
4
  const vscode_languageserver_1 = require("vscode-languageserver");
5
5
  Object.defineProperty(exports, "CodeActionKind", { enumerable: true, get: function () { return vscode_languageserver_1.CodeActionKind; } });
6
- const vscode_uri_1 = require("vscode-uri");
6
+ const util_1 = require("./util");
7
7
  class CodeActionUtil {
8
8
  createCodeAction(obj) {
9
9
  const edit = {
10
10
  changes: {}
11
11
  };
12
12
  for (const change of obj.changes) {
13
- const uri = vscode_uri_1.URI.file(change.filePath).toString();
13
+ const uri = util_1.default.pathToUri(change.filePath);
14
14
  //create the edit changes array for this uri
15
15
  if (!edit.changes[uri]) {
16
16
  edit.changes[uri] = [];
@@ -28,8 +28,8 @@ class CodeActionUtil {
28
28
  return action;
29
29
  }
30
30
  serializableDiagnostics(diagnostics) {
31
- return diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.map(({ range, severity, code, source, message, relatedInformation }) => ({
32
- range: range,
31
+ return diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.map(({ location, severity, code, source, message, relatedInformation }) => ({
32
+ range: location === null || location === void 0 ? void 0 : location.range,
33
33
  severity: severity,
34
34
  source: source,
35
35
  code: code,
@@ -1 +1 @@
1
- {"version":3,"file":"CodeActionUtil.js","sourceRoot":"","sources":["../src/CodeActionUtil.ts"],"names":[],"mappings":";;;AACA,iEAA6E;AA4CpE,+FA5CA,sCAAc,OA4CA;AA3CvB,2CAAiC;AAEjC,MAAa,cAAc;IAEhB,gBAAgB,CAAC,GAAwB;QAC5C,MAAM,IAAI,GAAG;YACT,OAAO,EAAE,EAAE;SACG,CAAC;QACnB,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE;YAC9B,MAAM,GAAG,GAAG,gBAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;YAEjD,4CAA4C;YAC5C,IAAI,CAAC,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,EAAE;gBACrB,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;aAC3B;YACD,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC1B,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CACnB,gCAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CACnD,CAAC;aACL;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;gBAClC,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CACnB,gCAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CACjD,CAAC;aACL;SACJ;QACD,MAAM,MAAM,GAAG,kCAAU,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5D,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;QACrC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,uBAAuB,CAAC,WAAqC;QAChE,OAAO,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YACzF,KAAK,EAAE,KAAK;YACZ,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,kBAAkB,EAAE,kBAAkB;SACzC,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AAvCD,wCAuCC;AA0BY,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"CodeActionUtil.js","sourceRoot":"","sources":["../src/CodeActionUtil.ts"],"names":[],"mappings":";;;AACA,iEAA6E;AA6CpE,+FA7CA,sCAAc,OA6CA;AA3CvB,iCAA0B;AAE1B,MAAa,cAAc;IAEhB,gBAAgB,CAAC,GAAwB;QAC5C,MAAM,IAAI,GAAG;YACT,OAAO,EAAE,EAAE;SACG,CAAC;QACnB,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE;YAC9B,MAAM,GAAG,GAAG,cAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAE5C,4CAA4C;YAC5C,IAAI,CAAC,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,EAAE;gBACrB,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;aAC3B;YACD,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC1B,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CACnB,gCAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CACnD,CAAC;aACL;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;gBAClC,IAAI,CAAC,OAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CACnB,gCAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CACjD,CAAC;aACL;SACJ;QACD,MAAM,MAAM,GAAG,kCAAU,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5D,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;QACrC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,uBAAuB,CAAC,WAAuC;QAClE,OAAO,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5F,KAAK,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK;YACtB,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,kBAAkB,EAAE,kBAAkB;SACzC,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AAvCD,wCAuCC;AA0BY,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
@@ -75,7 +75,7 @@ class CommentFlagProcessor {
75
75
  //add a warning for unknown codes
76
76
  }
77
77
  else {
78
- this.diagnostics.push(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.unknownDiagnosticCode(codeInt)), { file: this.file, range: codeToken.range }));
78
+ this.diagnostics.push(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.unknownDiagnosticCode(codeInt)), { location: util_1.util.createLocationFromFileRange(this.file, codeToken.range) }));
79
79
  }
80
80
  }
81
81
  if (codes.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"CommentFlagProcessor.js","sourceRoot":"","sources":["../src/CommentFlagProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommentFlagProcessor.js","sourceRoot":"","sources":["../src/CommentFlagProcessor.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,6 @@ const ReferenceType_1 = require("./types/ReferenceType");
8
8
  const BscTypeKind_1 = require("./types/BscTypeKind");
9
9
  const helpers_1 = require("./types/helpers");
10
10
  const Parser_1 = require("./parser/Parser");
11
- const vscode_uri_1 = require("vscode-uri");
12
11
  const globalCallables_1 = require("./globalCallables");
13
12
  const CrossScopeValidatorDiagnosticTag = 'CrossScopeValidator';
14
13
  class ProvidedNode {
@@ -451,7 +450,7 @@ class CrossScopeValidator {
451
450
  }
452
451
  }
453
452
  addDiagnosticsForScopes(scopes) {
454
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
453
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
455
454
  const addDuplicateSymbolDiagnostics = true;
456
455
  const missingSymbolInScope = new Map();
457
456
  this.providedTreeMap.clear();
@@ -512,9 +511,9 @@ class CrossScopeValidator {
512
511
  let thatNameRange = (_r = (_q = (_p = (_o = otherDupeNode === null || otherDupeNode === void 0 ? void 0 : otherDupeNode.tokens) === null || _o === void 0 ? void 0 : _o.name) === null || _p === void 0 ? void 0 : _p.location) === null || _q === void 0 ? void 0 : _q.range) !== null && _r !== void 0 ? _r : (_s = otherDupeNode === null || otherDupeNode === void 0 ? void 0 : otherDupeNode.location) === null || _s === void 0 ? void 0 : _s.range;
513
512
  const relatedInformation = thatNameRange ? [{
514
513
  message: `${thatNodeKindName} declared here`,
515
- location: util_1.util.createLocationFromRange(vscode_uri_1.URI.file((_t = otherDupe.file) === null || _t === void 0 ? void 0 : _t.srcPath).toString(), thatNameRange)
514
+ location: util_1.util.createLocationFromFileRange(otherDupe.file, thatNameRange)
516
515
  }] : undefined;
517
- this.program.diagnostics.register(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.nameCollision(thisNodeKindName, thatNodeKindName, thatName)), { file: dupe.file, range: thisNameRange, relatedInformation: relatedInformation }), {
516
+ this.program.diagnostics.register(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.nameCollision(thisNodeKindName, thatNodeKindName, thatName)), { location: util_1.util.createLocationFromFileRange(dupe.file, thisNameRange), relatedInformation: relatedInformation }), {
518
517
  scope: scope,
519
518
  tags: [CrossScopeValidatorDiagnosticTag]
520
519
  });
@@ -525,29 +524,22 @@ class CrossScopeValidator {
525
524
  }
526
525
  // build map of the symbols and scopes where the symbols are missing per file
527
526
  for (const missingSymbol of missingSymbols) {
528
- let missingSymbolPerFile = missingSymbolInScope.get(missingSymbol.file);
529
- if (!missingSymbolPerFile) {
530
- missingSymbolPerFile = new Map();
531
- missingSymbolInScope.set(missingSymbol.file, missingSymbolPerFile);
532
- }
533
- let scopesWithMissingSymbol = missingSymbolPerFile.get(missingSymbol);
527
+ let scopesWithMissingSymbol = missingSymbolInScope.get(missingSymbol);
534
528
  if (!scopesWithMissingSymbol) {
535
529
  scopesWithMissingSymbol = new Set();
536
- missingSymbolPerFile.set(missingSymbol, scopesWithMissingSymbol);
530
+ missingSymbolInScope.set(missingSymbol, scopesWithMissingSymbol);
537
531
  }
538
532
  scopesWithMissingSymbol.add(scope);
539
533
  }
540
534
  }
541
- // Check each file for missing symbols - if they are missing in SOME scopes, add diagnostic
542
- for (let [file, missingSymbolPerFile] of missingSymbolInScope.entries()) {
543
- for (const [symbol, scopeList] of missingSymbolPerFile) {
544
- const typeChainResult = util_1.util.processTypeChain(symbol.typeChain);
545
- for (const scope of scopeList) {
546
- this.program.diagnostics.register(Object.assign(Object.assign({}, this.getCannotFindDiagnostic(scope, typeChainResult)), { file: file, range: (_u = typeChainResult.location) === null || _u === void 0 ? void 0 : _u.range }), {
547
- scope: scope,
548
- tags: [CrossScopeValidatorDiagnosticTag]
549
- });
550
- }
535
+ // If symbols are missing in SOME scopes, add diagnostic
536
+ for (const [symbol, scopeList] of missingSymbolInScope.entries()) {
537
+ const typeChainResult = util_1.util.processTypeChain(symbol.typeChain);
538
+ for (const scope of scopeList) {
539
+ this.program.diagnostics.register(Object.assign(Object.assign({}, this.getCannotFindDiagnostic(scope, typeChainResult)), { location: typeChainResult.location }), {
540
+ scope: scope,
541
+ tags: [CrossScopeValidatorDiagnosticTag]
542
+ });
551
543
  }
552
544
  }
553
545
  for (const resolution of this.getIncompatibleSymbolResolutions()) {
@@ -556,7 +548,7 @@ class CrossScopeValidator {
556
548
  if (incompatibleScopes.size > 1) {
557
549
  const typeChainResult = util_1.util.processTypeChain(symbol.typeChain);
558
550
  const scopeListName = [...incompatibleScopes.values()].map(s => s.name).join(', ');
559
- this.program.diagnostics.register(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.incompatibleSymbolDefinition(typeChainResult.fullChainName, scopeListName)), { file: symbol.file, range: (_v = typeChainResult.location) === null || _v === void 0 ? void 0 : _v.range }), {
551
+ this.program.diagnostics.register(Object.assign(Object.assign({}, DiagnosticMessages_1.DiagnosticMessages.incompatibleSymbolDefinition(typeChainResult.fullChainName, scopeListName)), { location: typeChainResult.location }), {
560
552
  tags: [CrossScopeValidatorDiagnosticTag]
561
553
  });
562
554
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CrossScopeValidator.js","sourceRoot":"","sources":["../src/CrossScopeValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CrossScopeValidator.js","sourceRoot":"","sources":["../src/CrossScopeValidator.ts"],"names":[],"mappings":"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"}
@@ -21,16 +21,16 @@ class DiagnosticCollection {
21
21
  const keys = {};
22
22
  //build the full current set of diagnostics by file
23
23
  for (let diagnostic of diagnostics) {
24
- const srcPath = (_a = diagnostic.file.srcPath) !== null && _a !== void 0 ? _a : diagnostic.file.srcPath;
24
+ const fileUri = diagnostic.location.uri;
25
25
  //ensure the file entry exists
26
- if (!result[srcPath]) {
27
- result[srcPath] = [];
26
+ if (!result[fileUri]) {
27
+ result[fileUri] = [];
28
28
  }
29
- const diagnosticMap = result[srcPath];
29
+ const diagnosticMap = result[fileUri];
30
30
  //fall back to a default range if missing
31
- const range = (_b = diagnostic === null || diagnostic === void 0 ? void 0 : diagnostic.range) !== null && _b !== void 0 ? _b : util_1.util.createRange(0, 0, 0, 0);
31
+ const range = (_b = (_a = diagnostic === null || diagnostic === void 0 ? void 0 : diagnostic.location) === null || _a === void 0 ? void 0 : _a.range) !== null && _b !== void 0 ? _b : util_1.util.createRange(0, 0, 0, 0);
32
32
  diagnostic.key =
33
- srcPath.toLowerCase() + '-' +
33
+ fileUri.toLowerCase() + '-' +
34
34
  diagnostic.code + '-' +
35
35
  range.start.line + '-' +
36
36
  range.start.character + '-' +
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticCollection.js","sourceRoot":"","sources":["../src/DiagnosticCollection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DiagnosticCollection.js","sourceRoot":"","sources":["../src/DiagnosticCollection.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ exports.DiagnosticFilterer = void 0;
4
4
  const path = require("path");
5
5
  const minimatch = require("minimatch");
6
6
  const util_1 = require("./util");
7
+ const vscode_uri_1 = require("vscode-uri");
7
8
  class DiagnosticFilterer {
8
9
  constructor() {
9
10
  this.byFile = {};
@@ -47,57 +48,59 @@ class DiagnosticFilterer {
47
48
  * group the diagnostics by file
48
49
  */
49
50
  groupByFile(diagnostics) {
50
- var _a, _b, _c;
51
+ var _a, _b;
51
52
  this.byFile = {};
52
53
  for (let diagnostic of diagnostics) {
53
- const srcPath = (_b = (_a = diagnostic === null || diagnostic === void 0 ? void 0 : diagnostic.file) === null || _a === void 0 ? void 0 : _a.srcPath) !== null && _b !== void 0 ? _b : (_c = diagnostic === null || diagnostic === void 0 ? void 0 : diagnostic.file) === null || _c === void 0 ? void 0 : _c.srcPath;
54
+ const fileUri = (_b = (_a = diagnostic === null || diagnostic === void 0 ? void 0 : diagnostic.location) === null || _a === void 0 ? void 0 : _a.uri) !== null && _b !== void 0 ? _b : 'invalid-uri';
54
55
  //skip diagnostics that have issues
55
- if (!srcPath) {
56
+ if (!fileUri) {
56
57
  continue;
57
58
  }
58
- const lowerSrcPath = srcPath.toLowerCase();
59
+ const lowerFileUri = fileUri.toLowerCase();
59
60
  //make a new array for this file if one does not yet exist
60
- if (!this.byFile[lowerSrcPath]) {
61
- this.byFile[lowerSrcPath] = [];
61
+ if (!this.byFile[lowerFileUri]) {
62
+ this.byFile[lowerFileUri] = [];
62
63
  }
63
- this.byFile[lowerSrcPath].push({
64
+ this.byFile[lowerFileUri].push({
64
65
  diagnostic: diagnostic,
65
66
  isSuppressed: false
66
67
  });
67
68
  }
68
69
  }
69
70
  filterAllFiles(filter) {
70
- let matchedFilePaths;
71
+ let matchedFileUris;
71
72
  //if there's a src, match against all files
72
73
  if (filter.src) {
73
74
  //prepend rootDir to src if the filter is a relative path
74
75
  let src = (0, util_1.standardizePath)(path.isAbsolute(filter.src) ? filter.src : `${this.rootDir}/${filter.src}`);
75
- matchedFilePaths = minimatch.match(Object.keys(this.byFile), src, {
76
+ const byFileSrcs = Object.keys(this.byFile).map(uri => vscode_uri_1.URI.parse(uri).fsPath);
77
+ matchedFileUris = minimatch.match(byFileSrcs, src, {
76
78
  nocase: true
77
- });
79
+ }).map(src => util_1.default.pathToUri(src).toLowerCase());
78
80
  //there is no src; this applies to all files
79
81
  }
80
82
  else {
81
- matchedFilePaths = Object.keys(this.byFile);
83
+ matchedFileUris = Object.keys(this.byFile);
82
84
  }
83
85
  //filter each matched file
84
- for (let filePath of matchedFilePaths) {
85
- this.filterFile(filter, filePath);
86
+ for (let fileUri of matchedFileUris) {
87
+ this.filterFile(filter, fileUri);
86
88
  }
87
89
  }
88
- filterFile(filter, filePath) {
90
+ filterFile(filter, fileUri) {
89
91
  //if the filter is negative, we're turning diagnostics on
90
92
  //if the filter is not negative we're turning diagnostics off
91
93
  const isSuppressing = !filter.isNegative;
94
+ const lowerFileUri = fileUri.toLowerCase();
92
95
  //if there is no code, set isSuppressed on every diagnostic in this file
93
96
  if (!filter.codes) {
94
- this.byFile[filePath].forEach(diagnostic => {
97
+ this.byFile[lowerFileUri].forEach(diagnostic => {
95
98
  diagnostic.isSuppressed = isSuppressing;
96
99
  });
97
100
  //set isSuppressed for any diagnostics with matching codes
98
101
  }
99
102
  else {
100
- let fileDiagnostics = this.byFile[filePath];
103
+ let fileDiagnostics = this.byFile[lowerFileUri];
101
104
  for (const diagnostic of fileDiagnostics) {
102
105
  if (filter.codes.includes(diagnostic.diagnostic.code)) {
103
106
  diagnostic.isSuppressed = isSuppressing;
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticFilterer.js","sourceRoot":"","sources":["../src/DiagnosticFilterer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DiagnosticFilterer.js","sourceRoot":"","sources":["../src/DiagnosticFilterer.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import type { DiagnosticContext, BsDiagnostic, DiagnosticContextPair } from './interfaces';
2
2
  import type { AstNode } from './parser/AstNode';
3
3
  import type { Scope } from './Scope';
4
- import type { BscFile } from './files/BscFile';
5
4
  import type { FinalizedBsConfig } from './BsConfig';
6
5
  import type { Logger } from './logging';
6
+ import type { Program } from './Program';
7
7
  /**
8
8
  * Manages all diagnostics for a program.
9
9
  * Diagnostics can be added specific to a certain file/range and optionally scope or an AST node
@@ -20,6 +20,7 @@ export declare class DiagnosticManager {
20
20
  private diagnosticAdjuster;
21
21
  logger: Logger;
22
22
  options: FinalizedBsConfig;
23
+ program: Program;
23
24
  /**
24
25
  * Registers a diagnostic (or multiple diagnostics) for a program.
25
26
  * Diagnostics can optionally be associated with a context
@@ -33,6 +34,10 @@ export declare class DiagnosticManager {
33
34
  */
34
35
  getDiagnostics(): BsDiagnostic[];
35
36
  private getNonSuppresedDiagnostics;
37
+ /**
38
+ * Determine whether this diagnostic should be supressed or not, based on brs comment-flags
39
+ */
40
+ isDiagnosticSuppressed(diagnostic: BsDiagnostic): boolean;
36
41
  private filterDiagnostics;
37
42
  clear(): void;
38
43
  clearForFile(fileSrcPath: string): void;
@@ -50,7 +55,7 @@ export declare class DiagnosticManager {
50
55
  interface DiagnosticContextFilter {
51
56
  tag?: string;
52
57
  scope?: Scope;
53
- file?: BscFile;
58
+ fileUri?: string;
54
59
  segment?: AstNode;
55
60
  }
56
61
  export {};