Crate tree_sitter_csv

Source
Expand description

This crate provides CSV, PSV, & TSV language support for the tree-sitter parsing library.

Typically, you will use the language function to add this language to a tree-sitter Parser, and then use the parser to parse some code:

let code = r#"
"Name","Age","Salary"
"John Doe",30,120000
"#;
let mut parser = tree_sitter::Parser::new();
parser.set_language(tree_sitter_csv::language_csv()).expect("Error loading CSV grammar");
let tree = parser.parse(code, None).unwrap();

let code = r"
Name|Age|Salary
John Doe|30|120000
";
let mut parser = tree_sitter::Parser::new();
parser.set_language(tree_sitter_csv::language_tsv()).expect("Error loading PSV grammar");
let tree = parser.parse(code, None).unwrap();

let code = r"
Name\tAge\tSalary
John Doe\t30\t120000
";
let mut parser = tree_sitter::Parser::new();
parser.set_language(tree_sitter_csv::language_tsv()).expect("Error loading TSV grammar");
let tree = parser.parse(code, None).unwrap();

Constants§

GRAMMAR_JSON_CSV
The content of the [grammar.json][] file for CSV.
GRAMMAR_JSON_PSV
The content of the [grammar.json][] file for PSV.
GRAMMAR_JSON_TSV
The content of the [grammar.json][] file for TSV.
HIGHLIGHT_QUERY_CSV
The syntax highlighting query for CSV.
HIGHLIGHT_QUERY_PSV
The syntax highlighting query for PSV.
HIGHLIGHT_QUERY_TSV
The syntax highlighting query for TSV.
NODE_TYPES_CSV
The content of the node-types.json file for CSV.
NODE_TYPES_PSV
The content of the node-types.json file for PSV.
NODE_TYPES_TSV
The content of the node-types.json file for TSV.

Functions§

language_csv
Get the tree-sitter Language for this grammar.
language_psv
language_tsv