Enum ignore::Error

source ·
pub enum Error {
    Partial(Vec<Error>),
    WithLineNumber {
        line: u64,
        err: Box<Error>,
    },
    WithPath {
        path: PathBuf,
        err: Box<Error>,
    },
    WithDepth {
        depth: usize,
        err: Box<Error>,
    },
    Loop {
        ancestor: PathBuf,
        child: PathBuf,
    },
    Io(Error),
    Glob {
        glob: Option<String>,
        err: String,
    },
    UnrecognizedFileType(String),
    InvalidDefinition,
}
Expand description

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

An error associated with a specific line number.

Fields

§line: u64

The line number.

§err: Box<Error>

The underlying error.

§

WithPath

An error associated with a particular file path.

Fields

§path: PathBuf

The file path.

§err: Box<Error>

The underlying error.

§

WithDepth

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

Fields

§depth: usize

The directory depth.

§err: Box<Error>

The underlying error.

§

Loop

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

Fields

§ancestor: PathBuf

The ancestor file path in the loop.

§child: PathBuf

The child file path in the loop.

§

Io(Error)

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

§

Glob

An error that occurs when trying to parse a glob.

Fields

§glob: Option<String>

The original glob that caused this error. This glob, when available, always corresponds to the glob provided by an end user. e.g., It is the glob as written in a .gitignore file.

(This glob may be distinct from the glob that is actually compiled, after accounting for gitignore semantics.)

§err: String

The underlying glob error as a string.

§

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§

source§

impl Error

source

pub fn is_partial(&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.

source

pub fn is_io(&self) -> bool

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

source

pub fn io_error(&self) -> Option<&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.

source

pub fn into_io_error(self) -> Option<Error>

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

source

pub fn depth(&self) -> Option<usize>

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

Trait Implementations§

source§

impl Clone for Error

source§

fn clone(&self) -> Error

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Error

source§

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

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

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

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(err: Error) -> Error

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> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<T> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
source§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

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

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

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

Performs the conversion.