pub enum Error {
InvalidCommand {
command_name: String,
},
TooManyParameters {
command: &'static str,
},
UnexpectedCommand {
command: &'static str,
},
ChildFailed {
status: ExitStatus,
},
PipeFailed,
IoError(Error),
FromUtf8Error(FromUtf8Error),
FileError {
filename: String,
line: usize,
error: Box<Error>,
},
}
Expand description
Error enum for parsing errors.
§Examples
let error = gpp::Error::TooManyParameters { command: "my_command" };
assert_eq!(format!("{}", error), "Too many parameters for #my_command");
let error = gpp::Error::FileError {
filename: "my_file".to_string(),
line: 10,
error: Box::new(gpp::Error::UnexpectedCommand {
command: "this_command",
}),
};
assert_eq!(format!("{}", error), "Error in my_file:10: Unexpected command #this_command");
Variants§
InvalidCommand
An unknown command was encountered.
TooManyParameters
Too many parameters were given for a command (for example using #endif with parameters).
UnexpectedCommand
There was an unexpected command; currently only generated for unexpected #endins.
ChildFailed
The child process for an #exec exited with a nonzero status.
Fields
§
status: ExitStatus
PipeFailed
A pipe was unable to be set up to the child.
IoError(Error)
An error with I/O occurred.
FromUtf8Error(FromUtf8Error)
An error occurred parsing a child’s standard output as UTF-8.
FileError
An error occurred in another file.
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()
source§impl From<FromUtf8Error> for Error
impl From<FromUtf8Error> for Error
source§fn from(e: FromUtf8Error) -> Self
fn from(e: FromUtf8Error) -> Self
Converts to this type from the input type.
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