Class HoistedSymbolVisitor
- java.lang.Object
-
- org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor
-
- org.sonar.javascript.tree.symbols.HoistedSymbolVisitor
-
- All Implemented Interfaces:
TreeVisitor
public class HoistedSymbolVisitor extends DoubleDispatchVisitor
This visitor creates symbols for: - explicitly declared symbols (function declaration, local variable with var/let/const) - built-in symbols (this, arguments) - parameters - imported symbols
-
-
Constructor Summary
Constructors Constructor Description HoistedSymbolVisitor(Map<Tree,Scope> treeScopeMap, org.sonar.api.config.Configuration configuration)
-
Method Summary
-
Methods inherited from class org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor
getContext, scan, scan, scanChildren, scanTree, visitArgumentList, visitArrayAssignmentPattern, visitArrayBindingPattern, visitArrayLiteral, visitAssignmentExpression, visitAssignmentPatternRestElement, visitBinaryExpression, visitBindingProperty, visitBreakStatement, visitCallExpression, visitCaseClause, visitComment, visitComputedPropertyName, visitConditionalExpression, visitContinueStatement, visitDebugger, visitDecorator, visitDefaultClause, visitDefaultExportDeclaration, visitDoWhileStatement, visitElseClause, visitEmptyStatement, visitExportClause, visitExportDefaultBinding, visitExportDefaultBindingWithExportList, visitExportDefaultBindingWithNameSpaceExport, visitExpressionStatement, visitExtendsClause, visitFieldDeclaration, visitFinallyBlock, visitFlowArrayTypeShorthand, visitFlowArrayTypeWithKeywordTree, visitFlowCastingExpression, visitFlowDeclare, visitFlowFunctionSignature, visitFlowFunctionType, visitFlowFunctionTypeParameter, visitFlowFunctionTypeParameterClause, visitFlowGenericParameterClause, visitFlowImplementsClause, visitFlowIntersectionType, visitFlowLiteralType, visitFlowMethodPropertyDefinitionKey, visitFlowModule, visitFlowModuleExports, visitFlowNamespacedType, visitFlowObjectTypeTree, visitFlowOpaqueType, visitFlowOptionalBindingElement, visitFlowOptionalType, visitFlowParameterizedGenerics, visitFlowParenthesisedType, visitFlowPropertyType, visitFlowPropertyTypeKey, visitFlowSimpleType, visitFlowTupleType, visitFlowTypeAnnotation, visitFlowTypedBindingElement, visitFlowTypeofType, visitFlowUnionType, visitFromClause, visitIdentifier, visitIfStatement, visitImport, visitImportDeclaration, visitImportModuleDeclaration, visitInitializedAssignmentPatternElement, visitInitializedBindingElement, visitJsxClosingElement, visitJsxEmptyClosingElement, visitJsxEmptyOpeningElement, visitJsxIdentifier, visitJsxJavaScriptExpression, visitJsxOpeningElement, visitJsxSelfClosingElement, visitJsxShortFragmentElement, visitJsxSpreadAttribute, visitJsxStandardAttribute, visitJsxStandardElement, visitJsxText, visitLabelledStatement, visitLiteral, visitMemberExpression, visitModule, visitNamedExportDeclaration, visitNamedImportExportClause, visitNameSpaceExportDeclaration, visitNewExpression, visitNewTarget, visitObjectAssignmentPattern, visitObjectAssignmentPatternPairElement, visitObjectBindingPattern, visitObjectLiteral, visitPairProperty, visitParameterList, visitParenthesisedExpression, visitRestElement, visitReturnStatement, visitSpreadElement, visitSuper, visitTaggedTemplate, visitTemplateCharacters, visitTemplateExpression, visitTemplateLiteral, visitThrowStatement, visitToken, visitTryStatement, visitUnaryExpression, visitVariableStatement, visitWhileStatement, visitWithStatement, visitYieldExpression
-
-
-
-
Method Detail
-
visitScript
public void visitScript(ScriptTree tree)
- Overrides:
visitScriptin classDoubleDispatchVisitor
-
visitBlock
public void visitBlock(BlockTree tree)
- Overrides:
visitBlockin classDoubleDispatchVisitor
-
visitForStatement
public void visitForStatement(ForStatementTree tree)
- Overrides:
visitForStatementin classDoubleDispatchVisitor
-
visitForObjectStatement
public void visitForObjectStatement(ForObjectStatementTree tree)
- Overrides:
visitForObjectStatementin classDoubleDispatchVisitor
-
visitSwitchStatement
public void visitSwitchStatement(SwitchStatementTree tree)
- Overrides:
visitSwitchStatementin classDoubleDispatchVisitor
-
visitSpecifier
public void visitSpecifier(SpecifierTree tree)
- Overrides:
visitSpecifierin classDoubleDispatchVisitor
-
visitNameSpaceImport
public void visitNameSpaceImport(NameSpaceImportTree tree)
- Overrides:
visitNameSpaceImportin classDoubleDispatchVisitor
-
visitImportClause
public void visitImportClause(ImportClauseTree tree)
- Overrides:
visitImportClausein classDoubleDispatchVisitor
-
visitMethodDeclaration
public void visitMethodDeclaration(MethodDeclarationTree tree)
- Overrides:
visitMethodDeclarationin classDoubleDispatchVisitor
-
visitAccessorMethodDeclaration
public void visitAccessorMethodDeclaration(AccessorMethodDeclarationTree tree)
- Overrides:
visitAccessorMethodDeclarationin classDoubleDispatchVisitor
-
visitCatchBlock
public void visitCatchBlock(CatchBlockTree tree)
- Overrides:
visitCatchBlockin classDoubleDispatchVisitor
-
visitFunctionDeclaration
public void visitFunctionDeclaration(FunctionDeclarationTree tree)
- Overrides:
visitFunctionDeclarationin classDoubleDispatchVisitor
-
visitFlowGenericParameter
public void visitFlowGenericParameter(FlowGenericParameterTree tree)
- Overrides:
visitFlowGenericParameterin classDoubleDispatchVisitor
-
visitArrowFunction
public void visitArrowFunction(ArrowFunctionTree tree)
- Overrides:
visitArrowFunctionin classDoubleDispatchVisitor
-
visitFunctionExpression
public void visitFunctionExpression(FunctionExpressionTree tree)
- Overrides:
visitFunctionExpressionin classDoubleDispatchVisitor
-
visitClass
public void visitClass(ClassTree tree)
- Overrides:
visitClassin classDoubleDispatchVisitor
-
visitFlowInterfaceDeclaration
public void visitFlowInterfaceDeclaration(FlowInterfaceDeclarationTree tree)
- Overrides:
visitFlowInterfaceDeclarationin classDoubleDispatchVisitor
-
visitVariableDeclaration
public void visitVariableDeclaration(VariableDeclarationTree tree)
- Overrides:
visitVariableDeclarationin classDoubleDispatchVisitor
-
visitFlowTypeAliasStatement
public void visitFlowTypeAliasStatement(FlowTypeAliasStatementTree tree)
- Overrides:
visitFlowTypeAliasStatementin classDoubleDispatchVisitor
-
-