oak 0.5.9

A typed parser generator syntax extension for Parsing Expression Grammar (PEG).
Documentation
# Oak

[![ptal on Travis CI][travis-image]][travis]

[travis-image]: https://travis-ci.org/ptal/oak.png
[travis]: https://travis-ci.org/ptal/oak

Compiled on the nightly channel of Rust. Use [rustup](http://www.rustup.rs) for managing compiler channels.
You can download and set up the exact same version of the compiler used with `rustup override add nightly-2018-08-18`.

Please consult the [Oak manual](http://hyc.io/oak).

## Features

* Grammar description as a Rust syntax extension.
* Generation of both *recognizer* and *parser* functions for each rules.
* *Type inference* for each parsing expressions. Simplify the AST construction.

## Build local documentation

You might want to build the manual or code documentation from the repository because you need it to be synchronized with a specific version of Oak or simply for offline usage. Here how to do it!

#### Build the manual

You need the utility [mdbook](https://rust-lang-nursery.github.io/mdBook/):

```
cargo install mdbook
```

Once installed, go inside `oak/doc` and execute `mdbook build -o`.
The manual is generated inside a local folder named `book` and directly opened in your browser.

#### Build the code documentation

As a user of Oak, you will be interested by the runtime documentation.

```
cd oak/runtime
cargo doc
```

The documentation is then available in `oak/runtime/target/doc`.

To build the internal documentation of Oak, you can type this command at the root of the project:

```
cd oak
rustdoc --document-private-items --output=target/dev-doc src/liboak/lib.rs
```

The documentation will be available inside `oak/target/dev-doc`.
It is useful to work on Oak :-)