You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
530 B
31 lines
530 B
|
|
/*! |
|
* Stylus - Visitor |
|
* Copyright (c) Automattic <developer.wordpress.com> |
|
* MIT Licensed |
|
*/ |
|
|
|
/** |
|
* Initialize a new `Visitor` with the given `root` Node. |
|
* |
|
* @param {Node} root |
|
* @api private |
|
*/ |
|
|
|
var Visitor = module.exports = function Visitor(root) { |
|
this.root = root; |
|
}; |
|
|
|
/** |
|
* Visit the given `node`. |
|
* |
|
* @param {Node|Array} node |
|
* @api public |
|
*/ |
|
|
|
Visitor.prototype.visit = function(node, fn){ |
|
var method = 'visit' + node.constructor.name; |
|
if (this[method]) return this[method](node); |
|
return node; |
|
}; |
|
|
|
|