All Projects → gkz → Grasp Squery

gkz / Grasp Squery

Licence: other
A query engine for Grasp - use CSS style selectors to query your JavaScript AST

Programming Languages

livescript
113 projects

grasp squery Build Status

A query engine for grasp - use CSS style selectors to query your JavaScript AST.

For documentation on the selector format, see the grasp page on squery.

See also the other query engine for grasp: equery.

Initially derived from esquery.

Usage

Add grasp-squery to your package.json, and then require it: var squery = require('grasp-squery);.

The squery object exposes five properties: three functions, parse, queryParsed, query, a constructor, Cache, and the version string as VERSION.

Use parse(selector) to parse a string selector into a parsed selector.

Use queryParsed(parsedSelector, ast) to query your parsed selector.

query(selector, ast) is shorthand for doing queryParsed(parse(selector), ast).

The AST must be in the Mozilla SpiderMonkey AST format - you can use acorn to parse a JavaScript file into the format.

If you are using one selector for multiple ASTs, parse it first, and then feed the parsed version to queryParsed. If you are only using the selector once, just use query.

Both queryParsed and query take an optional third parameter cache. A cache is automatically created from the AST you supply if you do not supply a cache. You can create your own cache by calling the Cache constructor with your AST.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].