[][src]Struct vmap::Error

pub struct Error { /* fields omitted */ }

A list specifying general categories of map errors.

Implementations

impl Error[src]

pub fn io(op: Operation, err: Error) -> Self[src]

Returns an error that wraps a std::io::Error along with an Operation.

Examples

use std::io::ErrorKind;
use vmap::{Error, Operation};

println!("I/O error: {:?}", Error::io(
    Operation::MapFile,
    ErrorKind::NotFound.into(),
));

pub fn input(op: Operation, input: Input) -> Self[src]

Returns an error that wraps an Input type along with an Operation.

Examples

use vmap::{Error, Operation, Input};

println!("Input error: {:?}", Error::input(
    Operation::MapFile,
    Input::InvalidRange,
));

pub fn system(op: Operation, err: Error) -> Self[src]

Returns an error that wraps a system_error::Error along with an Operation.

Examples

use std::io::ErrorKind;
use vmap::{Error, Operation};

println!("System error: {:?}", Error::system(
    Operation::MapFile,
    system_error::Error::last_os_error()
));

pub fn kernel(op: Operation, code: KernelCode) -> Self[src]

Returns an error that wraps a system_error::KernelCode along with an Operation.

Examples

use vmap::{Error, Operation};

println!("Kernel error: {:?}", Error::kernel(
    Operation::RingAllocate,
    1,
));

pub fn last_os_error(op: Operation) -> Self[src]

Returns an error representing the last OS error which occurred.

This function reads the value of errno for the target platform (e.g. GetLastError on Windows) and will return a corresponding instance of Error for the error code.

Examples

use vmap::{Error, Operation};

println!("last OS error: {:?}", Error::last_os_error(Operation::MapFile));

pub fn raw_os_error(&self) -> Option<i32>[src]

Returns the OS error that this error represents (if any).

If this Error was constructed via last_os_error, then this function will return Some, otherwise it will return None.

Examples

use vmap::{Error, Input, Operation};

fn print_os_error(err: &Error) {
    if let Some(raw_os_err) = err.raw_os_error() {
        println!("raw OS error: {:?}", raw_os_err);
    } else {
        println!("Not an OS error");
    }
}

// Will print "raw OS error: ...".
print_os_error(&Error::last_os_error(Operation::MapFile));
// Will print "Not an OS error".
print_os_error(&Error::input(Operation::MapFile, Input::InvalidRange));

pub fn kind(&self) -> ErrorKind[src]

Returns the corresponding std::io::ErrorKind for this error.

Examples

use std::io::ErrorKind;
use vmap::{Error, Operation};

fn print_error(err: Error) {
    println!("{:?}", err.kind());
}

// Will print "Other".
print_error(Error::last_os_error(Operation::MapFile));
// Will print "NotFound".
print_error(Error::io(Operation::MapFile, ErrorKind::NotFound.into()));

pub fn operation(&self) -> Operation[src]

Returns the corresponding Operation that cuased the error.

Examples

use vmap::{Error, Operation};

fn print_operation(err: Error) {
    println!("{:?}", err.operation());
}

// Will print "MapFile".
print_operation(Error::last_os_error(Operation::MapFile));

Trait Implementations

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error[src]

impl<F> From<(Error, F)> for Error[src]

fn from(value: (Error, F)) -> Error[src]

Converts the (Error, F) tuple from a ConvertResult result into an Error, dropping the failed map in the process.

impl From<Error> for Error[src]

Auto Trait Implementations

impl !RefUnwindSafe for Error

impl Send for Error

impl Sync for Error

impl Unpin for Error

impl !UnwindSafe for Error

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.