Files
memecoin-botV2/.pnpm-store/v10/files/2d/bd7216d3e2ac11a5e71b146993d1b20bbc33cac8ed4e98b24f4c451ad260768af8e8d355eb19ae8ada55d4cf6f6a93f5decb6e7156e40d123e3376a37b2da0

30 lines
1.2 KiB
Plaintext

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.VisitorBase = exports.Visitor = void 0;
const PatternVisitor_1 = require("./PatternVisitor");
const VisitorBase_1 = require("./VisitorBase");
class Visitor extends VisitorBase_1.VisitorBase {
#options;
constructor(optionsOrVisitor) {
super(optionsOrVisitor instanceof Visitor
? optionsOrVisitor.#options
: optionsOrVisitor);
this.#options =
optionsOrVisitor instanceof Visitor
? optionsOrVisitor.#options
: optionsOrVisitor;
}
visitPattern(node, callback, options = { processRightHandNodes: false }) {
// Call the callback at left hand identifier nodes, and Collect right hand nodes.
const visitor = new PatternVisitor_1.PatternVisitor(this.#options, node, callback);
visitor.visit(node);
// Process the right hand nodes recursively.
if (options.processRightHandNodes) {
visitor.rightHandNodes.forEach(this.visit, this);
}
}
}
exports.Visitor = Visitor;
var VisitorBase_2 = require("./VisitorBase");
Object.defineProperty(exports, "VisitorBase", { enumerable: true, get: function () { return VisitorBase_2.VisitorBase; } });