From 003b10c28079b0cc99bdf757ea3787d9f3dddd6c Mon Sep 17 00:00:00 2001 From: Jason Boatman Date: Wed, 5 Aug 2026 17:05:30 -0700 Subject: [PATCH] feat(generate)!: expose `OptLevel` on `generate_parser_for_grammar` --- crates/cli/src/tests.rs | 3 ++- crates/cli/src/tests/corpus_test.rs | 2 ++ crates/generate/src/generate.rs | 3 ++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/crates/cli/src/tests.rs b/crates/cli/src/tests.rs index c80e61fc8..286afb732 100644 --- a/crates/cli/src/tests.rs +++ b/crates/cli/src/tests.rs @@ -17,7 +17,7 @@ mod tree_test; #[cfg(feature = "wasm")] mod wasm_language_test; -use tree_sitter_generate::GenerateResult; +use tree_sitter_generate::{GenerateResult, OptLevel}; pub use crate::fuzz::{ ITERATION_COUNT, allocations, @@ -33,6 +33,7 @@ fn generate_parser(grammar_json: &str) -> GenerateResult<(String, String)> { tree_sitter_generate::generate_parser_for_grammar( grammar_json, Some((0, 0, 0)), + OptLevel::default(), &mut Vec::new(), ) } diff --git a/crates/cli/src/tests/corpus_test.rs b/crates/cli/src/tests/corpus_test.rs index 46b6bed3e..68945a54b 100644 --- a/crates/cli/src/tests/corpus_test.rs +++ b/crates/cli/src/tests/corpus_test.rs @@ -2,6 +2,7 @@ use std::{collections::HashMap, env, fs}; use anyhow::Context; use tree_sitter::Parser; +use tree_sitter_generate::OptLevel; use tree_sitter_proc_macro::test_with_seed; use crate::{ @@ -378,6 +379,7 @@ fn test_feature_corpus_files() { let generate_result = tree_sitter_generate::generate_parser_for_grammar( &grammar_json, Some((0, 0, 0)), + OptLevel::default(), &mut Vec::new(), ); diff --git a/crates/generate/src/generate.rs b/crates/generate/src/generate.rs index 717473237..8f770e988 100644 --- a/crates/generate/src/generate.rs +++ b/crates/generate/src/generate.rs @@ -411,6 +411,7 @@ where pub fn generate_parser_for_grammar( grammar_json: &str, semantic_version: Option<(u8, u8, u8)>, + optimizations: OptLevel, diagnostics: &mut Vec, ) -> GenerateResult<(String, String)> { let input_grammar = parse_grammar(grammar_json, diagnostics)?; @@ -419,7 +420,7 @@ pub fn generate_parser_for_grammar( LANGUAGE_VERSION, semantic_version, None, - OptLevel::default(), + optimizations, diagnostics, )?; Ok((input_grammar.name, parser.c_code))