difftastic/vendored_parsers/tree-sitter-hcl
Wilfred Hughes 08b3ff138f Rename vendor/ directory
Closes #453
2023-01-10 08:35:01 +07:00
..
.github Rename vendor/ directory 2023-01-10 08:35:01 +07:00
bindings Rename vendor/ directory 2023-01-10 08:35:01 +07:00
docs Rename vendor/ directory 2023-01-10 08:35:01 +07:00
example Rename vendor/ directory 2023-01-10 08:35:01 +07:00
src Rename vendor/ directory 2023-01-10 08:35:01 +07:00
test/corpus Rename vendor/ directory 2023-01-10 08:35:01 +07:00
.editorconfig Rename vendor/ directory 2023-01-10 08:35:01 +07:00
.gitignore Rename vendor/ directory 2023-01-10 08:35:01 +07:00
CHANGELOG.md Rename vendor/ directory 2023-01-10 08:35:01 +07:00
Cargo.toml Rename vendor/ directory 2023-01-10 08:35:01 +07:00
LICENSE Rename vendor/ directory 2023-01-10 08:35:01 +07:00
README.md Rename vendor/ directory 2023-01-10 08:35:01 +07:00
binding.gyp Rename vendor/ directory 2023-01-10 08:35:01 +07:00
grammar.js Rename vendor/ directory 2023-01-10 08:35:01 +07:00
package.json Rename vendor/ directory 2023-01-10 08:35:01 +07:00
shell.nix Rename vendor/ directory 2023-01-10 08:35:01 +07:00

README.md

tree-sitter-hcl

tree-sitter grammar for the HCL language

Try It Out

Try the parser in the playground

Example

Highlighting example/example.hcl:

Highlighting Example

Developing

It is recommended to use nix to fulfill all development dependencies. To activate the development environment simply run nix-shell in the project root.

Running Tests

To run tests simply run nix-shell --run 'tree-sitter test'.

Compliance

The directory example/real_world_stuff contains a corpus of hcl files that I found with the github query language:HCL for users coreos, hashicorp, oracle and terraform-community-modules.

tree-sitter parse --quiet --stat example/real_world_stuff/*/*

Total parses: 1892; successful parses: 1892; failed parses: 0; success percentage: 100.00%

Fuzzing

See the fuzzing repo for this parser

Attributions

Pages were copied from https://github.com/m-novikov/tree-sitter-sql