use server_less::program;
pub struct MyApp;
#[program(name = "myctl", version = "1.0.0", description = "Example CLI application")]
impl MyApp {
pub fn create_user(&self, name: String) {
println!("Created user: {}", name);
}
pub fn list_users(&self) {
println!("Users:");
println!(" 1. Alice");
println!(" 2. Bob");
}
pub fn delete_user(&self, user_id: u32) -> Result<(), String> {
if user_id == 0 {
Err("user ID 0 is reserved".into())
} else {
println!("Deleted user {}", user_id);
Ok(())
}
}
}
fn main() -> Result<(), Box<dyn std::error::Error>> {
let app = MyApp;
println!("--- Markdown docs ---");
println!("{}", MyApp::markdown_docs());
println!("--- End docs ---\n");
app.cli_run()
}