# lumis_wasm_cpp

Self-contained Lumis language package for cpp.

The Tree-sitter parser is compiled to WASM and ships with the queries that highlight it.

Built with [`tree-sitter build --wasm`](https://tree-sitter.github.io/tree-sitter/cli/build.html) `v0.26.11`

[Lumis](https://lumis.sh) loads only the parsers a project depends on, so this dependency is what lets it highlight cpp.

## Installation

```elixir
def deps do
  [
    {:lumis, "~> 0.8"},
    {:lumis_wasm_cpp, "~> 0.26.0"}
  ]
end
```

## What it contains

`priv/parsers/` holds the parser and the manifest that describes it. The manifest records the parser's size, its SHA-256 and the queries.

Lumis reads both from there, so nothing is downloaded at runtime. `mix release` carries them like any dependency's assets.

The application has no code. It starts nothing and supervises nothing.

## Parser

| Parser | Version | Rev |
| ------ | ------- | --- |
| [https://github.com/tree-sitter/tree-sitter-cpp.git](https://github.com/tree-sitter/tree-sitter-cpp.git) | 0.23.4 | f41e1a044c8a84ea9fa8577fdd2eab92ec96de02 |

## License

The Lumis packaging is MIT. The parser itself is redistributed from the
upstream project above; see that project for its license.
