brighterscript 1.0.0-alpha.23 → 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 +585 -218
- 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 +79 -15
- package/dist/DiagnosticMessages.js +134 -21
- 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 +222 -87
- 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 +162 -81
- package/dist/Program.js +903 -732
- package/dist/Program.js.map +1 -1
- package/dist/ProgramBuilder.d.ts +22 -12
- package/dist/ProgramBuilder.js +132 -104
- package/dist/ProgramBuilder.js.map +1 -1
- package/dist/Scope.d.ts +95 -134
- package/dist/Scope.js +477 -551
- 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 +95 -29
- package/dist/SymbolTable.js +256 -102
- 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 -68
- 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 -100
- package/dist/astUtils/reflection.js +225 -166
- 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 +54 -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 +12 -2
- package/dist/bscPlugin/BscPlugin.js +41 -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.d.ts +1 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +21 -12
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +86 -12
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
- package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +57 -0
- package/dist/bscPlugin/completions/CompletionsProcessor.js +544 -0
- package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -0
- 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 +17 -0
- package/dist/bscPlugin/hover/HoverProcessor.js +188 -0
- package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -0
- package/dist/bscPlugin/hover/HoverProcessor.spec.js +513 -0
- package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -0
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +3 -1
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +102 -29
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +167 -6
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -1
- package/dist/bscPlugin/serialize/BslibInjector.spec.d.ts +1 -0
- 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/BrsFileTranspileProcessor.d.ts +16 -0
- package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js +123 -0
- 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 +22 -1
- package/dist/bscPlugin/validation/BrsFileValidator.js +316 -29
- package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
- package/dist/bscPlugin/validation/BrsFileValidator.spec.d.ts +1 -0
- package/dist/bscPlugin/validation/BrsFileValidator.spec.js +264 -0
- package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +1 -0
- 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 +56 -8
- package/dist/bscPlugin/validation/ScopeValidator.js +514 -116
- 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 +107 -8
- 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 +529 -486
- package/dist/files/BrsFile.Class.spec.js.map +1 -1
- package/dist/files/BrsFile.d.ts +124 -112
- package/dist/files/BrsFile.js +819 -1131
- package/dist/files/BrsFile.js.map +1 -1
- package/dist/files/BrsFile.spec.js +1869 -1277
- 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 -117
- 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 +49 -41
- package/dist/files/tests/imports.spec.js.map +1 -1
- package/dist/files/tests/optionalChaning.spec.js +104 -40
- package/dist/files/tests/optionalChaning.spec.js.map +1 -1
- package/dist/globalCallables.js +16 -18
- package/dist/globalCallables.js.map +1 -1
- package/dist/index.d.ts +13 -2
- package/dist/index.js +15 -2
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +440 -150
- 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 +187 -134
- 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 +9 -0
- package/dist/lexer/TokenKind.js +30 -5
- 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 -167
- package/dist/parser/Expression.js +524 -394
- package/dist/parser/Expression.js.map +1 -1
- package/dist/parser/Parser.Class.spec.js +152 -146
- package/dist/parser/Parser.Class.spec.js.map +1 -1
- package/dist/parser/Parser.d.ts +45 -196
- package/dist/parser/Parser.js +470 -926
- package/dist/parser/Parser.js.map +1 -1
- package/dist/parser/Parser.spec.d.ts +3 -1
- package/dist/parser/Parser.spec.js +1034 -805
- 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 +208 -122
- package/dist/parser/Statement.js +599 -364
- 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 +123 -81
- 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 +221 -81
- package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
- package/dist/parser/tests/expression/TernaryExpression.spec.js +287 -105
- 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.d.ts +1 -0
- package/dist/parser/tests/statement/ConstStatement.spec.js +262 -0
- package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -0
- 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 +111 -300
- 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 +107 -90
- 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 +3 -3
- 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 +15 -11
- 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 +6544 -10519
- package/dist/roku-types/index.d.ts +662 -1934
- 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 +10 -5
- package/dist/types/DynamicType.js +16 -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 +167 -131
- package/dist/util.js +890 -350
- package/dist/util.js.map +1 -1
- package/dist/validators/ClassValidator.d.ts +7 -25
- package/dist/validators/ClassValidator.js +103 -194
- package/dist/validators/ClassValidator.js.map +1 -1
- package/package.json +165 -149
- package/dist/astUtils/AstEditor.js.map +0 -1
- package/dist/astUtils/AstEditor.spec.js.map +0 -1
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.d.ts +0 -8
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js +0 -40
- 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/hover/HoverProcessor.spec.d.ts} +0 -0
|
@@ -1,38 +1,24 @@
|
|
|
1
1
|
import type { Token, Identifier } from '../lexer/Token';
|
|
2
2
|
import { TokenKind } from '../lexer/TokenKind';
|
|
3
|
-
import type {
|
|
3
|
+
import type { DottedGetExpression, FunctionExpression, FunctionParameterExpression, TypeExpression } from './Expression';
|
|
4
|
+
import { VariableExpression } from './Expression';
|
|
4
5
|
import type { Range } from 'vscode-languageserver';
|
|
5
6
|
import type { BrsTranspileState } from './BrsTranspileState';
|
|
6
7
|
import { ParseMode } from './Parser';
|
|
7
8
|
import type { WalkVisitor, WalkOptions } from '../astUtils/visitors';
|
|
8
|
-
import {
|
|
9
|
-
import type { InheritableStatement, MemberSymbolTableProvider, TranspileResult, TypedefProvider } from '../interfaces';
|
|
10
|
-
import { DynamicType } from '../types/DynamicType';
|
|
9
|
+
import { type GetTypeOptions, type TranspileResult, type TypedefProvider } from '../interfaces';
|
|
11
10
|
import type { SourceNode } from 'source-map';
|
|
12
11
|
import type { TranspileState } from './TranspileState';
|
|
13
12
|
import { SymbolTable } from '../SymbolTable';
|
|
14
|
-
import {
|
|
13
|
+
import type { Expression } from './AstNode';
|
|
14
|
+
import { AstNodeKind } from './AstNode';
|
|
15
|
+
import { Statement } from './AstNode';
|
|
16
|
+
import { ClassType } from '../types/ClassType';
|
|
17
|
+
import { EnumMemberType, EnumType } from '../types/EnumType';
|
|
18
|
+
import { NamespaceType } from '../types/NamespaceType';
|
|
15
19
|
import { InterfaceType } from '../types/InterfaceType';
|
|
16
|
-
import {
|
|
17
|
-
|
|
18
|
-
* A BrightScript statement
|
|
19
|
-
*/
|
|
20
|
-
export declare abstract class Statement {
|
|
21
|
-
/**
|
|
22
|
-
* The starting and ending location of the statement.
|
|
23
|
-
**/
|
|
24
|
-
abstract readonly range: Range;
|
|
25
|
-
/**
|
|
26
|
-
* Statement annotations
|
|
27
|
-
*/
|
|
28
|
-
annotations: AnnotationExpression[];
|
|
29
|
-
abstract transpile(state: BrsTranspileState): TranspileResult;
|
|
30
|
-
/**
|
|
31
|
-
* When being considered by the walk visitor, this describes what type of element the current class is.
|
|
32
|
-
*/
|
|
33
|
-
visitMode: InternalWalkMode;
|
|
34
|
-
abstract walk(visitor: WalkVisitor, options: WalkOptions): any;
|
|
35
|
-
}
|
|
20
|
+
import type { BscType } from '../types/BscType';
|
|
21
|
+
import { TypedFunctionType } from '../types/TypedFunctionType';
|
|
36
22
|
export declare class EmptyStatement extends Statement {
|
|
37
23
|
/**
|
|
38
24
|
* Create a negative range to indicate this is an interpolated location
|
|
@@ -43,6 +29,7 @@ export declare class EmptyStatement extends Statement {
|
|
|
43
29
|
* Create a negative range to indicate this is an interpolated location
|
|
44
30
|
*/
|
|
45
31
|
range?: Range);
|
|
32
|
+
readonly kind = AstNodeKind.EmptyStatement;
|
|
46
33
|
transpile(state: BrsTranspileState): any[];
|
|
47
34
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
48
35
|
}
|
|
@@ -52,25 +39,31 @@ export declare class EmptyStatement extends Statement {
|
|
|
52
39
|
export declare class Body extends Statement implements TypedefProvider {
|
|
53
40
|
statements: Statement[];
|
|
54
41
|
constructor(statements?: Statement[]);
|
|
55
|
-
readonly
|
|
42
|
+
readonly kind = AstNodeKind.Body;
|
|
43
|
+
symbolTable: SymbolTable;
|
|
44
|
+
get range(): Range;
|
|
56
45
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
57
46
|
getTypedef(state: BrsTranspileState): any[];
|
|
58
47
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
59
48
|
}
|
|
60
49
|
export declare class AssignmentStatement extends Statement {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
50
|
+
equals: Token;
|
|
51
|
+
name: Identifier;
|
|
52
|
+
value: Expression;
|
|
53
|
+
asToken?: Token;
|
|
54
|
+
typeExpression?: TypeExpression;
|
|
55
|
+
constructor(equals: Token, name: Identifier, value: Expression, asToken?: Token, typeExpression?: TypeExpression);
|
|
56
|
+
readonly kind = AstNodeKind.AssignmentStatement;
|
|
66
57
|
readonly range: Range;
|
|
67
58
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
68
59
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
60
|
+
getType(options: GetTypeOptions): BscType;
|
|
69
61
|
}
|
|
70
62
|
export declare class Block extends Statement {
|
|
71
63
|
readonly statements: Statement[];
|
|
72
64
|
readonly startingRange: Range;
|
|
73
65
|
constructor(statements: Statement[], startingRange: Range);
|
|
66
|
+
readonly kind = AstNodeKind.Block;
|
|
74
67
|
readonly range: Range;
|
|
75
68
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
76
69
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -78,6 +71,7 @@ export declare class Block extends Statement {
|
|
|
78
71
|
export declare class ExpressionStatement extends Statement {
|
|
79
72
|
readonly expression: Expression;
|
|
80
73
|
constructor(expression: Expression);
|
|
74
|
+
readonly kind = AstNodeKind.ExpressionStatement;
|
|
81
75
|
readonly range: Range;
|
|
82
76
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
83
77
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -85,7 +79,8 @@ export declare class ExpressionStatement extends Statement {
|
|
|
85
79
|
export declare class CommentStatement extends Statement implements Expression, TypedefProvider {
|
|
86
80
|
comments: Token[];
|
|
87
81
|
constructor(comments: Token[]);
|
|
88
|
-
readonly
|
|
82
|
+
readonly kind = AstNodeKind.CommentStatement;
|
|
83
|
+
range: Range;
|
|
89
84
|
get text(): string;
|
|
90
85
|
transpile(state: BrsTranspileState): any[];
|
|
91
86
|
getTypedef(state: TranspileState): any[];
|
|
@@ -98,6 +93,7 @@ export declare class ExitForStatement extends Statement {
|
|
|
98
93
|
constructor(tokens: {
|
|
99
94
|
exitFor: Token;
|
|
100
95
|
});
|
|
96
|
+
readonly kind = AstNodeKind.ExitForStatement;
|
|
101
97
|
readonly range: Range;
|
|
102
98
|
transpile(state: BrsTranspileState): SourceNode[];
|
|
103
99
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -109,6 +105,7 @@ export declare class ExitWhileStatement extends Statement {
|
|
|
109
105
|
constructor(tokens: {
|
|
110
106
|
exitWhile: Token;
|
|
111
107
|
});
|
|
108
|
+
readonly kind = AstNodeKind.ExitWhileStatement;
|
|
112
109
|
readonly range: Range;
|
|
113
110
|
transpile(state: BrsTranspileState): SourceNode[];
|
|
114
111
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -116,18 +113,18 @@ export declare class ExitWhileStatement extends Statement {
|
|
|
116
113
|
export declare class FunctionStatement extends Statement implements TypedefProvider {
|
|
117
114
|
name: Identifier;
|
|
118
115
|
func: FunctionExpression;
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
cacheRange(): Range;
|
|
123
|
-
protected _range: Range;
|
|
116
|
+
constructor(name: Identifier, func: FunctionExpression);
|
|
117
|
+
readonly kind: AstNodeKind;
|
|
118
|
+
readonly range: Range;
|
|
124
119
|
/**
|
|
125
120
|
* Get the name of this expression based on the parse mode
|
|
126
121
|
*/
|
|
127
122
|
getName(parseMode: ParseMode): string;
|
|
123
|
+
getLeadingTrivia(): Token[];
|
|
128
124
|
transpile(state: BrsTranspileState): any[];
|
|
129
125
|
getTypedef(state: BrsTranspileState): any[];
|
|
130
126
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
127
|
+
getType(options: GetTypeOptions): TypedFunctionType;
|
|
131
128
|
}
|
|
132
129
|
export declare class IfStatement extends Statement {
|
|
133
130
|
readonly tokens: {
|
|
@@ -146,6 +143,7 @@ export declare class IfStatement extends Statement {
|
|
|
146
143
|
else?: Token;
|
|
147
144
|
endIf?: Token;
|
|
148
145
|
}, condition: Expression, thenBranch: Block, elseBranch?: IfStatement | Block, isInline?: boolean);
|
|
146
|
+
readonly kind = AstNodeKind.IfStatement;
|
|
149
147
|
readonly range: Range;
|
|
150
148
|
transpile(state: BrsTranspileState): any[];
|
|
151
149
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -154,6 +152,7 @@ export declare class IncrementStatement extends Statement {
|
|
|
154
152
|
readonly value: Expression;
|
|
155
153
|
readonly operator: Token;
|
|
156
154
|
constructor(value: Expression, operator: Token);
|
|
155
|
+
readonly kind = AstNodeKind.IncrementStatement;
|
|
157
156
|
readonly range: Range;
|
|
158
157
|
transpile(state: BrsTranspileState): (string | SourceNode)[];
|
|
159
158
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -176,12 +175,14 @@ export declare class PrintStatement extends Statement {
|
|
|
176
175
|
readonly expressions: Array<Expression | PrintSeparatorTab | PrintSeparatorSpace>;
|
|
177
176
|
/**
|
|
178
177
|
* Creates a new internal representation of a BrightScript `print` statement.
|
|
179
|
-
* @param
|
|
180
|
-
*
|
|
178
|
+
* @param tokens the tokens for this statement
|
|
179
|
+
* @param tokens.print a print token
|
|
180
|
+
* @param expressions an array of expressions or `PrintSeparator`s to be evaluated and printed.
|
|
181
181
|
*/
|
|
182
182
|
constructor(tokens: {
|
|
183
183
|
print: Token;
|
|
184
184
|
}, expressions: Array<Expression | PrintSeparatorTab | PrintSeparatorSpace>);
|
|
185
|
+
readonly kind = AstNodeKind.PrintStatement;
|
|
185
186
|
readonly range: Range;
|
|
186
187
|
transpile(state: BrsTranspileState): (string | SourceNode)[];
|
|
187
188
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -193,7 +194,8 @@ export declare class DimStatement extends Statement {
|
|
|
193
194
|
dimensions?: Expression[];
|
|
194
195
|
closingSquare?: Token;
|
|
195
196
|
constructor(dimToken: Token, identifier?: Identifier, openingSquare?: Token, dimensions?: Expression[], closingSquare?: Token);
|
|
196
|
-
readonly
|
|
197
|
+
readonly kind = AstNodeKind.DimStatement;
|
|
198
|
+
range: Range;
|
|
197
199
|
transpile(state: BrsTranspileState): (string | SourceNode)[];
|
|
198
200
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
199
201
|
}
|
|
@@ -206,6 +208,7 @@ export declare class GotoStatement extends Statement {
|
|
|
206
208
|
goto: Token;
|
|
207
209
|
label: Token;
|
|
208
210
|
});
|
|
211
|
+
readonly kind = AstNodeKind.GotoStatement;
|
|
209
212
|
readonly range: Range;
|
|
210
213
|
transpile(state: BrsTranspileState): (string | SourceNode)[];
|
|
211
214
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -219,7 +222,9 @@ export declare class LabelStatement extends Statement {
|
|
|
219
222
|
identifier: Token;
|
|
220
223
|
colon: Token;
|
|
221
224
|
});
|
|
225
|
+
readonly kind = AstNodeKind.LabelStatement;
|
|
222
226
|
readonly range: Range;
|
|
227
|
+
getLeadingTrivia(): Token[];
|
|
223
228
|
transpile(state: BrsTranspileState): SourceNode[];
|
|
224
229
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
225
230
|
}
|
|
@@ -231,6 +236,7 @@ export declare class ReturnStatement extends Statement {
|
|
|
231
236
|
constructor(tokens: {
|
|
232
237
|
return: Token;
|
|
233
238
|
}, value?: Expression);
|
|
239
|
+
readonly kind = AstNodeKind.ReturnStatement;
|
|
234
240
|
readonly range: Range;
|
|
235
241
|
transpile(state: BrsTranspileState): any[];
|
|
236
242
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -242,6 +248,7 @@ export declare class EndStatement extends Statement {
|
|
|
242
248
|
constructor(tokens: {
|
|
243
249
|
end: Token;
|
|
244
250
|
});
|
|
251
|
+
readonly kind = AstNodeKind.EndStatement;
|
|
245
252
|
readonly range: Range;
|
|
246
253
|
transpile(state: BrsTranspileState): SourceNode[];
|
|
247
254
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -253,6 +260,7 @@ export declare class StopStatement extends Statement {
|
|
|
253
260
|
constructor(tokens: {
|
|
254
261
|
stop: Token;
|
|
255
262
|
});
|
|
263
|
+
readonly kind = AstNodeKind.StopStatement;
|
|
256
264
|
readonly range: Range;
|
|
257
265
|
transpile(state: BrsTranspileState): SourceNode[];
|
|
258
266
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -267,18 +275,26 @@ export declare class ForStatement extends Statement {
|
|
|
267
275
|
stepToken?: Token;
|
|
268
276
|
increment?: Expression;
|
|
269
277
|
constructor(forToken: Token, counterDeclaration: AssignmentStatement, toToken: Token, finalValue: Expression, body: Block, endForToken: Token, stepToken?: Token, increment?: Expression);
|
|
278
|
+
readonly kind = AstNodeKind.ForStatement;
|
|
270
279
|
readonly range: Range;
|
|
271
280
|
transpile(state: BrsTranspileState): any[];
|
|
272
281
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
273
282
|
}
|
|
274
283
|
export declare class ForEachStatement extends Statement {
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
284
|
+
readonly tokens: {
|
|
285
|
+
forEach: Token;
|
|
286
|
+
in: Token;
|
|
287
|
+
endFor: Token;
|
|
288
|
+
};
|
|
289
|
+
readonly item: Token;
|
|
290
|
+
readonly target: Expression;
|
|
291
|
+
readonly body: Block;
|
|
292
|
+
constructor(tokens: {
|
|
293
|
+
forEach: Token;
|
|
294
|
+
in: Token;
|
|
295
|
+
endFor: Token;
|
|
296
|
+
}, item: Token, target: Expression, body: Block);
|
|
297
|
+
readonly kind = AstNodeKind.ForEachStatement;
|
|
282
298
|
readonly range: Range;
|
|
283
299
|
transpile(state: BrsTranspileState): any[];
|
|
284
300
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -294,6 +310,7 @@ export declare class WhileStatement extends Statement {
|
|
|
294
310
|
while: Token;
|
|
295
311
|
endWhile: Token;
|
|
296
312
|
}, condition: Expression, body: Block);
|
|
313
|
+
readonly kind = AstNodeKind.WhileStatement;
|
|
297
314
|
readonly range: Range;
|
|
298
315
|
transpile(state: BrsTranspileState): any[];
|
|
299
316
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -302,12 +319,13 @@ export declare class DottedSetStatement extends Statement {
|
|
|
302
319
|
readonly obj: Expression;
|
|
303
320
|
readonly name: Identifier;
|
|
304
321
|
readonly value: Expression;
|
|
305
|
-
dot
|
|
306
|
-
|
|
307
|
-
|
|
322
|
+
readonly dot?: Token;
|
|
323
|
+
constructor(obj: Expression, name: Identifier, value: Expression, dot?: Token);
|
|
324
|
+
readonly kind = AstNodeKind.DottedSetStatement;
|
|
308
325
|
readonly range: Range;
|
|
309
326
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
310
327
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
328
|
+
getType(options: GetTypeOptions): BscType;
|
|
311
329
|
}
|
|
312
330
|
export declare class IndexedSetStatement extends Statement {
|
|
313
331
|
readonly obj: Expression;
|
|
@@ -315,8 +333,8 @@ export declare class IndexedSetStatement extends Statement {
|
|
|
315
333
|
readonly value: Expression;
|
|
316
334
|
readonly openingSquare: Token;
|
|
317
335
|
readonly closingSquare: Token;
|
|
318
|
-
|
|
319
|
-
|
|
336
|
+
constructor(obj: Expression, index: Expression, value: Expression, openingSquare: Token, closingSquare: Token);
|
|
337
|
+
readonly kind = AstNodeKind.IndexedSetStatement;
|
|
320
338
|
readonly range: Range;
|
|
321
339
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
322
340
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -330,6 +348,7 @@ export declare class LibraryStatement extends Statement implements TypedefProvid
|
|
|
330
348
|
library: Token;
|
|
331
349
|
filePath: Token | undefined;
|
|
332
350
|
});
|
|
351
|
+
readonly kind = AstNodeKind.LibraryStatement;
|
|
333
352
|
readonly range: Range;
|
|
334
353
|
transpile(state: BrsTranspileState): any[];
|
|
335
354
|
getTypedef(state: BrsTranspileState): any[];
|
|
@@ -337,30 +356,33 @@ export declare class LibraryStatement extends Statement implements TypedefProvid
|
|
|
337
356
|
}
|
|
338
357
|
export declare class NamespaceStatement extends Statement implements TypedefProvider {
|
|
339
358
|
keyword: Token;
|
|
340
|
-
nameExpression:
|
|
359
|
+
nameExpression: VariableExpression | DottedGetExpression;
|
|
341
360
|
body: Body;
|
|
342
361
|
endKeyword: Token;
|
|
343
|
-
|
|
344
|
-
readonly
|
|
345
|
-
constructor(keyword: Token, nameExpression: NamespacedVariableNameExpression, body: Body, endKeyword: Token, parentSymbolTable?: SymbolTable);
|
|
346
|
-
get range(): Range;
|
|
347
|
-
cacheRange(): Range;
|
|
348
|
-
private _range;
|
|
362
|
+
constructor(keyword: Token, nameExpression: VariableExpression | DottedGetExpression, body: Body, endKeyword: Token);
|
|
363
|
+
readonly kind = AstNodeKind.NamespaceStatement;
|
|
349
364
|
/**
|
|
350
365
|
* The string name for this namespace
|
|
351
366
|
*/
|
|
352
367
|
name: string;
|
|
368
|
+
get range(): Range;
|
|
369
|
+
private _range;
|
|
370
|
+
cacheRange(): Range;
|
|
353
371
|
getName(parseMode: ParseMode): string;
|
|
372
|
+
getLeadingTrivia(): Token[];
|
|
373
|
+
getNameParts(): Identifier[];
|
|
354
374
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
355
375
|
getTypedef(state: BrsTranspileState): string[];
|
|
356
376
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
377
|
+
getType(options: GetTypeOptions): NamespaceType;
|
|
357
378
|
}
|
|
358
379
|
export declare class ImportStatement extends Statement implements TypedefProvider {
|
|
359
380
|
readonly importToken: Token;
|
|
360
381
|
readonly filePathToken: Token;
|
|
361
382
|
constructor(importToken: Token, filePathToken: Token);
|
|
383
|
+
readonly kind = AstNodeKind.ImportStatement;
|
|
384
|
+
range: Range;
|
|
362
385
|
filePath: string;
|
|
363
|
-
readonly range: Range;
|
|
364
386
|
transpile(state: BrsTranspileState): (string | SourceNode)[];
|
|
365
387
|
/**
|
|
366
388
|
* Get the typedef for this statement
|
|
@@ -368,61 +390,83 @@ export declare class ImportStatement extends Statement implements TypedefProvide
|
|
|
368
390
|
getTypedef(state: BrsTranspileState): string[];
|
|
369
391
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
370
392
|
}
|
|
371
|
-
export declare class InterfaceStatement extends Statement implements TypedefProvider
|
|
372
|
-
|
|
373
|
-
parentInterfaceName: NamespacedVariableNameExpression;
|
|
393
|
+
export declare class InterfaceStatement extends Statement implements TypedefProvider {
|
|
394
|
+
parentInterfaceName: TypeExpression;
|
|
374
395
|
body: Statement[];
|
|
375
|
-
|
|
376
|
-
readonly
|
|
377
|
-
constructor(interfaceToken: Token, name: Identifier, extendsToken: Token, parentInterfaceName: NamespacedVariableNameExpression, body: Statement[], endInterfaceToken: Token, namespaceName: NamespacedVariableNameExpression);
|
|
396
|
+
constructor(interfaceToken: Token, name: Identifier, extendsToken: Token, parentInterfaceName: TypeExpression, body: Statement[], endInterfaceToken: Token);
|
|
397
|
+
readonly kind = AstNodeKind.InterfaceStatement;
|
|
378
398
|
tokens: {
|
|
379
399
|
interface: Token;
|
|
380
400
|
name: Identifier;
|
|
381
401
|
extends: Token;
|
|
382
402
|
endInterface: Token;
|
|
383
403
|
};
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
methods: InterfaceMethodStatement[];
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
hasParent(): boolean;
|
|
390
|
-
getParentName(): boolean;
|
|
404
|
+
range: Range;
|
|
405
|
+
get fields(): InterfaceFieldStatement[];
|
|
406
|
+
get methods(): InterfaceMethodStatement[];
|
|
407
|
+
hasParentInterface(): boolean;
|
|
408
|
+
getLeadingTrivia(): Token[];
|
|
391
409
|
/**
|
|
392
|
-
*
|
|
393
|
-
* @returns array of possible parent interface names
|
|
410
|
+
* The name of the interface WITH its leading namespace (if applicable)
|
|
394
411
|
*/
|
|
395
|
-
|
|
396
|
-
getThisBscType(): InterfaceType;
|
|
412
|
+
get fullName(): string;
|
|
397
413
|
/**
|
|
398
|
-
* The name of the interface
|
|
414
|
+
* The name of the interface (without the namespace prefix)
|
|
415
|
+
*/
|
|
416
|
+
get name(): string;
|
|
417
|
+
/**
|
|
418
|
+
* Get the name of this expression based on the parse mode
|
|
399
419
|
*/
|
|
400
420
|
getName(parseMode: ParseMode): string;
|
|
401
421
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
402
422
|
getTypedef(state: BrsTranspileState): TranspileResult;
|
|
403
423
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
424
|
+
getType(options: GetTypeOptions): InterfaceType;
|
|
404
425
|
}
|
|
405
426
|
export declare class InterfaceFieldStatement extends Statement implements TypedefProvider {
|
|
406
|
-
|
|
407
|
-
namespaceName?: NamespacedVariableNameExpression;
|
|
427
|
+
typeExpression?: TypeExpression;
|
|
408
428
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
409
|
-
constructor(nameToken: Identifier, asToken: Token,
|
|
410
|
-
readonly
|
|
429
|
+
constructor(nameToken: Identifier, asToken: Token, typeExpression?: TypeExpression, optionalToken?: Token);
|
|
430
|
+
readonly kind = AstNodeKind.InterfaceFieldStatement;
|
|
431
|
+
range: Range;
|
|
411
432
|
tokens: {
|
|
412
433
|
name: Identifier;
|
|
413
434
|
as: Token;
|
|
435
|
+
optional?: Token;
|
|
414
436
|
};
|
|
415
|
-
|
|
416
|
-
get name():
|
|
437
|
+
getLeadingTrivia(): Token[];
|
|
438
|
+
get name(): string;
|
|
439
|
+
get isOptional(): boolean;
|
|
417
440
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
418
441
|
getTypedef(state: BrsTranspileState): (string | SourceNode)[];
|
|
442
|
+
getType(options: GetTypeOptions): BscType;
|
|
419
443
|
}
|
|
420
|
-
export declare class InterfaceMethodStatement extends
|
|
444
|
+
export declare class InterfaceMethodStatement extends Statement implements TypedefProvider {
|
|
445
|
+
params: FunctionParameterExpression[];
|
|
446
|
+
returnTypeExpression?: TypeExpression;
|
|
421
447
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
422
|
-
constructor(
|
|
448
|
+
constructor(functionTypeToken: Token, nameToken: Identifier, leftParen: Token, params: FunctionParameterExpression[], rightParen: Token, asToken?: Token, returnTypeExpression?: TypeExpression, optionalToken?: Token);
|
|
449
|
+
readonly kind = AstNodeKind.InterfaceMethodStatement;
|
|
450
|
+
get range(): Range;
|
|
451
|
+
/**
|
|
452
|
+
* Get the name of this method.
|
|
453
|
+
*/
|
|
454
|
+
getName(parseMode: ParseMode): string;
|
|
455
|
+
tokens: {
|
|
456
|
+
optional?: Token;
|
|
457
|
+
functionType: Token;
|
|
458
|
+
name: Identifier;
|
|
459
|
+
leftParen: Token;
|
|
460
|
+
rightParen: Token;
|
|
461
|
+
as: Token;
|
|
462
|
+
};
|
|
463
|
+
get isOptional(): boolean;
|
|
464
|
+
getLeadingTrivia(): Token[];
|
|
423
465
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
466
|
+
getTypedef(state: BrsTranspileState): TranspileResult;
|
|
467
|
+
getType(options: GetTypeOptions): TypedFunctionType;
|
|
424
468
|
}
|
|
425
|
-
export declare class ClassStatement extends Statement implements TypedefProvider
|
|
469
|
+
export declare class ClassStatement extends Statement implements TypedefProvider {
|
|
426
470
|
readonly classKeyword: Token;
|
|
427
471
|
/**
|
|
428
472
|
* The name of the class (without namespace prefix)
|
|
@@ -431,24 +475,19 @@ export declare class ClassStatement extends Statement implements TypedefProvider
|
|
|
431
475
|
body: Statement[];
|
|
432
476
|
readonly end: Token;
|
|
433
477
|
readonly extendsKeyword?: Token;
|
|
434
|
-
readonly parentClassName?:
|
|
435
|
-
readonly namespaceName?: NamespacedVariableNameExpression;
|
|
436
|
-
readonly currentSymbolTable?: SymbolTable;
|
|
437
|
-
readonly symbolTable: SymbolTable;
|
|
438
|
-
readonly memberTable: SymbolTable;
|
|
478
|
+
readonly parentClassName?: TypeExpression;
|
|
439
479
|
constructor(classKeyword: Token,
|
|
440
480
|
/**
|
|
441
481
|
* The name of the class (without namespace prefix)
|
|
442
482
|
*/
|
|
443
|
-
name: Identifier, body: Statement[], end: Token, extendsKeyword?: Token, parentClassName?:
|
|
483
|
+
name: Identifier, body: Statement[], end: Token, extendsKeyword?: Token, parentClassName?: TypeExpression);
|
|
484
|
+
readonly kind = AstNodeKind.ClassStatement;
|
|
444
485
|
getName(parseMode: ParseMode): string;
|
|
486
|
+
getLeadingTrivia(): Token[];
|
|
445
487
|
memberMap: Record<string, MemberStatement>;
|
|
446
488
|
methods: MethodStatement[];
|
|
447
489
|
fields: FieldStatement[];
|
|
448
490
|
readonly range: Range;
|
|
449
|
-
getThisBscType(): CustomType;
|
|
450
|
-
getConstructorFunctionType(): import("../types/TypedFunctionType").TypedFunctionType;
|
|
451
|
-
buildSymbolTable(parentClass?: InheritableStatement): void;
|
|
452
491
|
transpile(state: BrsTranspileState): any[];
|
|
453
492
|
getTypedef(state: BrsTranspileState): TranspileResult;
|
|
454
493
|
/**
|
|
@@ -457,18 +496,14 @@ export declare class ClassStatement extends Statement implements TypedefProvider
|
|
|
457
496
|
* The base class is index 0, its child is index 1, and so on.
|
|
458
497
|
*/
|
|
459
498
|
getParentClassIndex(state: BrsTranspileState): number;
|
|
460
|
-
|
|
461
|
-
/**
|
|
462
|
-
* Gets an array of possible parent class names, taking into account the namespace this class was created under
|
|
463
|
-
* @returns array of possible parent class names
|
|
464
|
-
*/
|
|
465
|
-
getPossibleFullParentNames(): string[];
|
|
499
|
+
hasParentClass(): boolean;
|
|
466
500
|
/**
|
|
467
501
|
* Get all ancestor classes, in closest-to-furthest order (i.e. 0 is parent, 1 is grandparent, etc...).
|
|
468
502
|
* This will return an empty array if no ancestors were found
|
|
469
503
|
*/
|
|
470
504
|
getAncestors(state: BrsTranspileState): ClassStatement[];
|
|
471
505
|
private getBuilderName;
|
|
506
|
+
getConstructorType(): TypedFunctionType;
|
|
472
507
|
/**
|
|
473
508
|
* Get the constructor function for this class (if exists), or undefined if not exist
|
|
474
509
|
*/
|
|
@@ -490,16 +525,22 @@ export declare class ClassStatement extends Statement implements TypedefProvider
|
|
|
490
525
|
*/
|
|
491
526
|
private getTranspiledClassFunction;
|
|
492
527
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
528
|
+
getType(options: GetTypeOptions): ClassType;
|
|
493
529
|
}
|
|
494
530
|
export declare class MethodStatement extends FunctionStatement {
|
|
495
531
|
override: Token;
|
|
496
532
|
constructor(modifiers: Token | Token[], name: Identifier, func: FunctionExpression, override: Token);
|
|
533
|
+
readonly kind: AstNodeKind;
|
|
497
534
|
modifiers: Token[];
|
|
498
535
|
get accessModifier(): Token;
|
|
499
|
-
|
|
500
|
-
|
|
536
|
+
readonly range: Range;
|
|
537
|
+
/**
|
|
538
|
+
* Get the name of this method.
|
|
539
|
+
*/
|
|
540
|
+
getName(parseMode: ParseMode): string;
|
|
541
|
+
getLeadingTrivia(): Token[];
|
|
501
542
|
transpile(state: BrsTranspileState): any[];
|
|
502
|
-
getTypedef(state: BrsTranspileState): string[];
|
|
543
|
+
getTypedef(state: BrsTranspileState): (string | SourceNode)[];
|
|
503
544
|
/**
|
|
504
545
|
* All child classes must call the parent constructor. The type checker will warn users when they don't call it in their own class,
|
|
505
546
|
* but we still need to call it even if they have omitted it. This injects the super call if it's missing
|
|
@@ -515,25 +556,25 @@ export declare class FieldStatement extends Statement implements TypedefProvider
|
|
|
515
556
|
readonly accessModifier?: Token;
|
|
516
557
|
readonly name?: Identifier;
|
|
517
558
|
readonly as?: Token;
|
|
518
|
-
readonly
|
|
559
|
+
readonly typeExpression?: TypeExpression;
|
|
519
560
|
readonly equal?: Token;
|
|
520
561
|
readonly initialValue?: Expression;
|
|
521
|
-
readonly
|
|
522
|
-
constructor(accessModifier?: Token, name?: Identifier, as?: Token,
|
|
523
|
-
readonly
|
|
562
|
+
readonly optional?: Token;
|
|
563
|
+
constructor(accessModifier?: Token, name?: Identifier, as?: Token, typeExpression?: TypeExpression, equal?: Token, initialValue?: Expression, optional?: Token);
|
|
564
|
+
readonly kind = AstNodeKind.FieldStatement;
|
|
524
565
|
/**
|
|
525
566
|
* Derive a ValueKind from the type token, or the initial value.
|
|
526
567
|
* Defaults to `DynamicType`
|
|
527
568
|
*/
|
|
528
|
-
getType(
|
|
569
|
+
getType(options: GetTypeOptions): BscType;
|
|
570
|
+
readonly range: Range;
|
|
571
|
+
getLeadingTrivia(): Token[];
|
|
572
|
+
get isOptional(): boolean;
|
|
529
573
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
530
574
|
getTypedef(state: BrsTranspileState): any[];
|
|
531
575
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
532
576
|
}
|
|
533
577
|
export declare type MemberStatement = FieldStatement | MethodStatement;
|
|
534
|
-
export declare type InterfaceMemberStatement = InterfaceFieldStatement | InterfaceMethodStatement;
|
|
535
|
-
export declare type MemberFieldStatement = FieldStatement | InterfaceFieldStatement;
|
|
536
|
-
export declare type MemberMethodStatement = MethodStatement | InterfaceMethodStatement;
|
|
537
578
|
export declare class TryCatchStatement extends Statement {
|
|
538
579
|
tokens: {
|
|
539
580
|
try: Token;
|
|
@@ -545,6 +586,7 @@ export declare class TryCatchStatement extends Statement {
|
|
|
545
586
|
try: Token;
|
|
546
587
|
endTry?: Token;
|
|
547
588
|
}, tryBranch?: Block, catchStatement?: CatchStatement);
|
|
589
|
+
readonly kind = AstNodeKind.TryCatchStatement;
|
|
548
590
|
readonly range: Range;
|
|
549
591
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
550
592
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
@@ -558,7 +600,8 @@ export declare class CatchStatement extends Statement {
|
|
|
558
600
|
constructor(tokens: {
|
|
559
601
|
catch: Token;
|
|
560
602
|
}, exceptionVariable?: Identifier, catchBranch?: Block);
|
|
561
|
-
|
|
603
|
+
readonly kind = AstNodeKind.CatchStatement;
|
|
604
|
+
range: Range;
|
|
562
605
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
563
606
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
564
607
|
}
|
|
@@ -566,7 +609,8 @@ export declare class ThrowStatement extends Statement {
|
|
|
566
609
|
throwToken: Token;
|
|
567
610
|
expression?: Expression;
|
|
568
611
|
constructor(throwToken: Token, expression?: Expression);
|
|
569
|
-
readonly
|
|
612
|
+
readonly kind = AstNodeKind.ThrowStatement;
|
|
613
|
+
range: Range;
|
|
570
614
|
transpile(state: BrsTranspileState): (string | SourceNode)[];
|
|
571
615
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
572
616
|
}
|
|
@@ -577,22 +621,22 @@ export declare class EnumStatement extends Statement implements TypedefProvider
|
|
|
577
621
|
endEnum: Token;
|
|
578
622
|
};
|
|
579
623
|
body: Array<EnumMemberStatement | CommentStatement>;
|
|
580
|
-
namespaceName?: NamespacedVariableNameExpression;
|
|
581
|
-
readonly symbolTable: SymbolTable;
|
|
582
624
|
constructor(tokens: {
|
|
583
625
|
enum: Token;
|
|
584
626
|
name: Identifier;
|
|
585
627
|
endEnum: Token;
|
|
586
|
-
}, body: Array<EnumMemberStatement | CommentStatement
|
|
587
|
-
readonly
|
|
628
|
+
}, body: Array<EnumMemberStatement | CommentStatement>);
|
|
629
|
+
readonly kind = AstNodeKind.EnumStatement;
|
|
630
|
+
symbolTable: SymbolTable;
|
|
631
|
+
get range(): Range;
|
|
588
632
|
getMembers(): EnumMemberStatement[];
|
|
633
|
+
getLeadingTrivia(): Token[];
|
|
589
634
|
/**
|
|
590
635
|
* Get a map of member names and their values.
|
|
591
636
|
* All values are stored as their AST LiteralExpression representation (i.e. string enum values include the wrapping quotes)
|
|
592
637
|
*/
|
|
593
638
|
getMemberValueMap(): Map<string, string>;
|
|
594
639
|
getMemberValue(name: string): string;
|
|
595
|
-
buildSymbolTable(): void;
|
|
596
640
|
/**
|
|
597
641
|
* The name of the enum (without the namespace prefix)
|
|
598
642
|
*/
|
|
@@ -601,10 +645,10 @@ export declare class EnumStatement extends Statement implements TypedefProvider
|
|
|
601
645
|
* The name of the enum WITH its leading namespace (if applicable)
|
|
602
646
|
*/
|
|
603
647
|
get fullName(): string;
|
|
604
|
-
getThisBscType(): EnumType;
|
|
605
648
|
transpile(state: BrsTranspileState): any[];
|
|
606
649
|
getTypedef(state: BrsTranspileState): TranspileResult;
|
|
607
650
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
651
|
+
getType(options: GetTypeOptions): EnumType;
|
|
608
652
|
}
|
|
609
653
|
export declare class EnumMemberStatement extends Statement implements TypedefProvider {
|
|
610
654
|
tokens: {
|
|
@@ -616,12 +660,54 @@ export declare class EnumMemberStatement extends Statement implements TypedefPro
|
|
|
616
660
|
name: Identifier;
|
|
617
661
|
equal?: Token;
|
|
618
662
|
}, value?: Expression);
|
|
619
|
-
readonly
|
|
663
|
+
readonly kind = AstNodeKind.EnumMemberStatement;
|
|
664
|
+
get range(): Range;
|
|
620
665
|
/**
|
|
621
666
|
* The name of the member
|
|
622
667
|
*/
|
|
623
668
|
get name(): string;
|
|
669
|
+
getLeadingTrivia(): Token[];
|
|
624
670
|
transpile(state: BrsTranspileState): TranspileResult;
|
|
625
671
|
getTypedef(state: BrsTranspileState): (string | SourceNode)[];
|
|
626
672
|
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
673
|
+
getType(options: GetTypeOptions): EnumMemberType;
|
|
674
|
+
}
|
|
675
|
+
export declare class ConstStatement extends Statement implements TypedefProvider {
|
|
676
|
+
tokens: {
|
|
677
|
+
const: Token;
|
|
678
|
+
name: Identifier;
|
|
679
|
+
equals: Token;
|
|
680
|
+
};
|
|
681
|
+
value: Expression;
|
|
682
|
+
constructor(tokens: {
|
|
683
|
+
const: Token;
|
|
684
|
+
name: Identifier;
|
|
685
|
+
equals: Token;
|
|
686
|
+
}, value: Expression);
|
|
687
|
+
readonly kind = AstNodeKind.ConstStatement;
|
|
688
|
+
range: Range;
|
|
689
|
+
get name(): string;
|
|
690
|
+
getLeadingTrivia(): Token[];
|
|
691
|
+
/**
|
|
692
|
+
* The name of the statement WITH its leading namespace (if applicable)
|
|
693
|
+
*/
|
|
694
|
+
get fullName(): string;
|
|
695
|
+
transpile(state: BrsTranspileState): TranspileResult;
|
|
696
|
+
getTypedef(state: BrsTranspileState): (string | SourceNode)[];
|
|
697
|
+
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
698
|
+
getType(options: GetTypeOptions): BscType;
|
|
699
|
+
}
|
|
700
|
+
export declare class ContinueStatement extends Statement {
|
|
701
|
+
tokens: {
|
|
702
|
+
continue: Token;
|
|
703
|
+
loopType: Token;
|
|
704
|
+
};
|
|
705
|
+
constructor(tokens: {
|
|
706
|
+
continue: Token;
|
|
707
|
+
loopType: Token;
|
|
708
|
+
});
|
|
709
|
+
readonly kind = AstNodeKind.ContinueStatement;
|
|
710
|
+
range: Range;
|
|
711
|
+
transpile(state: BrsTranspileState): (string | SourceNode)[];
|
|
712
|
+
walk(visitor: WalkVisitor, options: WalkOptions): void;
|
|
627
713
|
}
|