GeneralizingAstVisitor

io.shiftleft.js2cpg.parser.GeneralizingAstVisitor
class GeneralizingAstVisitor[T] extends TranslatorNodeVisitor[LexicalContext, T]

This visitor mapped the enterXXX methods to the visit() to provide an interface which is closer to the original pattern. Furthermore, a not overridden visit() implementation calls the visit() method for the next type in the class hierarchy to allow using code to handle certain AST parts in a generalized way on any part of the class hierarchy.

Attributes

Graph
Supertypes
class TranslatorNodeVisitor[LexicalContext, T]
class Object
trait Matchable
class Any
Known subtypes
class AstCreator

Members list

Value members

Concrete methods

override def enterAccessNode(node: AccessNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterBinaryNode(node: BinaryNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterBlock(node: Block): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterBlockExpression(node: BlockExpression): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterBlockStatement(node: BlockStatement): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterBreakNode(node: BreakNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterCallNode(node: CallNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterCaseNode(node: CaseNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterCatchNode(node: CatchNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterClassNode(node: ClassNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterContinueNode(node: ContinueNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterDebuggerNode(node: DebuggerNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterDefault(node: Node): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterEmptyNode(node: EmptyNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterErrorNode(node: ErrorNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterExportNode(node: ExportNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterExportSpecifierNode(node: ExportSpecifierNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterExpressionStatement(node: ExpressionStatement): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterForNode(node: ForNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterFromNode(node: FromNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterFunctionNode(node: FunctionNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterIdentNode(node: IdentNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterIfNode(node: IfNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterImportClauseNode(node: ImportClauseNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterImportNode(node: ImportNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterImportSpecifierNode(node: ImportSpecifierNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterIndexNode(node: IndexNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterJoinPredecessorExpression(node: JoinPredecessorExpression): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterLabelNode(node: LabelNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterLiteralNode(node: LiteralNode[_]): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterNameSpaceImportNode(node: NameSpaceImportNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterNamedExportsNode(node: NamedExportsNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterNamedImportsNode(node: NamedImportsNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterObjectNode(node: ObjectNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterParameterNode(node: ParameterNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterPropertyNode(node: PropertyNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterReturnNode(node: ReturnNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterSwitchNode(node: SwitchNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterTemplateLiteralNode(node: TemplateLiteralNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterTernaryNode(node: TernaryNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterThrowNode(node: ThrowNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterTryNode(node: TryNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterUnaryNode(node: UnaryNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterVarNode(node: VarNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterWhileNode(node: WhileNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
override def enterWithNode(node: WithNode): T

Attributes

Definition Classes
TranslatorNodeVisitor
def visit(node: Node): T
def visit(node: AccessNode): T
def visit(node: BaseNode): T
def visit(node: Block): T
def visit(node: BinaryNode): T
def visit(node: BreakNode): T
def visit(node: CallNode): T
def visit(node: CaseNode): T
def visit(node: CatchNode): T
def visit(node: ContinueNode): T
def visit(node: DebuggerNode): T
def visit(node: EmptyNode): T
def visit(node: ErrorNode): T
def visit(node: NamedExportsNode): T
def visit(node: ExportNode): T
def visit(node: ExportSpecifierNode): T
def visit(node: Expression): T
def visit(node: ExpressionStatement): T
def visit(node: BlockStatement): T
def visit(node: ForNode): T
def visit(node: FromNode): T
def visit(node: FunctionNode): T
def visit(node: IdentNode): T
def visit(node: IfNode): T
def visit(node: ImportClauseNode): T
def visit(node: ImportNode): T
def visit(node: ImportSpecifierNode): T
def visit(node: IndexNode): T
def visit(node: JumpStatement): T
def visit(node: LabelNode): T
def visit(node: LiteralNode[_]): T
def visit(node: LoopNode): T
def visit(node: NameSpaceImportNode): T
def visit(node: NamedImportsNode): T
def visit(node: ObjectNode): T
def visit(node: PropertyNode): T
def visit(node: ReturnNode): T
def visit(node: TemplateLiteralNode): T
def visit(node: Statement): T
def visit(node: SwitchNode): T
def visit(node: TernaryNode): T
def visit(node: ThrowNode): T
def visit(node: TryNode): T
def visit(node: UnaryNode): T
def visit(node: JoinPredecessorExpression): T
def visit(node: VarNode): T
def visit(node: WhileNode): T
def visit(node: WithNode): T
def visit(node: ClassNode): T
def visit(node: BlockExpression): T
def visit(node: ParameterNode): T

Inherited methods

def enterClassElement(element: ClassElement): R

Attributes

Inherited from:
TranslatorNodeVisitor
final def getLexicalContext(): T

Attributes

Inherited from:
TranslatorNodeVisitor