28 lines
504 B
Rust
28 lines
504 B
Rust
use std::path::PathBuf;
|
|
|
|
use crate::Task;
|
|
|
|
#[derive(clap::Args)]
|
|
pub struct Args {
|
|
#[clap(short, long)]
|
|
link: Option<String>,
|
|
|
|
name: String,
|
|
}
|
|
|
|
pub struct Request {
|
|
pub args: Args,
|
|
pub tasks: Vec<Task>,
|
|
pub tasks_file_path: PathBuf,
|
|
}
|
|
|
|
pub fn execute(mut req: Request) {
|
|
tasks.push(Task { name, link });
|
|
|
|
let mut file = std::fs::File::create(&tasks_file_path).unwrap();
|
|
file.write_all(&serde_json::to_vec(&tasks).unwrap())
|
|
.unwrap();
|
|
|
|
println!("added");
|
|
}
|