use clap::Parser; use serde::Serialize; use crate::subcmd::{ cmd::JVCommand, errors::{CmdExecuteError, CmdPrepareError, CmdRenderError}, renderer::{JVRenderResult, JVResultRenderer}, }; pub struct JVUnknownCommand; #[derive(Parser, Debug)] pub struct JVUnknownArgument; pub struct JVUnknownInput; pub struct JVUnknownCollect; #[derive(Serialize)] pub struct JVUnknownOutput; impl JVCommand< JVUnknownArgument, // Argument JVUnknownInput, // Input Data JVUnknownCollect, // Collect Resources JVUnknownOutput, // Output Data JVUnknownRenderer, // Default Renderer > for JVUnknownCommand { async fn prepare( _args: &JVUnknownArgument, _ctx: &JVCommandContext, ) -> Result { todo!() } async fn collect( _args: &JVUnknownArgument, _ctx: &JVCommandContext, ) -> Result { todo!() } async fn exec( _input: JVUnknownInput, _collect: JVUnknownCollect, ) -> Result { todo!() } fn get_help_str() -> String { "".to_string() } } pub struct JVUnknownRenderer; impl JVResultRenderer for JVUnknownRenderer { async fn render(_data: &JVUnknownOutput) -> Result { todo!() } }