pub trait Args<C, E: Into<String>>: Run<C, E> + Sized {
// Required methods
fn new(c: &C, args: &mut ParsedArgs<'_>) -> Result<Self, ArgsParseErr>;
fn desc_act() -> &'static str;
fn add_paths(pfx: &Vec<String>, p: &mut Vec<Vec<String>>);
fn add_usage(c: &C, r: &mut Vec<[String; 4]>);
fn default(c: &C) -> Self;
// Provided methods
fn next_impl(c: &C, args: &[Arg]) -> Result<(), ArgsErr> { ... }
fn next(c: &C, s: &mut ParseCtx, args: &[Arg]) -> Result<(), ActsErr> { ... }
fn usage(c: &C) -> String { ... }
}Required Methods§
fn new(c: &C, args: &mut ParsedArgs<'_>) -> Result<Self, ArgsParseErr>
fn desc_act() -> &'static str
fn add_paths(pfx: &Vec<String>, p: &mut Vec<Vec<String>>)
fn add_usage(c: &C, r: &mut Vec<[String; 4]>)
fn default(c: &C) -> Self
Provided Methods§
fn next_impl(c: &C, args: &[Arg]) -> Result<(), ArgsErr>
fn next(c: &C, s: &mut ParseCtx, args: &[Arg]) -> Result<(), ActsErr>
fn usage(c: &C) -> String
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.