brighterscript 1.0.0-alpha.2 → 1.0.0-alpha.22
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 +643 -253
- package/README.md +33 -9
- package/bsconfig.schema.json +22 -2
- package/dist/BsConfig.d.ts +9 -0
- package/dist/Cache.d.ts +5 -6
- package/dist/Cache.js +12 -11
- package/dist/Cache.js.map +1 -1
- package/dist/CodeActionUtil.d.ts +11 -2
- package/dist/CodeActionUtil.js +17 -3
- package/dist/CodeActionUtil.js.map +1 -1
- package/dist/CommentFlagProcessor.d.ts +4 -4
- package/dist/CommentFlagProcessor.js +5 -3
- package/dist/CommentFlagProcessor.js.map +1 -1
- package/dist/DependencyGraph.d.ts +2 -2
- package/dist/DependencyGraph.js +20 -7
- package/dist/DependencyGraph.js.map +1 -1
- package/dist/DiagnosticCollection.d.ts +3 -3
- package/dist/DiagnosticCollection.js +11 -11
- package/dist/DiagnosticCollection.js.map +1 -1
- package/dist/DiagnosticFilterer.js +5 -4
- package/dist/DiagnosticFilterer.js.map +1 -1
- package/dist/DiagnosticMessages.d.ts +59 -4
- package/dist/DiagnosticMessages.js +65 -7
- package/dist/DiagnosticMessages.js.map +1 -1
- package/dist/LanguageServer.d.ts +51 -39
- package/dist/LanguageServer.js +316 -232
- package/dist/LanguageServer.js.map +1 -1
- package/dist/Logger.d.ts +2 -0
- package/dist/Logger.js +10 -8
- package/dist/Logger.js.map +1 -1
- package/dist/PluginInterface.d.ts +7 -3
- package/dist/PluginInterface.js +9 -0
- package/dist/PluginInterface.js.map +1 -1
- package/dist/Program.d.ts +43 -25
- package/dist/Program.js +212 -95
- package/dist/Program.js.map +1 -1
- package/dist/ProgramBuilder.d.ts +4 -0
- package/dist/ProgramBuilder.js +36 -20
- package/dist/ProgramBuilder.js.map +1 -1
- package/dist/Scope.d.ts +126 -29
- package/dist/Scope.js +433 -156
- package/dist/Scope.js.map +1 -1
- package/dist/SemanticTokenUtils.d.ts +14 -0
- package/dist/SemanticTokenUtils.js +81 -0
- package/dist/SemanticTokenUtils.js.map +1 -0
- package/dist/SymbolTable.d.ts +10 -4
- package/dist/SymbolTable.js +55 -13
- package/dist/SymbolTable.js.map +1 -1
- package/dist/XmlScope.d.ts +7 -2
- package/dist/XmlScope.js +65 -27
- package/dist/XmlScope.js.map +1 -1
- package/dist/astUtils/AstEditor.d.ts +65 -0
- package/dist/astUtils/AstEditor.js +239 -0
- package/dist/astUtils/AstEditor.js.map +1 -0
- package/dist/{types/FunctionType.spec.d.ts → astUtils/AstEditor.spec.d.ts} +0 -0
- package/dist/astUtils/AstEditor.spec.js +254 -0
- package/dist/astUtils/AstEditor.spec.js.map +1 -0
- package/dist/astUtils/creators.d.ts +28 -6
- package/dist/astUtils/creators.js +137 -19
- package/dist/astUtils/creators.js.map +1 -1
- package/dist/astUtils/creators.spec.js +14 -4
- package/dist/astUtils/creators.spec.js.map +1 -1
- package/dist/astUtils/reflection.d.ts +32 -10
- package/dist/astUtils/reflection.js +82 -7
- package/dist/astUtils/reflection.js.map +1 -1
- package/dist/astUtils/reflection.spec.js +130 -119
- package/dist/astUtils/reflection.spec.js.map +1 -1
- package/dist/astUtils/stackedVisitor.js.map +1 -1
- package/dist/astUtils/stackedVisitor.spec.js +13 -13
- package/dist/astUtils/stackedVisitor.spec.js.map +1 -1
- package/dist/astUtils/visitors.d.ts +76 -51
- package/dist/astUtils/visitors.js +31 -11
- package/dist/astUtils/visitors.js.map +1 -1
- package/dist/astUtils/visitors.spec.js +126 -32
- package/dist/astUtils/visitors.spec.js.map +1 -1
- package/dist/astUtils/xml.d.ts +4 -3
- package/dist/astUtils/xml.js +8 -3
- package/dist/astUtils/xml.js.map +1 -1
- package/dist/bscPlugin/BscPlugin.d.ts +7 -1
- package/dist/bscPlugin/BscPlugin.js +28 -0
- package/dist/bscPlugin/BscPlugin.js.map +1 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +4 -4
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +26 -26
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +9 -0
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +108 -0
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -0
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.d.ts +1 -0
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +130 -0
- package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -0
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.d.ts +8 -0
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js +52 -0
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js.map +1 -0
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.d.ts +1 -0
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +32 -0
- package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +1 -0
- package/dist/bscPlugin/validation/BrsFileValidator.d.ts +9 -0
- package/dist/bscPlugin/validation/BrsFileValidator.js +66 -0
- package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -0
- package/dist/bscPlugin/validation/ScopeValidator.d.ts +29 -0
- package/dist/bscPlugin/validation/ScopeValidator.js +183 -0
- package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -0
- package/dist/cli.js +10 -3
- package/dist/cli.js.map +1 -1
- package/dist/diagnosticUtils.d.ts +1 -0
- package/dist/diagnosticUtils.js +15 -8
- package/dist/diagnosticUtils.js.map +1 -1
- package/dist/examples/plugins/removePrint.js +12 -14
- package/dist/examples/plugins/removePrint.js.map +1 -1
- package/dist/files/BrsFile.Class.spec.js +717 -147
- package/dist/files/BrsFile.Class.spec.js.map +1 -1
- package/dist/files/BrsFile.d.ts +70 -30
- package/dist/files/BrsFile.js +719 -353
- package/dist/files/BrsFile.js.map +1 -1
- package/dist/files/BrsFile.spec.js +1238 -449
- package/dist/files/BrsFile.spec.js.map +1 -1
- package/dist/files/XmlFile.d.ts +6 -5
- package/dist/files/XmlFile.js +38 -30
- package/dist/files/XmlFile.js.map +1 -1
- package/dist/files/XmlFile.spec.js +302 -237
- package/dist/files/XmlFile.spec.js.map +1 -1
- package/dist/files/tests/imports.spec.js +44 -42
- package/dist/files/tests/imports.spec.js.map +1 -1
- package/dist/files/tests/optionalChaning.spec.d.ts +1 -0
- package/dist/files/tests/optionalChaning.spec.js +88 -0
- package/dist/files/tests/optionalChaning.spec.js.map +1 -0
- package/dist/globalCallables.d.ts +3 -1
- package/dist/globalCallables.js +424 -152
- package/dist/globalCallables.js.map +1 -1
- package/dist/index.d.ts +13 -3
- package/dist/index.js +28 -5
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +133 -16
- package/dist/lexer/Lexer.d.ts +19 -1
- package/dist/lexer/Lexer.js +127 -21
- package/dist/lexer/Lexer.js.map +1 -1
- package/dist/lexer/Lexer.spec.js +657 -536
- package/dist/lexer/Lexer.spec.js.map +1 -1
- package/dist/lexer/Token.d.ts +2 -2
- package/dist/lexer/TokenKind.d.ts +13 -1
- package/dist/lexer/TokenKind.js +60 -3
- package/dist/lexer/TokenKind.js.map +1 -1
- package/dist/parser/BrsTranspileState.d.ts +9 -0
- package/dist/parser/BrsTranspileState.js +14 -0
- package/dist/parser/BrsTranspileState.js.map +1 -1
- package/dist/parser/Expression.d.ts +150 -34
- package/dist/parser/Expression.js +335 -165
- package/dist/parser/Expression.js.map +1 -1
- package/dist/parser/Parser.Class.spec.js +189 -89
- package/dist/parser/Parser.Class.spec.js.map +1 -1
- package/dist/parser/Parser.d.ts +153 -30
- package/dist/parser/Parser.js +1100 -503
- package/dist/parser/Parser.js.map +1 -1
- package/dist/parser/Parser.spec.js +687 -266
- package/dist/parser/Parser.spec.js.map +1 -1
- package/dist/parser/SGParser.d.ts +41 -4
- package/dist/parser/SGParser.js +186 -175
- package/dist/parser/SGParser.js.map +1 -1
- package/dist/parser/SGParser.spec.js +35 -22
- package/dist/parser/SGParser.spec.js.map +1 -1
- package/dist/parser/SGTypes.d.ts +206 -38
- package/dist/parser/SGTypes.js +470 -161
- package/dist/parser/SGTypes.js.map +1 -1
- package/dist/parser/SGTypes.spec.d.ts +1 -0
- package/dist/parser/SGTypes.spec.js +351 -0
- package/dist/parser/SGTypes.spec.js.map +1 -0
- package/dist/parser/Statement.d.ts +202 -48
- package/dist/parser/Statement.js +648 -193
- package/dist/parser/Statement.js.map +1 -1
- package/dist/parser/Statement.spec.js +11 -11
- package/dist/parser/Statement.spec.js.map +1 -1
- package/dist/parser/TranspileState.d.ts +1 -1
- package/dist/parser/TranspileState.js +15 -7
- package/dist/parser/TranspileState.js.map +1 -1
- package/dist/parser/tests/Parser.spec.d.ts +10 -9
- package/dist/parser/tests/Parser.spec.js +15 -11
- package/dist/parser/tests/Parser.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/For.spec.js +60 -60
- package/dist/parser/tests/controlFlow/For.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/ForEach.spec.js +40 -39
- package/dist/parser/tests/controlFlow/ForEach.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/If.spec.js +213 -194
- package/dist/parser/tests/controlFlow/If.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/While.spec.js +37 -37
- package/dist/parser/tests/controlFlow/While.spec.js.map +1 -1
- package/dist/parser/tests/expression/Additive.spec.js +30 -30
- package/dist/parser/tests/expression/Additive.spec.js.map +1 -1
- package/dist/parser/tests/expression/ArrayLiterals.spec.js +119 -119
- package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +1 -1
- package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +162 -138
- package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +1 -1
- package/dist/parser/tests/expression/Boolean.spec.js +24 -24
- package/dist/parser/tests/expression/Boolean.spec.js.map +1 -1
- package/dist/parser/tests/expression/Call.spec.js +41 -40
- package/dist/parser/tests/expression/Call.spec.js.map +1 -1
- package/dist/parser/tests/expression/Exponential.spec.js +17 -17
- package/dist/parser/tests/expression/Exponential.spec.js.map +1 -1
- package/dist/parser/tests/expression/Function.spec.js +256 -256
- package/dist/parser/tests/expression/Function.spec.js.map +1 -1
- package/dist/parser/tests/expression/Indexing.spec.js +87 -87
- package/dist/parser/tests/expression/Indexing.spec.js.map +1 -1
- package/dist/parser/tests/expression/Multiplicative.spec.js +37 -37
- package/dist/parser/tests/expression/Multiplicative.spec.js.map +1 -1
- package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +75 -63
- package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
- package/dist/parser/tests/expression/PrefixUnary.spec.js +41 -41
- package/dist/parser/tests/expression/PrefixUnary.spec.js.map +1 -1
- package/dist/parser/tests/expression/Primary.spec.js +41 -41
- package/dist/parser/tests/expression/Primary.spec.js.map +1 -1
- package/dist/parser/tests/expression/RegexLiteralExpression.spec.d.ts +1 -0
- package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +171 -0
- package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -0
- package/dist/parser/tests/expression/Relational.spec.js +43 -43
- package/dist/parser/tests/expression/Relational.spec.js.map +1 -1
- package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +9 -9
- package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +1 -1
- package/dist/parser/tests/expression/TemplateStringExpression.spec.js +28 -28
- package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
- package/dist/parser/tests/expression/TernaryExpression.spec.js +102 -102
- package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
- package/dist/parser/tests/statement/AssignmentOperators.spec.js +36 -36
- package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +1 -1
- package/dist/parser/tests/statement/Declaration.spec.js +44 -44
- package/dist/parser/tests/statement/Declaration.spec.js.map +1 -1
- package/dist/parser/tests/statement/Dim.spec.js +21 -21
- package/dist/parser/tests/statement/Dim.spec.js.map +1 -1
- package/dist/parser/tests/statement/Enum.spec.d.ts +1 -0
- package/dist/parser/tests/statement/Enum.spec.js +840 -0
- package/dist/parser/tests/statement/Enum.spec.js.map +1 -0
- package/dist/parser/tests/statement/For.spec.d.ts +1 -0
- package/dist/parser/tests/statement/For.spec.js +46 -0
- package/dist/parser/tests/statement/For.spec.js.map +1 -0
- package/dist/parser/tests/statement/ForEach.spec.d.ts +1 -0
- package/dist/parser/tests/statement/ForEach.spec.js +37 -0
- package/dist/parser/tests/statement/ForEach.spec.js.map +1 -0
- package/dist/parser/tests/statement/Function.spec.js +198 -197
- package/dist/parser/tests/statement/Function.spec.js.map +1 -1
- package/dist/parser/tests/statement/Goto.spec.js +15 -14
- package/dist/parser/tests/statement/Goto.spec.js.map +1 -1
- package/dist/parser/tests/statement/Increment.spec.js +50 -50
- package/dist/parser/tests/statement/Increment.spec.js.map +1 -1
- package/dist/parser/tests/statement/InterfaceStatement.spec.d.ts +1 -0
- package/dist/parser/tests/statement/InterfaceStatement.spec.js +254 -0
- package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -0
- package/dist/parser/tests/statement/LibraryStatement.spec.js +17 -17
- package/dist/parser/tests/statement/LibraryStatement.spec.js.map +1 -1
- package/dist/parser/tests/statement/Misc.spec.js +108 -106
- package/dist/parser/tests/statement/Misc.spec.js.map +1 -1
- package/dist/parser/tests/statement/PrintStatement.spec.js +40 -40
- package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
- package/dist/parser/tests/statement/ReturnStatement.spec.js +46 -46
- package/dist/parser/tests/statement/ReturnStatement.spec.js.map +1 -1
- package/dist/parser/tests/statement/Set.spec.js +83 -83
- package/dist/parser/tests/statement/Set.spec.js.map +1 -1
- package/dist/parser/tests/statement/Stop.spec.js +12 -11
- package/dist/parser/tests/statement/Stop.spec.js.map +1 -1
- package/dist/parser/tests/statement/Throw.spec.js +5 -5
- package/dist/parser/tests/statement/Throw.spec.js.map +1 -1
- package/dist/parser/tests/statement/TryCatch.spec.js +15 -13
- package/dist/parser/tests/statement/TryCatch.spec.js.map +1 -1
- package/dist/preprocessor/Chunk.d.ts +1 -1
- package/dist/preprocessor/Chunk.js.map +1 -1
- package/dist/preprocessor/Manifest.d.ts +5 -5
- package/dist/preprocessor/Manifest.js +14 -35
- package/dist/preprocessor/Manifest.js.map +1 -1
- package/dist/preprocessor/Manifest.spec.d.ts +1 -0
- package/dist/preprocessor/Manifest.spec.js +78 -103
- package/dist/preprocessor/Manifest.spec.js.map +1 -1
- package/dist/preprocessor/Preprocessor.d.ts +1 -1
- package/dist/preprocessor/Preprocessor.js +8 -8
- package/dist/preprocessor/Preprocessor.js.map +1 -1
- package/dist/preprocessor/Preprocessor.spec.js +49 -49
- package/dist/preprocessor/Preprocessor.spec.js.map +1 -1
- package/dist/preprocessor/PreprocessorParser.spec.js +72 -72
- package/dist/preprocessor/PreprocessorParser.spec.js.map +1 -1
- package/dist/roku-types/data.json +21891 -0
- package/dist/roku-types/index.d.ts +6776 -0
- package/dist/roku-types/index.js +11 -0
- package/dist/roku-types/index.js.map +1 -0
- package/dist/types/ArrayType.d.ts +8 -5
- package/dist/types/ArrayType.js +52 -12
- package/dist/types/ArrayType.js.map +1 -1
- package/dist/types/ArrayType.spec.js +72 -11
- package/dist/types/ArrayType.spec.js.map +1 -1
- package/dist/types/BooleanType.d.ts +4 -2
- package/dist/types/BooleanType.js +9 -4
- package/dist/types/BooleanType.js.map +1 -1
- package/dist/types/BooleanType.spec.js +5 -3
- package/dist/types/BooleanType.spec.js.map +1 -1
- package/dist/types/BscType.d.ts +20 -5
- package/dist/types/BscType.js +24 -0
- package/dist/types/BscType.js.map +1 -1
- package/dist/types/CustomType.d.ts +8 -6
- package/dist/types/CustomType.js +20 -11
- package/dist/types/CustomType.js.map +1 -1
- package/dist/types/DoubleType.d.ts +2 -0
- package/dist/types/DoubleType.js +14 -9
- package/dist/types/DoubleType.js.map +1 -1
- package/dist/types/DoubleType.spec.js +5 -3
- package/dist/types/DoubleType.spec.js.map +1 -1
- package/dist/types/DynamicType.d.ts +2 -0
- package/dist/types/DynamicType.js +6 -2
- package/dist/types/DynamicType.js.map +1 -1
- package/dist/types/DynamicType.spec.js +2 -2
- package/dist/types/DynamicType.spec.js.map +1 -1
- package/dist/types/EnumType.d.ts +22 -0
- package/dist/types/EnumType.js +55 -0
- package/dist/types/EnumType.js.map +1 -0
- package/dist/types/FloatType.d.ts +2 -0
- package/dist/types/FloatType.js +14 -9
- package/dist/types/FloatType.js.map +1 -1
- package/dist/types/FloatType.spec.js +4 -2
- package/dist/types/FloatType.spec.js.map +1 -1
- package/dist/types/FunctionType.d.ts +7 -31
- package/dist/types/FunctionType.js +11 -57
- package/dist/types/FunctionType.js.map +1 -1
- package/dist/types/IntegerType.d.ts +2 -0
- package/dist/types/IntegerType.js +14 -9
- package/dist/types/IntegerType.js.map +1 -1
- package/dist/types/IntegerType.spec.js +5 -3
- package/dist/types/IntegerType.spec.js.map +1 -1
- package/dist/types/InterfaceType.d.ts +13 -4
- package/dist/types/InterfaceType.js +48 -8
- package/dist/types/InterfaceType.js.map +1 -1
- package/dist/types/InterfaceType.spec.d.ts +1 -0
- package/dist/types/InterfaceType.spec.js +194 -0
- package/dist/types/InterfaceType.spec.js.map +1 -0
- package/dist/types/InvalidType.d.ts +4 -2
- package/dist/types/InvalidType.js +10 -5
- package/dist/types/InvalidType.js.map +1 -1
- package/dist/types/InvalidType.spec.js +4 -2
- package/dist/types/InvalidType.spec.js.map +1 -1
- package/dist/types/LazyType.d.ts +8 -7
- package/dist/types/LazyType.js +22 -10
- package/dist/types/LazyType.js.map +1 -1
- package/dist/types/LongIntegerType.d.ts +2 -0
- package/dist/types/LongIntegerType.js +14 -9
- package/dist/types/LongIntegerType.js.map +1 -1
- package/dist/types/LongIntegerType.spec.js +4 -2
- package/dist/types/LongIntegerType.spec.js.map +1 -1
- package/dist/types/ObjectType.d.ts +8 -4
- package/dist/types/ObjectType.js +9 -4
- package/dist/types/ObjectType.js.map +1 -1
- package/dist/types/ObjectType.spec.js +2 -2
- package/dist/types/ObjectType.spec.js.map +1 -1
- package/dist/types/StringType.d.ts +4 -2
- package/dist/types/StringType.js +9 -4
- package/dist/types/StringType.js.map +1 -1
- package/dist/types/StringType.spec.js +4 -2
- package/dist/types/StringType.spec.js.map +1 -1
- package/dist/types/TypedFunctionType.d.ts +28 -0
- package/dist/types/TypedFunctionType.js +88 -0
- package/dist/types/TypedFunctionType.js.map +1 -0
- package/dist/types/TypedFunctionType.spec.d.ts +1 -0
- package/dist/types/TypedFunctionType.spec.js +37 -0
- package/dist/types/TypedFunctionType.spec.js.map +1 -0
- package/dist/types/UninitializedType.js +3 -3
- package/dist/types/UninitializedType.js.map +1 -1
- package/dist/types/VoidType.d.ts +4 -2
- package/dist/types/VoidType.js +8 -4
- package/dist/types/VoidType.js.map +1 -1
- package/dist/types/VoidType.spec.js +2 -2
- package/dist/types/VoidType.spec.js.map +1 -1
- package/dist/types/helpers.d.ts +42 -0
- package/dist/types/helpers.js +118 -0
- package/dist/types/helpers.js.map +1 -0
- package/dist/util.d.ts +91 -21
- package/dist/util.js +364 -114
- package/dist/util.js.map +1 -1
- package/dist/validators/ClassValidator.d.ts +19 -2
- package/dist/validators/ClassValidator.js +164 -103
- package/dist/validators/ClassValidator.js.map +1 -1
- package/package.json +30 -19
- package/dist/astUtils/index.d.ts +0 -7
- package/dist/astUtils/index.js +0 -26
- package/dist/astUtils/index.js.map +0 -1
- package/dist/lexer/index.d.ts +0 -3
- package/dist/lexer/index.js +0 -17
- package/dist/lexer/index.js.map +0 -1
- package/dist/parser/index.d.ts +0 -3
- package/dist/parser/index.js +0 -16
- package/dist/parser/index.js.map +0 -1
- package/dist/preprocessor/index.d.ts +0 -3
- package/dist/preprocessor/index.js +0 -16
- package/dist/preprocessor/index.js.map +0 -1
- package/dist/types/FunctionType.spec.js +0 -23
- package/dist/types/FunctionType.spec.js.map +0 -1
package/dist/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,23 @@
|
|
|
1
1
|
import type { Scope } from '../Scope';
|
|
2
2
|
import type { BsDiagnostic } from '../interfaces';
|
|
3
|
-
|
|
3
|
+
import type { BrsFile } from '../files/BrsFile';
|
|
4
|
+
import type { TypeContext } from '../types/BscType';
|
|
5
|
+
export declare class BsClassValidator implements BsClassValidator {
|
|
4
6
|
private scope;
|
|
7
|
+
private file;
|
|
5
8
|
diagnostics: BsDiagnostic[];
|
|
6
9
|
private classes;
|
|
7
|
-
|
|
10
|
+
private interfaces;
|
|
11
|
+
get typeContext(): TypeContext;
|
|
12
|
+
validate(scope: Scope, file: BrsFile): void;
|
|
8
13
|
/**
|
|
9
14
|
* Given a class name optionally prefixed with a namespace name, find the class that matches
|
|
10
15
|
*/
|
|
11
16
|
private getClassByName;
|
|
17
|
+
/**
|
|
18
|
+
* Given an interface name optionally prefixed with a namespace name, find the interface that matches
|
|
19
|
+
*/
|
|
20
|
+
private getInterfaceByName;
|
|
12
21
|
/**
|
|
13
22
|
* Find all "new" statements in the program,
|
|
14
23
|
* and make sure we can find a class with that name
|
|
@@ -16,7 +25,12 @@ export declare class BsClassValidator {
|
|
|
16
25
|
private verifyNewExpressions;
|
|
17
26
|
private findNamespaceNonNamespaceCollisions;
|
|
18
27
|
private verifyChildConstructor;
|
|
28
|
+
private isMemberFieldStatement;
|
|
29
|
+
private isMemberMethodStatement;
|
|
30
|
+
private isMemberStatement;
|
|
31
|
+
private validateMemberCollisionsForStatements;
|
|
19
32
|
private validateMemberCollisions;
|
|
33
|
+
private validateFieldTypesForStatements;
|
|
20
34
|
/**
|
|
21
35
|
* Check the types for fields, and validate they are valid types
|
|
22
36
|
*/
|
|
@@ -26,6 +40,9 @@ export declare class BsClassValidator {
|
|
|
26
40
|
*/
|
|
27
41
|
private getAncestorMember;
|
|
28
42
|
private cleanUp;
|
|
43
|
+
private findStatements;
|
|
29
44
|
private findClasses;
|
|
45
|
+
private findInterfaces;
|
|
46
|
+
private linkWithParents;
|
|
30
47
|
private linkClassesWithParents;
|
|
31
48
|
}
|