Enum Error

enum Error

Represents an error that can occur when parsing a gitignore file.

Variants

Partial(Vec<Error>)

A collection of "soft" errors. These occur when adding an ignore file partially succeeded.

WithLineNumber { line: u64, err: Box<Error> }

An error associated with a specific line number.

WithPath { path: std::path::PathBuf, err: Box<Error> }

An error associated with a particular file path.

WithDepth { depth: usize, err: Box<Error> }

An error associated with a particular directory depth when recursively walking a directory.

Loop { ancestor: std::path::PathBuf, child: std::path::PathBuf }

An error that occurs when a file loop is detected when traversing symbolic links.

Io(std::io::Error)

An error that occurs when doing I/O, such as reading an ignore file.

Glob { glob: Option<String>, err: String }

An error that occurs when trying to parse a glob.

UnrecognizedFileType(String)

A type selection for a file type that is not defined.

InvalidDefinition

A user specified file type definition could not be parsed.

Implementations

impl Error

fn is_partial(self: &Self) -> bool

Returns true if this is a partial error.

A partial error occurs when only some operations failed while others may have succeeded. For example, an ignore file may contain an invalid glob among otherwise valid globs.

fn is_io(self: &Self) -> bool

Returns true if this error is exclusively an I/O error.

fn io_error(self: &Self) -> Option<&std::io::Error>

Inspect the original std::io::Error if there is one.

None is returned if the Error doesn't correspond to an std::io::Error. This might happen, for example, when the error was produced because a cycle was found in the directory tree while following symbolic links.

This method returns a borrowed value that is bound to the lifetime of the Error. To obtain an owned value, the into_io_error can be used instead.

This is the original std::io::Error and is not the same as impl From<Error> for std::io::Error which contains additional context about the error.

fn into_io_error(self: Self) -> Option<std::io::Error>

Similar to io_error except consumes self to convert to the original std::io::Error if one exists.

fn depth(self: &Self) -> Option<usize>

Returns a depth associated with recursively walking a directory (if this error was generated from a recursive directory iterator).

impl Clone for Error

fn clone(self: &Self) -> Error

impl Debug for Error

fn fmt(self: &Self, f: &mut $crate::fmt::Formatter<'_>) -> $crate::fmt::Result

impl Display for Error

fn fmt(self: &Self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result

impl Error for Error

fn description(self: &Self) -> &str

impl Freeze for Error

impl From for Error

fn from(err: std::io::Error) -> Error

impl RefUnwindSafe for Error

impl Send for Error

impl Sync for Error

impl Unpin for Error

impl UnwindSafe for Error

impl<T> Any for Error

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for Error

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for Error

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> CloneToUninit for Error

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> From for Error

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> Pointable for Error

unsafe fn init(init: <T as Pointable>::Init) -> usize
unsafe fn deref<'a>(ptr: usize) -> &'a T
unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
unsafe fn drop(ptr: usize)

impl<T> ToOwned for Error

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T> ToString for Error

fn to_string(self: &Self) -> String

impl<T, U> Into for Error

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for Error

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for Error

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>