flow-parser
Advanced tools
Comparing version 0.46.0 to 0.47.0
{ | ||
"name": "flow-parser", | ||
"version": "0.46.0", | ||
"version": "0.47.0", | ||
"description": "JavaScript parser written in OCaml. Produces SpiderMonkey AST", | ||
@@ -5,0 +5,0 @@ "homepage": "https://flow.org", |
@@ -1,33 +0,41 @@ | ||
# The Flow Parser | ||
# The flow-parser package | ||
The Flow Parser is a JavaScript parser written in OCaml. It produces an AST that conforms to [SpiderMonkey's Parser API](https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Parser_API) and that mostly matches what [esprima](http://esprima.org/) produces. The Flow Parser can be compiled to native code or can be compiled to JavaScript using [js_of_ocaml](http://ocsigen.org/js_of_ocaml/). | ||
This package contains the Flow parser in its compiled-to-JavaScript form. | ||
## Building the Flow Parser | ||
# What is Flow | ||
Building the Flow Parser requires OCaml. Compiling to JavaScript requires js_of_ocaml >= 2.8. | ||
See [flowtype.org](http://flowtype.org/). The code for the Flow parser [lives on GitHub](https://github.com/facebook/flow/tree/master/src/parser). | ||
### Initial set up | ||
# What is the Flow Parser | ||
* [Install opam](https://opam.ocaml.org/doc/Install.html) | ||
* `opam install js_of_ocaml` | ||
The Flow Parser is a JavaScript parser written in OCaml. It produces an AST that conforms to the [ESTree spec](https://github.com/estree/estree) and that mostly matches what [esprima](http://esprima.org/) produces. The Flow Parser can be compiled to native code or can be compiled to JavaScript using [js_of_ocaml](http://ocsigen.org/js_of_ocaml/). This npm package contains the Flow parser compiled to JavaScript. | ||
### Building the OCaml Flow Parser library | ||
# Usage | ||
make | ||
### Compiling the Flow Parser to JavaScript | ||
You can use the Flow parser in your browser or in node. To use in node you can just do | ||
make js | ||
```JavaScript | ||
require('flow-parser').parse('1+1', {}); | ||
``` | ||
## Tests | ||
To use in the browser, you can add | ||
The Flow Parser's test suite tests the JavaScript version of the parser, so you will need js_of_ocaml installed. The tests and tools also have some node module dependencies, so you will need to run | ||
```HTML | ||
<script src="flow_parser.js"></script> | ||
``` | ||
### Initial set up | ||
which will make the `flow` object available to use like so: | ||
* Follow the steps in [Building the Flow Parser](https://github.com/facebook/flow/blob/master/src/parser/README.md#building-the-flow-parser) | ||
* `npm install` | ||
```JavaScript | ||
flow.parse('1+1', {}); | ||
``` | ||
### Running the Tests | ||
## Options | ||
make test | ||
The second argument to `flow.parse` is the options object. Currently supported options: | ||
* `esproposal_decorators` (boolean, default `false`) - enable parsing of decorators | ||
* `esproposal_class_instance_fields` (boolean, default `false`) - enable parsing of class instance fields | ||
* `esproposal_class_static_fields` (boolean, default `false`) - enable parsing of class static fields | ||
* `esproposal_export_star_as` (boolean, default `false`) - enable parsing of `export * as` syntax | ||
* `types` (boolean, default `true`) - enable parsing of Flow types |
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
765298
9054
42