cli: add dev command for enums experiment
This commit is contained in:
parent
56ec11e143
commit
db9228dec4
4 changed files with 43 additions and 4 deletions
|
@ -12,6 +12,7 @@ clap = { workspace = true, features = [ "derive", "env" ] }
|
|||
dirs = "5"
|
||||
eval = { path = "../eval" }
|
||||
ir = { path = "../ir" }
|
||||
prowocessing = { path = "../prowocessing"}
|
||||
owo-colors = "4"
|
||||
ron = "0.8"
|
||||
serde = { workspace = true, features = [ "derive" ] }
|
||||
|
|
|
@ -2,6 +2,7 @@ use std::{fs, path::PathBuf};
|
|||
|
||||
use clap::{Parser, Subcommand};
|
||||
use config::{CliConfigs, Config};
|
||||
use dev::DevCommands;
|
||||
use welcome_msg::print_startup_msg;
|
||||
|
||||
mod config;
|
||||
|
@ -24,7 +25,10 @@ enum Commands {
|
|||
/// What file contains the pipeline to evaluate.
|
||||
source: PathBuf,
|
||||
},
|
||||
Dev,
|
||||
Dev {
|
||||
#[command(subcommand)]
|
||||
dev_command: DevCommands,
|
||||
},
|
||||
}
|
||||
|
||||
fn main() {
|
||||
|
@ -46,8 +50,34 @@ fn main() {
|
|||
machine.feed(ir);
|
||||
machine.eval_full();
|
||||
}
|
||||
Commands::Dev => {
|
||||
println!("Hello world!");
|
||||
Commands::Dev { dev_command } => dev_command.run(),
|
||||
}
|
||||
}
|
||||
|
||||
mod dev {
|
||||
use clap::Subcommand;
|
||||
use prowocessing::experimental::enum_based::{Pipeline, PipelineBuilder};
|
||||
|
||||
#[derive(Subcommand)]
|
||||
pub(crate) enum DevCommands {
|
||||
Enums { test_str: String },
|
||||
}
|
||||
|
||||
impl DevCommands {
|
||||
pub fn run(self) {
|
||||
match self {
|
||||
DevCommands::Enums { test_str } => {
|
||||
let upr = PipelineBuilder::new()
|
||||
.insert(prowocessing::experimental::enum_based::Instruction::Uppercase)
|
||||
.build();
|
||||
let lwr = PipelineBuilder::new()
|
||||
.insert(prowocessing::experimental::enum_based::Instruction::Lowercase)
|
||||
.build();
|
||||
|
||||
println!("Upr: {}", upr.run(test_str.clone()));
|
||||
println!("Lwr: {}", lwr.run(test_str.clone()));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue