refactor!: rename stage flag to emit
This commit is contained in:
parent
60c3bed6a4
commit
311585d304
5 changed files with 21 additions and 23 deletions
|
|
@ -572,10 +572,10 @@ pub fn generate_grammar_files(
|
|||
"},
|
||||
indoc! {r"
|
||||
$(SRC_DIR)/grammar.json: grammar.js
|
||||
$(TS) generate --stage=json $^
|
||||
$(TS) generate --emit=json $^
|
||||
|
||||
$(PARSER): $(SRC_DIR)/grammar.json
|
||||
$(TS) generate --stage=parser $^
|
||||
$(TS) generate --emit=parser $^
|
||||
"}
|
||||
);
|
||||
write_file(path, contents)?;
|
||||
|
|
@ -623,14 +623,14 @@ pub fn generate_grammar_files(
|
|||
add_custom_command(OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/src/grammar.json"
|
||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/grammar.js"
|
||||
COMMAND "${TREE_SITTER_CLI}" generate grammar.js
|
||||
--stage=json
|
||||
--emit=json
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
COMMENT "Generating grammar.json")
|
||||
|
||||
add_custom_command(OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/src/parser.c"
|
||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/src/grammar.json"
|
||||
COMMAND "${TREE_SITTER_CLI}" generate src/grammar.json
|
||||
--stage=parser --abi=${TREE_SITTER_ABI_VERSION}
|
||||
--emit=parser --abi=${TREE_SITTER_ABI_VERSION}
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
COMMENT "Generating parser.c")
|
||||
"#}
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ struct Init {
|
|||
}
|
||||
|
||||
#[derive(Clone, Debug, Default, ValueEnum, PartialEq, Eq)]
|
||||
enum GenerationStage {
|
||||
enum GenerationEmit {
|
||||
/// Generate `grammar.json` and `node-types.json`
|
||||
Json,
|
||||
/// Generate `parser.c` and related files
|
||||
|
|
@ -119,12 +119,12 @@ struct Generate {
|
|||
)
|
||||
)]
|
||||
pub abi_version: Option<String>,
|
||||
/// Which generation stage to end after
|
||||
/// What generated files to emit
|
||||
#[arg(long)]
|
||||
#[clap(value_enum, default_value_t=GenerationStage::Parser)]
|
||||
pub stage: GenerationStage,
|
||||
/// Deprecated: use --stage=lib.
|
||||
#[arg(long, short = 'b', conflicts_with = "stage")]
|
||||
#[clap(value_enum, default_value_t=GenerationEmit::Parser)]
|
||||
pub emit: GenerationEmit,
|
||||
/// Deprecated: use --emit=lib.
|
||||
#[arg(long, short = 'b', conflicts_with = "emit")]
|
||||
pub build: bool,
|
||||
/// Compile a parser in debug mode
|
||||
#[arg(long, short = '0')]
|
||||
|
|
@ -858,7 +858,7 @@ impl Generate {
|
|||
if self.build {
|
||||
// TODO: remove the `--build` argument in 0.27
|
||||
// TODO: migrate to `warn!` once https://github.com/tree-sitter/tree-sitter/pull/4604 is merged
|
||||
eprintln!("Warning: --build is deprecated, use --stage=lib instead");
|
||||
eprintln!("Warning: --build is deprecated, use --emit=lib instead");
|
||||
}
|
||||
|
||||
if let Err(err) = tree_sitter_generate::generate_parser_in_directory(
|
||||
|
|
@ -868,7 +868,7 @@ impl Generate {
|
|||
abi_version,
|
||||
self.report_states_for_rule.as_deref(),
|
||||
self.js_runtime.as_deref(),
|
||||
self.stage != GenerationStage::Json,
|
||||
self.emit != GenerationEmit::Json,
|
||||
) {
|
||||
if self.json {
|
||||
eprintln!("{}", serde_json::to_string_pretty(&err)?);
|
||||
|
|
@ -879,7 +879,7 @@ impl Generate {
|
|||
Err(anyhow!(err.to_string())).with_context(|| "Error when generating parser")?;
|
||||
}
|
||||
}
|
||||
if self.stage == GenerationStage::Lib || self.build {
|
||||
if self.emit == GenerationEmit::Lib || self.build {
|
||||
if let Some(path) = self.libdir {
|
||||
loader = loader::Loader::with_parser_lib_path(path);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,14 +22,14 @@ find_program(TREE_SITTER_CLI tree-sitter DOC "Tree-sitter CLI")
|
|||
add_custom_command(OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/src/grammar.json"
|
||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/grammar.js"
|
||||
COMMAND "${TREE_SITTER_CLI}" generate grammar.js
|
||||
--stage=json
|
||||
--emit=json
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
COMMENT "Generating grammar.json")
|
||||
|
||||
add_custom_command(OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/src/parser.c"
|
||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/src/grammar.json"
|
||||
COMMAND "${TREE_SITTER_CLI}" generate src/grammar.json
|
||||
--stage=parser --abi=${TREE_SITTER_ABI_VERSION}
|
||||
--emit=parser --abi=${TREE_SITTER_ABI_VERSION}
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
COMMENT "Generating parser.c")
|
||||
|
||||
|
|
|
|||
|
|
@ -73,10 +73,10 @@ $(LANGUAGE_NAME).pc: bindings/c/$(LANGUAGE_NAME).pc.in
|
|||
-e 's|@CMAKE_INSTALL_PREFIX@|$(PREFIX)|' $< > $@
|
||||
|
||||
$(SRC_DIR)/grammar.json: grammar.js
|
||||
$(TS) generate --stage=json $^
|
||||
$(TS) generate --emit=json $^
|
||||
|
||||
$(PARSER): $(SRC_DIR)/grammar.json
|
||||
$(TS) generate --stage=parser $^
|
||||
$(TS) generate --emit=parser $^
|
||||
|
||||
install: all
|
||||
install -d '$(DESTDIR)$(DATADIR)'/tree-sitter/queries/KEBAB_PARSER_NAME '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter '$(DESTDIR)$(PCLIBDIR)' '$(DESTDIR)$(LIBDIR)'
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue