📄 Visitor.ts
¶
📊 Analysis Summary¶
Metric | Count |
---|---|
🔧 Functions | 1 |
🧱 Classes | 1 |
📦 Imports | 6 |
📊 Variables & Constants | 1 |
🔄 Re-exports | 1 |
📐 Interfaces | 1 |
📚 Table of Contents¶
🛠️ File Location:¶
📂 packages/scope-manager/src/referencer/Visitor.ts
📦 Imports¶
Name | Source |
---|---|
TSESTree |
@typescript-eslint/types |
PatternVisitorCallback |
./PatternVisitor |
PatternVisitorOptions |
./PatternVisitor |
VisitorOptions |
./VisitorBase |
PatternVisitor |
./PatternVisitor |
VisitorBase |
./VisitorBase |
Variables & Constants¶
Name | Type | Kind | Value | Exported |
---|---|---|---|---|
visitor |
PatternVisitor |
const | new PatternVisitor(this.#options, node, callback) |
✗ |
Re-exports¶
Type | Source | Exported Names |
---|---|---|
named | ./VisitorBase |
VisitorBase, VisitorOptions |
Functions¶
Visitor.visitPattern(node: TSESTree.Node, callback: PatternVisitorCallback, options: VisitPatternOptions): void
¶
Code
protected visitPattern(
node: TSESTree.Node,
callback: PatternVisitorCallback,
options: VisitPatternOptions = { processRightHandNodes: false },
): void {
// Call the callback at left hand identifier nodes, and Collect right hand nodes.
const visitor = new PatternVisitor(this.#options, node, callback);
visitor.visit(node);
// Process the right hand nodes recursively.
if (options.processRightHandNodes) {
visitor.rightHandNodes.forEach(this.visit, this);
}
}
- Parameters:
node: TSESTree.Node
callback: PatternVisitorCallback
options: VisitPatternOptions
- Return Type:
void
- Calls:
visitor.visit
visitor.rightHandNodes.forEach
- Internal Comments:
Classes¶
Visitor
¶
Class Code
export class Visitor extends VisitorBase {
readonly #options: VisitorOptions;
constructor(optionsOrVisitor: Visitor | VisitorOptions) {
super(
optionsOrVisitor instanceof Visitor
? optionsOrVisitor.#options
: optionsOrVisitor,
);
this.#options =
optionsOrVisitor instanceof Visitor
? optionsOrVisitor.#options
: optionsOrVisitor;
}
protected visitPattern(
node: TSESTree.Node,
callback: PatternVisitorCallback,
options: VisitPatternOptions = { processRightHandNodes: false },
): void {
// Call the callback at left hand identifier nodes, and Collect right hand nodes.
const visitor = new PatternVisitor(this.#options, node, callback);
visitor.visit(node);
// Process the right hand nodes recursively.
if (options.processRightHandNodes) {
visitor.rightHandNodes.forEach(this.visit, this);
}
}
}
Methods¶
visitPattern(node: TSESTree.Node, callback: PatternVisitorCallback, options: VisitPatternOptions): void
¶
Code
protected visitPattern(
node: TSESTree.Node,
callback: PatternVisitorCallback,
options: VisitPatternOptions = { processRightHandNodes: false },
): void {
// Call the callback at left hand identifier nodes, and Collect right hand nodes.
const visitor = new PatternVisitor(this.#options, node, callback);
visitor.visit(node);
// Process the right hand nodes recursively.
if (options.processRightHandNodes) {
visitor.rightHandNodes.forEach(this.visit, this);
}
}
Interfaces¶
VisitPatternOptions
¶
Interface Code
Properties¶
Name | Type | Optional | Description |
---|---|---|---|
processRightHandNodes |
boolean |
✓ |