diff options
author | Matthias Schiffer <mschiffer@universe-factory.net> | 2024-04-20 14:28:05 +0200 |
---|---|---|
committer | Matthias Schiffer <mschiffer@universe-factory.net> | 2024-04-20 14:38:17 +0200 |
commit | e9bf0fc40c0eb7e9d4228b804d62f31b0a136528 (patch) | |
tree | 7872f587782d5635eadbf82ae861d474d4da2efe /crates/driver/src/parse.rs | |
parent | 35e68444dd5e9d3d5fc39409c48be6eb3fa05e07 (diff) | |
download | rebel-e9bf0fc40c0eb7e9d4228b804d62f31b0a136528.tar rebel-e9bf0fc40c0eb7e9d4228b804d62f31b0a136528.zip |
Rename directories to match crate names
Diffstat (limited to 'crates/driver/src/parse.rs')
-rw-r--r-- | crates/driver/src/parse.rs | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/crates/driver/src/parse.rs b/crates/driver/src/parse.rs deleted file mode 100644 index 5857efb..0000000 --- a/crates/driver/src/parse.rs +++ /dev/null @@ -1,72 +0,0 @@ -#[derive(Debug, Clone, Copy)] -pub struct TaskID<'a> { - pub recipe: &'a str, - pub task: &'a str, -} - -#[derive(Debug, Clone, Copy, Default)] -pub struct TaskArgs<'a> { - pub host: Option<&'a str>, - pub target: Option<&'a str>, -} - -#[derive(Debug, Clone, Copy)] -pub struct Task<'a> { - pub id: TaskID<'a>, - pub args: TaskArgs<'a>, -} - -#[derive(Debug, Clone, Copy)] -pub struct TaskFlags { - pub force_run: bool, -} - -peg::parser! { - grammar rules() for str { - rule t<T>(tag: rule<()>, value: rule<T>) -> T - = tag() v:value() { v } - - rule name_char() - = ['a'..='z' | 'A' ..='Z' | '0'..='9' | '_' | '-'] - - rule name() -> &'input str - = $(name_char()+) - - rule recipe_id() -> &'input str - = $(name() ("/" name())?) - - rule task_id() -> TaskID<'input> - = recipe:recipe_id() "::" task:name() { - TaskID { recipe, task } - } - - rule task_args() -> TaskArgs<'input> - = "@" host:name()? target:t(<":">, <name()>)? { - TaskArgs { - host, - target, - } - } - / { Default::default() } - - pub rule task() -> Task<'input> - = id:task_id() args:task_args() { - Task { - id, - args, - } - } - - rule force_run() -> bool - = "+" { true } - / { false } - - rule task_flags() -> TaskFlags - = force_run:force_run() { TaskFlags { force_run } } - - pub rule task_with_flags() -> (Task<'input>, TaskFlags) - = task:task() flags:task_flags() { (task, flags) } - } -} - -pub use rules::*; |