Packages

Tree-sitter parser and queries for solidity, compiled to WASM for Lumis

Current section

Files

Jump to
Raw

README.md

# lumis_wasm_solidity

Self-contained Lumis language package for solidity.

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 solidity.

## Installation

```elixir
def deps do
  [
    {:lumis, "~> 0.8"},
    {:lumis_wasm_solidity, "~> 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/JoranHonig/tree-sitter-solidity.git](https://github.com/JoranHonig/tree-sitter-solidity.git) | 1.2.13 | 048fe686cb1fde267243739b8bdbec8fc3a55272 |

## License

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