pub trait Parser: Sized {
type Item;
Show 13 methods
// Required methods
fn register_low_level(
&self,
ll: &mut LowLevelParser,
) -> Result<(), SpecError>;
fn parse_low_level(
&mut self,
ll: &mut LowLevelParserOutput,
) -> Result<Self::Item, Box<dyn Error>>;
fn update_help(&self, help: &mut Help);
// Provided methods
fn parse_args<A: IntoIterator<Item = String>>(
self,
program_name: String,
args: A,
) -> Result<Self::Item, (Box<dyn Error>, SpentParser<Self>)> { ... }
fn parse_env(
self,
) -> Result<Self::Item, (Box<dyn Error>, SpentParser<Self>)> { ... }
fn both<PU: Parser>(self, other: PU) -> Both<Self::Item, PU::Item, Self, PU> { ... }
fn map<U, F: FnOnce(Self::Item) -> U>(
self,
f: F,
) -> Map<Self::Item, U, F, Self> { ... }
fn with_help<N: IntoName>(self, name: N) -> WithHelp<Self::Item, Self> { ... }
fn with_help_default(self) -> WithHelp<Self::Item, Self> { ... }
fn with_default_general<T>(self, value: T) -> WithDefaultGeneral<T, Self> { ... }
fn choose_at_most_one<O: Parser>(self, other: O) -> ChooseAtMostOne<Self, O> { ... }
fn with_default_lazy_general<T, F: FnOnce() -> T>(
self,
f: F,
) -> WithDefaultLazyGeneral<T, F, Self> { ... }
fn required_general<S: AsRef<str>>(
self,
error_message: S,
) -> RequiredGeneral<Self> { ... }
}Required Associated Types§
Required Methods§
fn register_low_level(&self, ll: &mut LowLevelParser) -> Result<(), SpecError>
fn parse_low_level( &mut self, ll: &mut LowLevelParserOutput, ) -> Result<Self::Item, Box<dyn Error>>
fn update_help(&self, help: &mut Help)
Provided Methods§
fn parse_args<A: IntoIterator<Item = String>>( self, program_name: String, args: A, ) -> Result<Self::Item, (Box<dyn Error>, SpentParser<Self>)>
fn parse_env(self) -> Result<Self::Item, (Box<dyn Error>, SpentParser<Self>)>
fn both<PU: Parser>(self, other: PU) -> Both<Self::Item, PU::Item, Self, PU>
fn map<U, F: FnOnce(Self::Item) -> U>(self, f: F) -> Map<Self::Item, U, F, Self>
fn with_help<N: IntoName>(self, name: N) -> WithHelp<Self::Item, Self>
fn with_help_default(self) -> WithHelp<Self::Item, Self>
fn with_default_general<T>(self, value: T) -> WithDefaultGeneral<T, Self>
fn choose_at_most_one<O: Parser>(self, other: O) -> ChooseAtMostOne<Self, O>
fn with_default_lazy_general<T, F: FnOnce() -> T>( self, f: F, ) -> WithDefaultLazyGeneral<T, F, Self>
fn required_general<S: AsRef<str>>( self, error_message: S, ) -> RequiredGeneral<Self>
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.