brighterscript 1.0.0-alpha.24 → 1.0.0-alpha.25
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 +493 -233
- package/README.md +45 -139
- package/bsconfig.schema.json +41 -0
- package/dist/ActionPipeline.d.ts +10 -0
- package/dist/ActionPipeline.js +40 -0
- package/dist/ActionPipeline.js.map +1 -0
- package/dist/AstValidationSegmenter.d.ts +25 -0
- package/dist/AstValidationSegmenter.js +152 -0
- package/dist/AstValidationSegmenter.js.map +1 -0
- package/dist/BsConfig.d.ts +39 -4
- package/dist/BusyStatusTracker.d.ts +31 -0
- package/dist/BusyStatusTracker.js +83 -0
- package/dist/BusyStatusTracker.js.map +1 -0
- package/dist/Cache.js +3 -3
- package/dist/Cache.js.map +1 -1
- package/dist/CacheVerifier.d.ts +7 -0
- package/dist/CacheVerifier.js +20 -0
- package/dist/CacheVerifier.js.map +1 -0
- package/dist/CodeActionUtil.d.ts +3 -3
- package/dist/CodeActionUtil.js.map +1 -1
- package/dist/CommentFlagProcessor.d.ts +3 -2
- package/dist/CommentFlagProcessor.js +5 -4
- package/dist/CommentFlagProcessor.js.map +1 -1
- package/dist/DependencyGraph.d.ts +3 -2
- package/dist/DependencyGraph.js +11 -10
- package/dist/DependencyGraph.js.map +1 -1
- package/dist/DiagnosticCollection.js +9 -5
- package/dist/DiagnosticCollection.js.map +1 -1
- package/dist/DiagnosticFilterer.d.ts +1 -0
- package/dist/DiagnosticFilterer.js +5 -3
- package/dist/DiagnosticFilterer.js.map +1 -1
- package/dist/DiagnosticMessages.d.ts +61 -13
- package/dist/DiagnosticMessages.js +116 -19
- package/dist/DiagnosticMessages.js.map +1 -1
- package/dist/DiagnosticSeverityAdjuster.d.ts +7 -0
- package/dist/DiagnosticSeverityAdjuster.js +41 -0
- package/dist/DiagnosticSeverityAdjuster.js.map +1 -0
- package/dist/FunctionScope.d.ts +28 -0
- package/dist/FunctionScope.js +52 -0
- package/dist/FunctionScope.js.map +1 -0
- package/dist/KeyedThrottler.d.ts +3 -3
- package/dist/KeyedThrottler.js +3 -3
- package/dist/KeyedThrottler.js.map +1 -1
- package/dist/LanguageServer.d.ts +23 -11
- package/dist/LanguageServer.js +150 -69
- package/dist/LanguageServer.js.map +1 -1
- package/dist/Logger.d.ts +3 -2
- package/dist/Logger.js +11 -3
- package/dist/Logger.js.map +1 -1
- package/dist/PluginInterface.d.ts +21 -3
- package/dist/PluginInterface.js +74 -6
- package/dist/PluginInterface.js.map +1 -1
- package/dist/Program.d.ts +158 -79
- package/dist/Program.js +831 -695
- package/dist/Program.js.map +1 -1
- package/dist/ProgramBuilder.d.ts +22 -12
- package/dist/ProgramBuilder.js +130 -103
- package/dist/ProgramBuilder.js.map +1 -1
- package/dist/Scope.d.ts +87 -133
- package/dist/Scope.js +450 -510
- package/dist/Scope.js.map +1 -1
- package/dist/Stopwatch.js +1 -1
- package/dist/Stopwatch.js.map +1 -1
- package/dist/SymbolTable.d.ts +89 -34
- package/dist/SymbolTable.js +239 -114
- package/dist/SymbolTable.js.map +1 -1
- package/dist/Throttler.d.ts +12 -0
- package/dist/Throttler.js +39 -0
- package/dist/Throttler.js.map +1 -1
- package/dist/Watcher.d.ts +0 -3
- package/dist/Watcher.js +0 -3
- package/dist/Watcher.js.map +1 -1
- package/dist/XmlScope.d.ts +4 -6
- package/dist/XmlScope.js +74 -69
- package/dist/XmlScope.js.map +1 -1
- package/dist/astUtils/CachedLookups.d.ts +48 -0
- package/dist/astUtils/CachedLookups.js +323 -0
- package/dist/astUtils/CachedLookups.js.map +1 -0
- package/dist/astUtils/{AstEditor.d.ts → Editor.d.ts} +9 -5
- package/dist/astUtils/{AstEditor.js → Editor.js} +10 -4
- package/dist/astUtils/Editor.js.map +1 -0
- package/dist/astUtils/{AstEditor.spec.js → Editor.spec.js} +68 -64
- package/dist/astUtils/Editor.spec.js.map +1 -0
- package/dist/astUtils/creators.d.ts +10 -10
- package/dist/astUtils/creators.js +26 -16
- package/dist/astUtils/creators.js.map +1 -1
- package/dist/astUtils/creators.spec.js +5 -5
- package/dist/astUtils/creators.spec.js.map +1 -1
- package/dist/astUtils/reflection.d.ts +132 -104
- package/dist/astUtils/reflection.js +220 -174
- package/dist/astUtils/reflection.js.map +1 -1
- package/dist/astUtils/reflection.spec.js +208 -126
- package/dist/astUtils/reflection.spec.js.map +1 -1
- package/dist/astUtils/stackedVisitor.spec.js +12 -12
- package/dist/astUtils/stackedVisitor.spec.js.map +1 -1
- package/dist/astUtils/visitors.d.ts +53 -35
- package/dist/astUtils/visitors.js +29 -3
- package/dist/astUtils/visitors.js.map +1 -1
- package/dist/astUtils/visitors.spec.js +178 -33
- package/dist/astUtils/visitors.spec.js.map +1 -1
- package/dist/astUtils/xml.d.ts +9 -9
- package/dist/astUtils/xml.js +9 -9
- package/dist/astUtils/xml.js.map +1 -1
- package/dist/bscPlugin/BscPlugin.d.ts +10 -2
- package/dist/bscPlugin/BscPlugin.js +33 -3
- package/dist/bscPlugin/BscPlugin.js.map +1 -1
- package/dist/bscPlugin/CallExpressionInfo.d.ts +36 -0
- package/dist/bscPlugin/CallExpressionInfo.js +131 -0
- package/dist/bscPlugin/CallExpressionInfo.js.map +1 -0
- package/dist/bscPlugin/FileWriter.d.ts +6 -0
- package/dist/bscPlugin/FileWriter.js +24 -0
- package/dist/bscPlugin/FileWriter.js.map +1 -0
- package/dist/bscPlugin/SignatureHelpUtil.d.ts +10 -0
- package/dist/bscPlugin/SignatureHelpUtil.js +135 -0
- package/dist/bscPlugin/SignatureHelpUtil.js.map +1 -0
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +14 -11
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +16 -16
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
- package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +52 -1
- package/dist/bscPlugin/completions/CompletionsProcessor.js +517 -26
- package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
- package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +1909 -0
- package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +1 -0
- package/dist/bscPlugin/fileProviders/FileProvider.d.ts +9 -0
- package/dist/bscPlugin/fileProviders/FileProvider.js +51 -0
- package/dist/bscPlugin/fileProviders/FileProvider.js.map +1 -0
- package/dist/bscPlugin/hover/HoverProcessor.d.ts +7 -7
- package/dist/bscPlugin/hover/HoverProcessor.js +123 -125
- package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -1
- package/dist/bscPlugin/hover/HoverProcessor.spec.js +371 -53
- package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -1
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +2 -1
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +85 -23
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +83 -6
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -1
- package/dist/bscPlugin/serialize/BslibInjector.spec.js +19 -0
- package/dist/bscPlugin/serialize/BslibInjector.spec.js.map +1 -0
- package/dist/bscPlugin/serialize/BslibManager.d.ts +9 -0
- package/dist/bscPlugin/serialize/BslibManager.js +40 -0
- package/dist/bscPlugin/serialize/BslibManager.js.map +1 -0
- package/dist/bscPlugin/serialize/FileSerializer.d.ts +9 -0
- package/dist/bscPlugin/serialize/FileSerializer.js +72 -0
- package/dist/bscPlugin/serialize/FileSerializer.js.map +1 -0
- package/dist/bscPlugin/transpile/{BrsFilePreTranspileProcessor.d.ts → BrsFileTranspileProcessor.d.ts} +4 -2
- package/dist/bscPlugin/transpile/{BrsFilePreTranspileProcessor.js → BrsFileTranspileProcessor.js} +33 -9
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -0
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.d.ts +1 -0
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +41 -0
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +1 -0
- package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.d.ts +12 -0
- package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js +99 -0
- package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js.map +1 -0
- package/dist/bscPlugin/validation/BrsFileValidator.d.ts +13 -5
- package/dist/bscPlugin/validation/BrsFileValidator.js +259 -49
- package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
- package/dist/bscPlugin/validation/BrsFileValidator.spec.js +230 -14
- package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +1 -1
- package/dist/bscPlugin/validation/ProgramValidator.d.ts +10 -0
- package/dist/bscPlugin/validation/ProgramValidator.js +32 -0
- package/dist/bscPlugin/validation/ProgramValidator.js.map +1 -0
- package/dist/bscPlugin/validation/ScopeValidator.d.ts +54 -27
- package/dist/bscPlugin/validation/ScopeValidator.js +483 -286
- package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
- package/dist/bscPlugin/validation/ScopeValidator.spec.d.ts +1 -0
- package/dist/bscPlugin/validation/ScopeValidator.spec.js +2454 -0
- package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +1 -0
- package/dist/bscPlugin/validation/XmlFileValidator.d.ts +8 -0
- package/dist/bscPlugin/validation/XmlFileValidator.js +44 -0
- package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -0
- package/dist/cli.js +104 -13
- package/dist/cli.js.map +1 -1
- package/dist/deferred.d.ts +3 -3
- package/dist/deferred.js.map +1 -1
- package/dist/diagnosticUtils.d.ts +8 -2
- package/dist/diagnosticUtils.js +47 -17
- package/dist/diagnosticUtils.js.map +1 -1
- package/dist/examples/plugins/removePrint.js +8 -10
- package/dist/examples/plugins/removePrint.js.map +1 -1
- package/dist/files/AssetFile.d.ts +26 -0
- package/dist/files/AssetFile.js +26 -0
- package/dist/files/AssetFile.js.map +1 -0
- package/dist/files/BrsFile.Class.spec.js +523 -493
- package/dist/files/BrsFile.Class.spec.js.map +1 -1
- package/dist/files/BrsFile.d.ts +112 -111
- package/dist/files/BrsFile.js +741 -1032
- package/dist/files/BrsFile.js.map +1 -1
- package/dist/files/BrsFile.spec.js +1728 -1232
- package/dist/files/BrsFile.spec.js.map +1 -1
- package/dist/files/BscFile.d.ts +104 -0
- package/dist/files/BscFile.js +16 -0
- package/dist/files/BscFile.js.map +1 -0
- package/dist/files/Factory.d.ts +25 -0
- package/dist/files/Factory.js +22 -0
- package/dist/files/Factory.js.map +1 -0
- package/dist/files/LazyFileData.d.ts +20 -0
- package/dist/files/LazyFileData.js +54 -0
- package/dist/files/LazyFileData.js.map +1 -0
- package/dist/files/LazyFileData.spec.d.ts +1 -0
- package/dist/files/LazyFileData.spec.js +27 -0
- package/dist/files/LazyFileData.spec.js.map +1 -0
- package/dist/files/XmlFile.d.ts +70 -32
- package/dist/files/XmlFile.js +106 -118
- package/dist/files/XmlFile.js.map +1 -1
- package/dist/files/XmlFile.spec.js +325 -262
- package/dist/files/XmlFile.spec.js.map +1 -1
- package/dist/files/tests/imports.spec.js +48 -40
- package/dist/files/tests/imports.spec.js.map +1 -1
- package/dist/files/tests/optionalChaning.spec.js +84 -24
- package/dist/files/tests/optionalChaning.spec.js.map +1 -1
- package/dist/globalCallables.js +16 -21
- package/dist/globalCallables.js.map +1 -1
- package/dist/index.d.ts +12 -1
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +389 -161
- package/dist/interfaces.js +27 -0
- package/dist/interfaces.js.map +1 -1
- package/dist/lexer/Character.spec.js +5 -5
- package/dist/lexer/Character.spec.js.map +1 -1
- package/dist/lexer/Lexer.d.ts +12 -5
- package/dist/lexer/Lexer.js +28 -13
- package/dist/lexer/Lexer.js.map +1 -1
- package/dist/lexer/Lexer.spec.js +181 -135
- package/dist/lexer/Lexer.spec.js.map +1 -1
- package/dist/lexer/Token.d.ts +9 -1
- package/dist/lexer/Token.js +9 -1
- package/dist/lexer/Token.js.map +1 -1
- package/dist/lexer/TokenKind.d.ts +8 -0
- package/dist/lexer/TokenKind.js +24 -4
- package/dist/lexer/TokenKind.js.map +1 -1
- package/dist/parser/AstNode.d.ts +162 -0
- package/dist/parser/AstNode.js +225 -0
- package/dist/parser/AstNode.js.map +1 -0
- package/dist/parser/AstNode.spec.d.ts +1 -0
- package/dist/parser/AstNode.spec.js +165 -0
- package/dist/parser/AstNode.spec.js.map +1 -0
- package/dist/parser/BrsTranspileState.d.ts +4 -7
- package/dist/parser/BrsTranspileState.js +4 -12
- package/dist/parser/BrsTranspileState.js.map +1 -1
- package/dist/parser/Expression.d.ts +126 -176
- package/dist/parser/Expression.js +523 -405
- package/dist/parser/Expression.js.map +1 -1
- package/dist/parser/Parser.Class.spec.js +151 -145
- package/dist/parser/Parser.Class.spec.js.map +1 -1
- package/dist/parser/Parser.d.ts +43 -201
- package/dist/parser/Parser.js +446 -962
- package/dist/parser/Parser.js.map +1 -1
- package/dist/parser/Parser.spec.d.ts +3 -1
- package/dist/parser/Parser.spec.js +1002 -846
- package/dist/parser/Parser.spec.js.map +1 -1
- package/dist/parser/SGParser.d.ts +9 -8
- package/dist/parser/SGParser.js +10 -8
- package/dist/parser/SGParser.js.map +1 -1
- package/dist/parser/SGParser.spec.js +27 -38
- package/dist/parser/SGParser.spec.js.map +1 -1
- package/dist/parser/SGTypes.d.ts +98 -35
- package/dist/parser/SGTypes.js +169 -99
- package/dist/parser/SGTypes.js.map +1 -1
- package/dist/parser/Statement.d.ts +183 -131
- package/dist/parser/Statement.js +549 -387
- package/dist/parser/Statement.js.map +1 -1
- package/dist/parser/Statement.spec.js +45 -21
- package/dist/parser/Statement.spec.js.map +1 -1
- package/dist/parser/TranspileState.d.ts +1 -1
- package/dist/parser/TranspileState.js +7 -12
- package/dist/parser/TranspileState.js.map +1 -1
- package/dist/parser/tests/Parser.spec.js +3 -2
- package/dist/parser/tests/Parser.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/For.spec.js +33 -23
- package/dist/parser/tests/controlFlow/For.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/ForEach.spec.js +25 -20
- package/dist/parser/tests/controlFlow/ForEach.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/If.spec.js +96 -94
- package/dist/parser/tests/controlFlow/If.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/While.spec.js +22 -16
- package/dist/parser/tests/controlFlow/While.spec.js.map +1 -1
- package/dist/parser/tests/expression/Additive.spec.js +8 -8
- package/dist/parser/tests/expression/Additive.spec.js.map +1 -1
- package/dist/parser/tests/expression/ArrayLiterals.spec.js +58 -21
- package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +1 -1
- package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +61 -20
- package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +1 -1
- package/dist/parser/tests/expression/Boolean.spec.js +8 -8
- package/dist/parser/tests/expression/Boolean.spec.js.map +1 -1
- package/dist/parser/tests/expression/Call.spec.js +129 -21
- package/dist/parser/tests/expression/Call.spec.js.map +1 -1
- package/dist/parser/tests/expression/Exponential.spec.js +5 -5
- package/dist/parser/tests/expression/Exponential.spec.js.map +1 -1
- package/dist/parser/tests/expression/Function.spec.js +36 -36
- package/dist/parser/tests/expression/Function.spec.js.map +1 -1
- package/dist/parser/tests/expression/Indexing.spec.js +67 -22
- package/dist/parser/tests/expression/Indexing.spec.js.map +1 -1
- package/dist/parser/tests/expression/Multiplicative.spec.js +9 -9
- package/dist/parser/tests/expression/Multiplicative.spec.js.map +1 -1
- package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +59 -59
- package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
- package/dist/parser/tests/expression/PrefixUnary.spec.js +12 -12
- package/dist/parser/tests/expression/PrefixUnary.spec.js.map +1 -1
- package/dist/parser/tests/expression/Primary.spec.js +12 -12
- package/dist/parser/tests/expression/Primary.spec.js.map +1 -1
- package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +10 -10
- package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -1
- package/dist/parser/tests/expression/Relational.spec.js +13 -13
- package/dist/parser/tests/expression/Relational.spec.js.map +1 -1
- package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +24 -24
- package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +1 -1
- package/dist/parser/tests/expression/TemplateStringExpression.spec.js +96 -57
- package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
- package/dist/parser/tests/expression/TernaryExpression.spec.js +89 -89
- package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
- package/dist/parser/tests/expression/TypeExpression.spec.d.ts +1 -0
- package/dist/parser/tests/expression/TypeExpression.spec.js +127 -0
- package/dist/parser/tests/expression/TypeExpression.spec.js.map +1 -0
- package/dist/parser/tests/expression/UnaryExpression.spec.d.ts +1 -0
- package/dist/parser/tests/expression/UnaryExpression.spec.js +52 -0
- package/dist/parser/tests/expression/UnaryExpression.spec.js.map +1 -0
- package/dist/parser/tests/statement/AssignmentOperators.spec.js +15 -15
- package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +1 -1
- package/dist/parser/tests/statement/ConstStatement.spec.js +82 -33
- package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -1
- package/dist/parser/tests/statement/Continue.spec.d.ts +1 -0
- package/dist/parser/tests/statement/Continue.spec.js +119 -0
- package/dist/parser/tests/statement/Continue.spec.js.map +1 -0
- package/dist/parser/tests/statement/Declaration.spec.js +19 -19
- package/dist/parser/tests/statement/Declaration.spec.js.map +1 -1
- package/dist/parser/tests/statement/Dim.spec.js +22 -22
- package/dist/parser/tests/statement/Dim.spec.js.map +1 -1
- package/dist/parser/tests/statement/Enum.spec.js +98 -302
- package/dist/parser/tests/statement/Enum.spec.js.map +1 -1
- package/dist/parser/tests/statement/For.spec.js +9 -10
- package/dist/parser/tests/statement/For.spec.js.map +1 -1
- package/dist/parser/tests/statement/ForEach.spec.js +8 -9
- package/dist/parser/tests/statement/ForEach.spec.js.map +1 -1
- package/dist/parser/tests/statement/Function.spec.js +44 -35
- package/dist/parser/tests/statement/Function.spec.js.map +1 -1
- package/dist/parser/tests/statement/Goto.spec.js +5 -5
- package/dist/parser/tests/statement/Goto.spec.js.map +1 -1
- package/dist/parser/tests/statement/Increment.spec.js +20 -20
- package/dist/parser/tests/statement/Increment.spec.js.map +1 -1
- package/dist/parser/tests/statement/InterfaceStatement.spec.js +30 -196
- package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
- package/dist/parser/tests/statement/LibraryStatement.spec.js +11 -11
- package/dist/parser/tests/statement/LibraryStatement.spec.js.map +1 -1
- package/dist/parser/tests/statement/Misc.spec.js +16 -78
- package/dist/parser/tests/statement/Misc.spec.js.map +1 -1
- package/dist/parser/tests/statement/PrintStatement.spec.js +35 -33
- package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
- package/dist/parser/tests/statement/ReturnStatement.spec.js +14 -12
- package/dist/parser/tests/statement/ReturnStatement.spec.js.map +1 -1
- package/dist/parser/tests/statement/Set.spec.js +48 -35
- package/dist/parser/tests/statement/Set.spec.js.map +1 -1
- package/dist/parser/tests/statement/Stop.spec.js +6 -6
- package/dist/parser/tests/statement/Stop.spec.js.map +1 -1
- package/dist/parser/tests/statement/Throw.spec.js +6 -6
- package/dist/parser/tests/statement/Throw.spec.js.map +1 -1
- package/dist/parser/tests/statement/TryCatch.spec.js +18 -16
- package/dist/parser/tests/statement/TryCatch.spec.js.map +1 -1
- package/dist/preprocessor/Manifest.d.ts +1 -1
- package/dist/preprocessor/Manifest.js +2 -2
- package/dist/preprocessor/Manifest.js.map +1 -1
- package/dist/preprocessor/Manifest.spec.js +8 -8
- package/dist/preprocessor/Manifest.spec.js.map +1 -1
- package/dist/preprocessor/Preprocessor.d.ts +5 -6
- package/dist/preprocessor/Preprocessor.js +5 -5
- package/dist/preprocessor/Preprocessor.js.map +1 -1
- package/dist/preprocessor/Preprocessor.spec.js +25 -25
- package/dist/preprocessor/Preprocessor.spec.js.map +1 -1
- package/dist/preprocessor/PreprocessorParser.d.ts +1 -1
- package/dist/preprocessor/PreprocessorParser.js +7 -1
- package/dist/preprocessor/PreprocessorParser.js.map +1 -1
- package/dist/preprocessor/PreprocessorParser.spec.js +13 -13
- package/dist/preprocessor/PreprocessorParser.spec.js.map +1 -1
- package/dist/roku-types/data.json +5892 -10081
- package/dist/roku-types/index.d.ts +622 -1719
- package/dist/types/ArrayType.d.ts +10 -9
- package/dist/types/ArrayType.js +65 -60
- package/dist/types/ArrayType.js.map +1 -1
- package/dist/types/ArrayType.spec.js +36 -68
- package/dist/types/ArrayType.spec.js.map +1 -1
- package/dist/types/AssociativeArrayType.d.ts +11 -0
- package/dist/types/AssociativeArrayType.js +52 -0
- package/dist/types/AssociativeArrayType.js.map +1 -0
- package/dist/types/BaseFunctionType.d.ts +9 -0
- package/dist/types/BaseFunctionType.js +25 -0
- package/dist/types/BaseFunctionType.js.map +1 -0
- package/dist/types/BooleanType.d.ts +8 -5
- package/dist/types/BooleanType.js +14 -7
- package/dist/types/BooleanType.js.map +1 -1
- package/dist/types/BooleanType.spec.js +10 -6
- package/dist/types/BooleanType.spec.js.map +1 -1
- package/dist/types/BscType.d.ts +32 -21
- package/dist/types/BscType.js +118 -21
- package/dist/types/BscType.js.map +1 -1
- package/dist/types/BscTypeKind.d.ts +25 -0
- package/dist/types/BscTypeKind.js +30 -0
- package/dist/types/BscTypeKind.js.map +1 -0
- package/dist/types/BuiltInInterfaceAdder.d.ts +23 -0
- package/dist/types/BuiltInInterfaceAdder.js +164 -0
- package/dist/types/BuiltInInterfaceAdder.js.map +1 -0
- package/dist/types/BuiltInInterfaceAdder.spec.d.ts +1 -0
- package/dist/types/BuiltInInterfaceAdder.spec.js +116 -0
- package/dist/types/BuiltInInterfaceAdder.spec.js.map +1 -0
- package/dist/types/ClassType.d.ts +17 -0
- package/dist/types/ClassType.js +58 -0
- package/dist/types/ClassType.js.map +1 -0
- package/dist/types/ClassType.spec.d.ts +1 -0
- package/dist/types/ClassType.spec.js +77 -0
- package/dist/types/ClassType.spec.js.map +1 -0
- package/dist/types/ComponentType.d.ts +26 -0
- package/dist/types/ComponentType.js +83 -0
- package/dist/types/ComponentType.js.map +1 -0
- package/dist/types/DoubleType.d.ts +8 -5
- package/dist/types/DoubleType.js +18 -16
- package/dist/types/DoubleType.js.map +1 -1
- package/dist/types/DoubleType.spec.js +12 -6
- package/dist/types/DoubleType.spec.js.map +1 -1
- package/dist/types/DynamicType.d.ts +9 -5
- package/dist/types/DynamicType.js +15 -4
- package/dist/types/DynamicType.js.map +1 -1
- package/dist/types/DynamicType.spec.js +16 -5
- package/dist/types/DynamicType.spec.js.map +1 -1
- package/dist/types/EnumType.d.ts +30 -12
- package/dist/types/EnumType.js +43 -17
- package/dist/types/EnumType.js.map +1 -1
- package/dist/types/EnumType.spec.d.ts +1 -0
- package/dist/types/EnumType.spec.js +33 -0
- package/dist/types/EnumType.spec.js.map +1 -0
- package/dist/types/FloatType.d.ts +8 -5
- package/dist/types/FloatType.js +18 -16
- package/dist/types/FloatType.js.map +1 -1
- package/dist/types/FloatType.spec.js +4 -6
- package/dist/types/FloatType.spec.js.map +1 -1
- package/dist/types/FunctionType.d.ts +13 -8
- package/dist/types/FunctionType.js +30 -14
- package/dist/types/FunctionType.js.map +1 -1
- package/dist/types/InheritableType.d.ts +28 -0
- package/dist/types/InheritableType.js +152 -0
- package/dist/types/InheritableType.js.map +1 -0
- package/dist/types/IntegerType.d.ts +8 -5
- package/dist/types/IntegerType.js +18 -16
- package/dist/types/IntegerType.js.map +1 -1
- package/dist/types/IntegerType.spec.js +8 -6
- package/dist/types/IntegerType.spec.js.map +1 -1
- package/dist/types/InterfaceType.d.ts +12 -13
- package/dist/types/InterfaceType.js +20 -48
- package/dist/types/InterfaceType.js.map +1 -1
- package/dist/types/InterfaceType.spec.js +90 -56
- package/dist/types/InterfaceType.spec.js.map +1 -1
- package/dist/types/InvalidType.d.ts +7 -5
- package/dist/types/InvalidType.js +13 -7
- package/dist/types/InvalidType.js.map +1 -1
- package/dist/types/InvalidType.spec.js +8 -6
- package/dist/types/InvalidType.spec.js.map +1 -1
- package/dist/types/LongIntegerType.d.ts +8 -5
- package/dist/types/LongIntegerType.js +17 -15
- package/dist/types/LongIntegerType.js.map +1 -1
- package/dist/types/LongIntegerType.spec.js +10 -6
- package/dist/types/LongIntegerType.spec.js.map +1 -1
- package/dist/types/NamespaceType.d.ts +12 -0
- package/dist/types/NamespaceType.js +28 -0
- package/dist/types/NamespaceType.js.map +1 -0
- package/dist/types/ObjectType.d.ts +9 -8
- package/dist/types/ObjectType.js +21 -11
- package/dist/types/ObjectType.js.map +1 -1
- package/dist/types/ObjectType.spec.js +3 -3
- package/dist/types/ObjectType.spec.js.map +1 -1
- package/dist/types/ReferenceType.d.ts +63 -0
- package/dist/types/ReferenceType.js +423 -0
- package/dist/types/ReferenceType.js.map +1 -0
- package/dist/types/ReferenceType.spec.d.ts +1 -0
- package/dist/types/ReferenceType.spec.js +137 -0
- package/dist/types/ReferenceType.spec.js.map +1 -0
- package/dist/types/StringType.d.ts +11 -5
- package/dist/types/StringType.js +18 -7
- package/dist/types/StringType.js.map +1 -1
- package/dist/types/StringType.spec.js +3 -5
- package/dist/types/StringType.spec.js.map +1 -1
- package/dist/types/TypedFunctionType.d.ts +22 -17
- package/dist/types/TypedFunctionType.js +78 -60
- package/dist/types/TypedFunctionType.js.map +1 -1
- package/dist/types/TypedFunctionType.spec.js +105 -20
- package/dist/types/TypedFunctionType.spec.js.map +1 -1
- package/dist/types/UninitializedType.d.ts +8 -6
- package/dist/types/UninitializedType.js +13 -7
- package/dist/types/UninitializedType.js.map +1 -1
- package/dist/types/UnionType.d.ts +20 -0
- package/dist/types/UnionType.js +123 -0
- package/dist/types/UnionType.js.map +1 -0
- package/dist/types/UnionType.spec.d.ts +1 -0
- package/dist/types/UnionType.spec.js +130 -0
- package/dist/types/UnionType.spec.js.map +1 -0
- package/dist/types/VoidType.d.ts +8 -5
- package/dist/types/VoidType.js +14 -7
- package/dist/types/VoidType.js.map +1 -1
- package/dist/types/VoidType.spec.js +3 -3
- package/dist/types/VoidType.spec.js.map +1 -1
- package/dist/types/helper.spec.d.ts +1 -0
- package/dist/types/helper.spec.js +145 -0
- package/dist/types/helper.spec.js.map +1 -0
- package/dist/types/helpers.d.ts +19 -37
- package/dist/types/helpers.js +159 -99
- package/dist/types/helpers.js.map +1 -1
- package/dist/types/index.d.ts +22 -0
- package/dist/types/index.js +39 -0
- package/dist/types/index.js.map +1 -0
- package/dist/util.d.ts +132 -137
- package/dist/util.js +796 -362
- package/dist/util.js.map +1 -1
- package/dist/validators/ClassValidator.d.ts +8 -25
- package/dist/validators/ClassValidator.js +96 -176
- package/dist/validators/ClassValidator.js.map +1 -1
- package/package.json +165 -152
- package/dist/astUtils/AstEditor.js.map +0 -1
- package/dist/astUtils/AstEditor.spec.js.map +0 -1
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js.map +0 -1
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +0 -32
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +0 -1
- package/dist/parser/SGTypes.spec.js +0 -351
- package/dist/parser/SGTypes.spec.js.map +0 -1
- package/dist/types/CustomType.d.ts +0 -12
- package/dist/types/CustomType.js +0 -44
- package/dist/types/CustomType.js.map +0 -1
- package/dist/types/LazyType.d.ts +0 -16
- package/dist/types/LazyType.js +0 -44
- package/dist/types/LazyType.js.map +0 -1
- /package/dist/astUtils/{AstEditor.spec.d.ts → Editor.spec.d.ts} +0 -0
- /package/dist/bscPlugin/{transpile/BrsFilePreTranspileProcessor.spec.d.ts → completions/CompletionsProcessor.spec.d.ts} +0 -0
- /package/dist/{parser/SGTypes.spec.d.ts → bscPlugin/serialize/BslibInjector.spec.d.ts} +0 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LazyFileData = void 0;
|
|
4
|
+
class LazyFileData {
|
|
5
|
+
constructor(initialData) {
|
|
6
|
+
this.initialData = initialData;
|
|
7
|
+
/**
|
|
8
|
+
* Has the data been loaded
|
|
9
|
+
*/
|
|
10
|
+
this.isValueLoaded = false;
|
|
11
|
+
}
|
|
12
|
+
get value() {
|
|
13
|
+
if (!this.isValueLoaded) {
|
|
14
|
+
this.isValueLoaded = true;
|
|
15
|
+
this.resolve();
|
|
16
|
+
}
|
|
17
|
+
return this.resolvedData;
|
|
18
|
+
}
|
|
19
|
+
set value(value) {
|
|
20
|
+
this.isValueLoaded = true;
|
|
21
|
+
this.initialData = value;
|
|
22
|
+
this.resolve();
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Resolve the initialData into the actual data
|
|
26
|
+
*/
|
|
27
|
+
resolve() {
|
|
28
|
+
let result;
|
|
29
|
+
if (Buffer.isBuffer(this.initialData)) {
|
|
30
|
+
result = this.initialData;
|
|
31
|
+
}
|
|
32
|
+
else if (typeof this.initialData === 'string') {
|
|
33
|
+
result = Buffer.from(this.initialData);
|
|
34
|
+
}
|
|
35
|
+
else if (typeof this.initialData === 'function') {
|
|
36
|
+
result = this.initialData();
|
|
37
|
+
//convert result to buffer
|
|
38
|
+
if (!Buffer.isBuffer(result)) {
|
|
39
|
+
result = Buffer.from(result);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else if (isLazyFileData(this.initialData)) {
|
|
43
|
+
result = this.initialData.value;
|
|
44
|
+
}
|
|
45
|
+
this.resolvedData = result;
|
|
46
|
+
delete this.initialData;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.LazyFileData = LazyFileData;
|
|
50
|
+
function isLazyFileData(item) {
|
|
51
|
+
var _a;
|
|
52
|
+
return ((_a = item === null || item === void 0 ? void 0 : item.constructor) === null || _a === void 0 ? void 0 : _a.name) === 'LazyFileData';
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=LazyFileData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LazyFileData.js","sourceRoot":"","sources":["../../src/files/LazyFileData.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;IACrB,YACY,WAAqB;QAArB,gBAAW,GAAX,WAAW,CAAU;QAGjC;;WAEG;QACI,kBAAa,GAAG,KAAK,CAAC;IALzB,CAAC;IAYL,IAAW,KAAK;QACZ,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,OAAO,EAAE,CAAC;SAClB;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,IAAW,KAAK,CAAC,KAAe;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,OAAO;QACX,IAAI,MAAW,CAAC;QAChB,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YACnC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;SAC7B;aAAM,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE;YAC7C,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC1C;aAAM,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE;YAC/C,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,0BAA0B;YAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAC1B,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAChC;SACJ;aAAM,IAAI,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YACzC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;SACnC;QACD,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;QAC3B,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;CACJ;AAlDD,oCAkDC;AAID,SAAS,cAAc,CAAC,IAAS;;IAC7B,OAAO,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,0CAAE,IAAI,MAAK,cAAc,CAAC;AACtD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const chai_1 = require("chai");
|
|
4
|
+
const LazyFileData_1 = require("./LazyFileData");
|
|
5
|
+
describe('LazyFileData', () => {
|
|
6
|
+
it('lazy loads string data', () => {
|
|
7
|
+
var _a;
|
|
8
|
+
const data = new LazyFileData_1.LazyFileData('cat');
|
|
9
|
+
(0, chai_1.expect)(data['initialData']).to.eql('cat');
|
|
10
|
+
(0, chai_1.expect)(data['resolvedData']).to.be.undefined;
|
|
11
|
+
(0, chai_1.expect)(data.isValueLoaded).to.be.false;
|
|
12
|
+
//now lazy-load the data
|
|
13
|
+
(0, chai_1.expect)(Buffer.isBuffer(data.value)).to.be.true;
|
|
14
|
+
(0, chai_1.expect)(data['initialData']).to.be.undefined;
|
|
15
|
+
(0, chai_1.expect)((_a = data['resolvedData']) === null || _a === void 0 ? void 0 : _a.toString()).to.eql('cat');
|
|
16
|
+
(0, chai_1.expect)(data.isValueLoaded).to.be.true;
|
|
17
|
+
});
|
|
18
|
+
it('supports LazyFileData as initialData', () => {
|
|
19
|
+
var _a;
|
|
20
|
+
const data = new LazyFileData_1.LazyFileData(new LazyFileData_1.LazyFileData('cat'));
|
|
21
|
+
(0, chai_1.expect)((_a = data.value) === null || _a === void 0 ? void 0 : _a.toString()).to.eql('cat');
|
|
22
|
+
});
|
|
23
|
+
it('supports Buffer', () => {
|
|
24
|
+
(0, chai_1.expect)(new LazyFileData_1.LazyFileData(Buffer.from('cat')).value.toString()).to.eql('cat');
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
//# sourceMappingURL=LazyFileData.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LazyFileData.spec.js","sourceRoot":"","sources":["../../src/files/LazyFileData.spec.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,iDAA8C;AAE9C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;;QAC9B,MAAM,IAAI,GAAG,IAAI,2BAAY,CAAC,KAAK,CAAC,CAAC;QACrC,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAA,aAAM,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QAC7C,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAEvC,wBAAwB;QACxB,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC/C,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QAC5C,IAAA,aAAM,EAAC,MAAA,IAAI,CAAC,cAAc,CAAC,0CAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvD,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;;QAC5C,MAAM,IAAI,GAAG,IAAI,2BAAY,CACzB,IAAI,2BAAY,CAAC,KAAK,CAAC,CAC1B,CAAC;QACF,IAAA,aAAM,EAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;QACvB,IAAA,aAAM,EACF,IAAI,2BAAY,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CACxD,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
package/dist/files/XmlFile.d.ts
CHANGED
|
@@ -1,36 +1,62 @@
|
|
|
1
1
|
import type { CodeWithSourceMap } from 'source-map';
|
|
2
|
-
import type {
|
|
3
|
-
import type { Callable, BsDiagnostic, FileReference, FunctionCall, CommentFlag,
|
|
2
|
+
import type { Location, Position, Range } from 'vscode-languageserver';
|
|
3
|
+
import type { Callable, BsDiagnostic, FileReference, FunctionCall, CommentFlag, SerializedCodeFile } from '../interfaces';
|
|
4
4
|
import type { Program } from '../Program';
|
|
5
5
|
import SGParser from '../parser/SGParser';
|
|
6
6
|
import type { DependencyGraph } from '../DependencyGraph';
|
|
7
|
-
import
|
|
7
|
+
import { type SGToken } from '../parser/SGTypes';
|
|
8
8
|
import type { IToken, TokenType } from 'chevrotain';
|
|
9
|
-
import type {
|
|
10
|
-
|
|
9
|
+
import type { BscFile } from './BscFile';
|
|
10
|
+
import type { Editor } from '../astUtils/Editor';
|
|
11
|
+
import type { FunctionScope } from '../FunctionScope';
|
|
12
|
+
export declare class XmlFile implements BscFile {
|
|
13
|
+
/**
|
|
14
|
+
* Create a new instance of BrsFile
|
|
15
|
+
*/
|
|
16
|
+
constructor(options: {
|
|
17
|
+
/**
|
|
18
|
+
* The absolute path to the source file on disk (e.g. '/usr/you/projects/RokuApp/source/main.brs' or 'c:/projects/RokuApp/source/main.brs').
|
|
19
|
+
*/
|
|
20
|
+
srcPath: string;
|
|
21
|
+
/**
|
|
22
|
+
* The absolute path to the file on-device (i.e. 'source/main.brs') without the leading `pkg:/`
|
|
23
|
+
*/
|
|
24
|
+
destPath: string;
|
|
25
|
+
pkgPath?: string;
|
|
26
|
+
program: Program;
|
|
27
|
+
});
|
|
28
|
+
type: string;
|
|
11
29
|
/**
|
|
12
30
|
* The absolute path to the source file on disk (e.g. '/usr/you/projects/RokuApp/source/main.brs' or 'c:/projects/RokuApp/source/main.brs').
|
|
13
31
|
*/
|
|
14
32
|
srcPath: string;
|
|
15
33
|
/**
|
|
16
|
-
* The
|
|
34
|
+
* The absolute path to the file on-device (i.e. 'source/main.brs') without the leading `pkg:/`
|
|
17
35
|
*/
|
|
36
|
+
destPath: string;
|
|
18
37
|
pkgPath: string;
|
|
19
38
|
program: Program;
|
|
20
|
-
constructor(
|
|
21
39
|
/**
|
|
22
|
-
*
|
|
40
|
+
* An editor assigned during the build flow that manages edits that will be undone once the build process is complete.
|
|
23
41
|
*/
|
|
24
|
-
|
|
42
|
+
editor?: Editor;
|
|
25
43
|
/**
|
|
26
|
-
* The
|
|
44
|
+
* The absolute path to the source location for this file
|
|
45
|
+
* @deprecated use `srcPath` instead
|
|
27
46
|
*/
|
|
28
|
-
|
|
47
|
+
get pathAbsolute(): string;
|
|
48
|
+
set pathAbsolute(value: string);
|
|
29
49
|
private cache;
|
|
30
50
|
/**
|
|
31
51
|
* The list of possible autoImport codebehind pkg paths.
|
|
52
|
+
* @deprecated use `possibleCodebehindDestPaths` instead.
|
|
53
|
+
*/
|
|
54
|
+
get possibleCodebehindPkgPaths(): string[];
|
|
55
|
+
set possibleCodebehindPkgPaths(value: string[]);
|
|
56
|
+
/**
|
|
57
|
+
* The list of possible autoImport codebehind destPath values
|
|
32
58
|
*/
|
|
33
|
-
|
|
59
|
+
possibleCodebehindDestPaths: string[];
|
|
34
60
|
/**
|
|
35
61
|
* An unsubscribe function for the dependencyGraph subscription
|
|
36
62
|
*/
|
|
@@ -45,13 +71,17 @@ export declare class XmlFile {
|
|
|
45
71
|
*/
|
|
46
72
|
extension: string;
|
|
47
73
|
commentFlags: CommentFlag[];
|
|
74
|
+
/**
|
|
75
|
+
* Will this file result in only comment or whitespace output? If so, it can be excluded from the output if that bsconfig setting is enabled.
|
|
76
|
+
*/
|
|
77
|
+
readonly canBePruned = false;
|
|
48
78
|
/**
|
|
49
79
|
* The list of script imports delcared in the XML of this file.
|
|
50
80
|
* This excludes parent imports and auto codebehind imports
|
|
51
81
|
*/
|
|
52
82
|
get scriptTagImports(): FileReference[];
|
|
53
83
|
/**
|
|
54
|
-
* List of all
|
|
84
|
+
* List of all `destPath` values pointing to scripts that this XmlFile depends on, regardless of whether they are loaded in the program or not.
|
|
55
85
|
* This includes own dependencies and all parent compoent dependencies
|
|
56
86
|
* coming from:
|
|
57
87
|
* - script tags
|
|
@@ -60,7 +90,7 @@ export declare class XmlFile {
|
|
|
60
90
|
*/
|
|
61
91
|
getAllDependencies(): string[];
|
|
62
92
|
/**
|
|
63
|
-
* List of all
|
|
93
|
+
* List of all destPaths to scripts that this XmlFile depends on directly, regardless of whether they are loaded in the program or not.
|
|
64
94
|
* This does not account for parent component scripts
|
|
65
95
|
* coming from:
|
|
66
96
|
* - script tags
|
|
@@ -69,7 +99,7 @@ export declare class XmlFile {
|
|
|
69
99
|
*/
|
|
70
100
|
getOwnDependencies(): string[];
|
|
71
101
|
/**
|
|
72
|
-
* List of all
|
|
102
|
+
* List of all destPaths to scripts that this XmlFile depends on that are actually loaded into the program.
|
|
73
103
|
* This does not account for parent component scripts.
|
|
74
104
|
* coming from:
|
|
75
105
|
* - script tags
|
|
@@ -83,10 +113,14 @@ export declare class XmlFile {
|
|
|
83
113
|
* The range of the entire file
|
|
84
114
|
*/
|
|
85
115
|
fileRange: Range;
|
|
116
|
+
/**
|
|
117
|
+
* Diagnostics for this file
|
|
118
|
+
*/
|
|
86
119
|
diagnostics: BsDiagnostic[];
|
|
87
120
|
parser: SGParser;
|
|
88
121
|
callables: Callable[];
|
|
89
122
|
functionCalls: FunctionCall[];
|
|
123
|
+
functionScopes: FunctionScope[];
|
|
90
124
|
/**
|
|
91
125
|
* The name of the component that this component extends.
|
|
92
126
|
* Available after `parse()`
|
|
@@ -99,35 +133,46 @@ export declare class XmlFile {
|
|
|
99
133
|
get componentName(): SGToken;
|
|
100
134
|
/**
|
|
101
135
|
* Does this file need to be transpiled?
|
|
136
|
+
* @deprecated use the `.editor` property to push changes to the file, which will force transpilation
|
|
102
137
|
*/
|
|
103
|
-
needsTranspiled: boolean;
|
|
138
|
+
get needsTranspiled(): boolean;
|
|
139
|
+
set needsTranspiled(value: boolean);
|
|
140
|
+
_needsTranspiled: boolean;
|
|
104
141
|
/**
|
|
105
142
|
* The AST for this file
|
|
106
143
|
*/
|
|
107
|
-
get ast(): SGAst;
|
|
144
|
+
get ast(): import("../parser/SGTypes").SGAst;
|
|
108
145
|
/**
|
|
109
146
|
* The full file contents
|
|
110
147
|
*/
|
|
111
148
|
fileContents: string;
|
|
112
149
|
/**
|
|
113
150
|
* Calculate the AST for this file
|
|
114
|
-
* @param fileContents
|
|
151
|
+
* @param fileContents the xml source code to parse
|
|
115
152
|
*/
|
|
116
153
|
parse(fileContents: string): void;
|
|
117
|
-
|
|
154
|
+
/**
|
|
155
|
+
* Generate the code, map, and typedef for this file
|
|
156
|
+
*/
|
|
157
|
+
serialize(): SerializedCodeFile;
|
|
118
158
|
/**
|
|
119
159
|
* Collect all bs: comment flags
|
|
120
160
|
*/
|
|
121
161
|
getCommentFlags(tokens: Array<IToken & {
|
|
122
162
|
tokenType: TokenType;
|
|
123
163
|
}>): void;
|
|
124
|
-
private validateComponent;
|
|
125
164
|
private dependencyGraph;
|
|
165
|
+
onDependenciesChanged(): void;
|
|
126
166
|
/**
|
|
127
167
|
* Attach the file to the dependency graph so it can monitor changes.
|
|
128
168
|
* Also notify the dependency graph of our current dependencies so other dependents can be notified.
|
|
169
|
+
* @deprecated this does nothing. This functionality is now handled by the file api and will be deleted in v1
|
|
129
170
|
*/
|
|
130
171
|
attachDependencyGraph(dependencyGraph: DependencyGraph): void;
|
|
172
|
+
/**
|
|
173
|
+
* The list of files that this file depends on
|
|
174
|
+
*/
|
|
175
|
+
get dependencies(): string[];
|
|
131
176
|
/**
|
|
132
177
|
* A slight hack. Gives the Program a way to support multiple components with the same name
|
|
133
178
|
* without causing major issues. A value of 0 will be ignored as part of the dependency graph key.
|
|
@@ -139,9 +184,10 @@ export declare class XmlFile {
|
|
|
139
184
|
/**
|
|
140
185
|
* The key used in the dependency graph for this file.
|
|
141
186
|
* If we have a component name, we will use that so we can be discoverable by child components.
|
|
142
|
-
* If we don't have a component name, use the
|
|
187
|
+
* If we don't have a component name, use the destPath so at least we can self-validate
|
|
143
188
|
*/
|
|
144
189
|
get dependencyGraphKey(): string;
|
|
190
|
+
set dependencyGraphKey(value: string);
|
|
145
191
|
/**
|
|
146
192
|
* The key used in the dependency graph for this component's parent.
|
|
147
193
|
* If we have aparent, we will use that. If we don't, this will return undefined
|
|
@@ -149,26 +195,18 @@ export declare class XmlFile {
|
|
|
149
195
|
get parentComponentDependencyGraphKey(): string;
|
|
150
196
|
/**
|
|
151
197
|
* Determines if this xml file has a reference to the specified file (or if it's itself)
|
|
152
|
-
* @param file
|
|
153
198
|
*/
|
|
154
199
|
doesReferenceFile(file: BscFile): boolean;
|
|
155
|
-
/**
|
|
156
|
-
* Get all available completions for the specified position
|
|
157
|
-
* @param lineIndex
|
|
158
|
-
* @param columnIndex
|
|
159
|
-
*/
|
|
160
|
-
getCompletions(position: Position): CompletionItem[];
|
|
161
200
|
/**
|
|
162
201
|
* Get the parent component (the component this component extends)
|
|
163
202
|
*/
|
|
164
203
|
get parentComponent(): XmlFile;
|
|
165
|
-
getHover(position: Position): Hover;
|
|
166
204
|
getReferences(position: Position): Promise<Location[]>;
|
|
167
|
-
|
|
205
|
+
getFunctionScopeAtPosition(position: Position, functionScopes?: FunctionScope[]): FunctionScope;
|
|
168
206
|
/**
|
|
169
207
|
* Walk up the ancestor chain and aggregate all of the script tag imports
|
|
170
208
|
*/
|
|
171
|
-
getAncestorScriptTagImports():
|
|
209
|
+
getAncestorScriptTagImports(): FileReference[];
|
|
172
210
|
/**
|
|
173
211
|
* Remove this file from the dependency graph as a node
|
|
174
212
|
*/
|
|
@@ -179,7 +217,7 @@ export declare class XmlFile {
|
|
|
179
217
|
* and only includes the ones that are not found on the parent.
|
|
180
218
|
* If no parent is found, all imports are returned
|
|
181
219
|
*/
|
|
182
|
-
|
|
220
|
+
getMissingImportsForTranspile(): string[];
|
|
183
221
|
private logDebug;
|
|
184
222
|
/**
|
|
185
223
|
* Convert the brightscript/brighterscript source code into valid brightscript
|