nedpals / tree-sitter-v

Tree-sitter parser for V

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

tree-sitter-v

V language grammar for tree-sitter

build/test report-badge

Existing grammars

This grammar is heavily derived from the following language grammars:

Installation

npm install tree-sitter-v
const Parser = require('tree-sitter');
const V = require('tree-sitter-v');

const parser = new Parser();
parser.setLanguage(V);

Usage with V [v-tree-sitter (soon)]

// TODO:
import treesitter
import tree_sitter_v.bindings.v

fn main() {
  mut parser := treesitter.new_parser()
  parser.set_language(v.language)
}

Limitations

  1. It does not support all deprecated/outdated syntaxes to avoid any ambiguities and to enforce the one-way philosophy as much as possible.
  2. Assembly/SQL code in ASM/SQL block nodes are loosely checked and parsed immediately regardless of the content.
  3. Syntaxes specific for implementing JS and native compilation support are not and will not be implemented unless a consensus has been reached. Features from "Compiler magic" are being generalized into different nodes as much as possible.

About

Tree-sitter parser for V

License:MIT License


Languages

Language:C 99.4%Language:JavaScript 0.4%Language:V 0.1%Language:GLSL 0.0%Language:Rust 0.0%Language:Scheme 0.0%Language:C++ 0.0%Language:Python 0.0%Language:AMPL 0.0%