async-unist-util-visit v1.0.0
unist-util-visit
Unist node visitor. Useful with working with remark or retext.
Installation
npm:
npm install unist-util-visit
unist-util-visit is also available as an AMD, CommonJS, and globals module, uncompressed and compressed.
Usage
Dependencies:
var remark = require('remark');
var visit = require('unist-util-visit');
remark().use(function () {
return function (ast) {
visit(ast, 'text', function (node) {
console.log(node)
});
};
}).process('Some _emphasis_, **strongness**, and `code`.');
Yields:
{'type': 'text', 'value': 'Some '}
{'type': 'text', 'value': 'emphasis'}
{'type': 'text', 'value': ', '}
{'type': 'text', 'value': 'strongness'}
{'type': 'text', 'value': ', and '}
{'type': 'text', 'value': '.'}
API
visit(node[, type], visitor[, reverse])
Visit nodes. Optionally by node type. Optionally in reverse.
node
(Node
) — Node to search;type
(string
, optional) — Node type;visitor
(Function) — Visitor invoked when a node is found;reverse
(boolean
, default:false
) — When falsey, checking starts at the first child and continues through to later children. When truthy, this is reversed.This does not mean checking starts at the deepest node and continues on to the highest node.
stop? = visitor(node, index, parent)
Invoked when a node (when type
is given, matching type
) is found.
Parameters:
node
(Node
) — Found node;index
(number?
) — Position ofnode
inparent
;index
(Node?
) — Parent ofnode
.
Returns: boolean?
- When false
, visiting is immediately stopped.
License
8 years ago