unist-util-visit

unist utility to visit nodes

Stats

StarsIssuesVersionUpdatedCreatedSize
unist-util-visit
12404.1.03 months ago6 years agoMinified + gzip package size for unist-util-visit in KB

Readme

unist-util-visit

Build Coverage Downloads Size Sponsors Backers Chat

unist utility to visit nodes.

Install

This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required.

npm:

npm install unist-util-visit

Use

import {u} from 'unist-builder'
import {visit} from 'unist-util-visit'

const tree = u('tree', [
  u('leaf', '1'),
  u('node', [u('leaf', '2')]),
  u('void'),
  u('leaf', '3')
])

visit(tree, 'leaf', (node) => {
  console.log(node)
})

Yields:

{ type: 'leaf', value: '1' }
{ type: 'leaf', value: '2' }
{ type: 'leaf', value: '3' }

Note: this example also uses unist-builder, to run the example ensure both unist-builder and unist-util-visit are installed:

npm install unist-builder unist-util-visit

API

This package exports the following identifiers: visit, CONTINUE, SKIP, and EXIT. There is no default export.

visit(tree[, test], visitor[, reverse])

This function works exactly the same as unist-util-visit-parents, but visitor has a different signature.

next? = visitor(node, index, parent)

Instead of being passed an array of ancestors, visitor is called with the node’s index and its parent. The optional return value next is documented in unist-util-visit-parents’s readme.

Otherwise the same as unist-util-visit-parents.

Related

Contribute

See contributing.md in syntax-tree/.github for ways to get started. See support.md for ways to get help.

This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

License

MIT © Titus Wormer

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.