Enum pelite::Error[][src]

pub enum Error {
    Null,
    OOB,
    ZeroFill,
    Unmapped,
    Misalign,
    BadMagic,
    Insanity,
    Corrupt,
    Overflow,
    CStr,
}

Errors while parsing the PE binary.

Variants

Null address.

Index was out of bounds.

Sections can be shorter than stored on disk, the remaining bytes will default to zeroes when loaded by the system. Since these zeroes would just be a waste of space, they are not present in the binaries on disk.

This error happens when attempting to get a reference to such zero filled data when working with PeFile contents.

Data is not mapped.

Address is misaligned.

Magic number does not match the expected value.

Sanity check failed.

Some value was so far outside its typical range, while not technically incorrect, probably indicating something went wrong.

Data corruption.

Structured data was found which simply isn't valid.

Catch all for errors which don't fall under other errors.

Address calculation overflow error.

No nul byte found when reading a C string.

Methods

impl Error
[src]

Returns if the error variant is Null.

Useful in match guards where Null should be handled as a non-error case.

fn with_default(result: pelite::Result<i32>) -> pelite::Result<i32> {
    let i = match result {
        Ok(i) => i,
        // Avoids a more verbose comparison with pelite::Error::Null
        Err(err) if err.is_null() => 0,
        Err(err) => return Err(err),
    };
    Ok(i)
}

assert_eq!(with_default(Err(pelite::Error::Null)), Ok(0));

Trait Implementations

impl Copy for Error
[src]

impl Clone for Error
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Debug for Error
[src]

Formats the value using the given formatter. Read more

impl Eq for Error
[src]

impl PartialEq for Error
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl Hash for Error
[src]

Feeds this value into the given [Hasher]. Read more

Feeds a slice of this type into the given [Hasher]. Read more

impl Display for Error
[src]

Formats the value using the given formatter. Read more

impl Error for Error
[src]

This method is soft-deprecated. Read more

The lower-level cause of this error, if any. Read more

impl From<Error> for FindError
[src]

Performs the conversion.

Auto Trait Implementations

impl Send for Error

impl Sync for Error