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