Merge branch 'master' into wasm-stdlib
This commit is contained in:
commit
f4788b49c0
78 changed files with 1714 additions and 1876 deletions
|
|
@ -6,15 +6,12 @@ use tree_sitter_loader::Loader;
|
|||
use wasmparser::Parser;
|
||||
|
||||
pub fn load_language_wasm_file(language_dir: &Path) -> Result<(String, Vec<u8>)> {
|
||||
let grammar_name = get_grammar_name(&language_dir)
|
||||
let grammar_name = get_grammar_name(language_dir)
|
||||
.with_context(|| "Failed to get wasm filename")
|
||||
.unwrap();
|
||||
let wasm_filename = format!("tree-sitter-{}.wasm", grammar_name);
|
||||
let wasm_filename = format!("tree-sitter-{grammar_name}.wasm");
|
||||
let contents = fs::read(language_dir.join(&wasm_filename)).with_context(|| {
|
||||
format!(
|
||||
"Failed to read {}. Run `tree-sitter build-wasm` first.",
|
||||
wasm_filename
|
||||
)
|
||||
format!("Failed to read {wasm_filename}. Run `tree-sitter build-wasm` first.",)
|
||||
})?;
|
||||
Ok((grammar_name, contents))
|
||||
}
|
||||
|
|
@ -23,9 +20,9 @@ pub fn get_grammar_name(language_dir: &Path) -> Result<String> {
|
|||
let src_dir = language_dir.join("src");
|
||||
let grammar_json_path = src_dir.join("grammar.json");
|
||||
let grammar_json = fs::read_to_string(&grammar_json_path)
|
||||
.with_context(|| format!("Failed to read grammar file {:?}", grammar_json_path))?;
|
||||
.with_context(|| format!("Failed to read grammar file {grammar_json_path:?}"))?;
|
||||
let grammar: GrammarJSON = serde_json::from_str(&grammar_json)
|
||||
.with_context(|| format!("Failed to parse grammar file {:?}", grammar_json_path))?;
|
||||
.with_context(|| format!("Failed to parse grammar file {grammar_json_path:?}"))?;
|
||||
Ok(grammar.name)
|
||||
}
|
||||
|
||||
|
|
@ -35,8 +32,8 @@ pub fn compile_language_to_wasm(
|
|||
output_dir: &Path,
|
||||
force_docker: bool,
|
||||
) -> Result<()> {
|
||||
let grammar_name = get_grammar_name(&language_dir)?;
|
||||
let output_filename = output_dir.join(&format!("tree-sitter-{}.wasm", grammar_name));
|
||||
let grammar_name = get_grammar_name(language_dir)?;
|
||||
let output_filename = output_dir.join(format!("tree-sitter-{grammar_name}.wasm"));
|
||||
let src_path = language_dir.join("src");
|
||||
let scanner_path = loader.get_scanner_path(&src_path);
|
||||
loader.compile_parser_to_wasm(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue