18 lines
905 B
JavaScript
18 lines
905 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.walker = walker;
|
|
const dummy_walker_js_1 = require("./dummy_walker.js");
|
|
const semantic_walker_js_1 = require("./semantic_walker.js");
|
|
const syntax_walker_js_1 = require("./syntax_walker.js");
|
|
const table_walker_js_1 = require("./table_walker.js");
|
|
function walker(type, node, generator, highlighter, xml) {
|
|
const constructor = walkerMapping[type.toLowerCase()] || walkerMapping['dummy'];
|
|
return constructor(node, generator, highlighter, xml);
|
|
}
|
|
const walkerMapping = {
|
|
dummy: (p1, p2, p3, p4) => new dummy_walker_js_1.DummyWalker(p1, p2, p3, p4),
|
|
semantic: (p1, p2, p3, p4) => new semantic_walker_js_1.SemanticWalker(p1, p2, p3, p4),
|
|
syntax: (p1, p2, p3, p4) => new syntax_walker_js_1.SyntaxWalker(p1, p2, p3, p4),
|
|
table: (p1, p2, p3, p4) => new table_walker_js_1.TableWalker(p1, p2, p3, p4)
|
|
};
|