pub struct Error {
pub kind: ErrorKind,
pub info: Vec<String>,
/* private fields */
}
Expand description
Command Line Argument Parser Error
See Command::error
to create an error.
Fields§
§kind: ErrorKind
Deprecated, replaced with Error::kind()
info: Vec<String>
Deprecated, replaced with Error::context()
Implementations§
source§impl Error
impl Error
sourcepub fn raw(kind: ErrorKind, message: impl Display) -> Self
pub fn raw(kind: ErrorKind, message: impl Display) -> Self
Create an unformatted error
This is for you need to pass the error up to
a place that has access to the Command
at which point you can call Error::format
.
Prefer Command::error
for generating errors.
sourcepub fn format(self, cmd: &mut Command<'_>) -> Self
pub fn format(self, cmd: &mut Command<'_>) -> Self
Format the existing message with the Command’s context
sourcepub fn context(&self) -> impl Iterator<Item = (ContextKind, &ContextValue)>
pub fn context(&self) -> impl Iterator<Item = (ContextKind, &ContextValue)>
Additional information to further qualify the error
sourcepub fn use_stderr(&self) -> bool
pub fn use_stderr(&self) -> bool
Should the message be written to stdout
or not?
sourcepub fn exit(&self) -> !
pub fn exit(&self) -> !
Prints the error and exits.
Depending on the error kind, this either prints to stderr
and exits with a status of 2
or prints to stdout
and exits with a status of 0
.
sourcepub fn print(&self) -> Result<()>
pub fn print(&self) -> Result<()>
Prints formatted and colored error to stdout
or stderr
according to its error kind
§Example
use clap::Command;
match Command::new("Command").try_get_matches() {
Ok(matches) => {
// do_something
},
Err(err) => {
err.print().expect("Error writing Error");
// do_something
},
};
Trait Implementations§
source§impl Error for Error
impl Error for Error
source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for Error
impl !RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl !UnwindSafe for Error
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more