Enum solana_rbpf::error::EbpfError[][src]

pub enum EbpfError<E: UserDefinedError> {
    UserError(E),
    ElfError(ElfError),
    SycallAlreadyRegistered(usize),
    SyscallNotRegistered(usize),
    SyscallAlreadyBound(usize),
    CallDepthExceeded(usizeusize),
    ExitRootCallFrame,
    DivideByZero(usize),
    ExecutionOverrun(usize),
    CallOutsideTextSegment(usizeu64),
    ExceededMaxInstructions(usizeu64),
    JitNotCompiled,
    InvalidVirtualAddress(u64),
    VirtualAddressOverlap(u64),
    AccessViolation(usizeAccessTypeu64u64, &'static str),
    StackAccessViolation(usizeAccessTypeu64u64i64),
    InvalidInstruction(usize),
    UnsupportedInstruction(usize),
    ExhausedTextSegment(usize),
}

Error definitions

Variants

UserError(E)

User defined error

ElfError(ElfError)

ELF error

SycallAlreadyRegistered(usize)

Syscall was already registered before

SyscallNotRegistered(usize)

Syscall was not registered before bind

SyscallAlreadyBound(usize)

Syscall already has a bound context object

CallDepthExceeded(usizeusize)

Exceeded max BPF to BPF call depth

ExitRootCallFrame

Attempt to exit from root call frame

DivideByZero(usize)

Divide by zero“

ExecutionOverrun(usize)

Exceeded max instructions allowed

CallOutsideTextSegment(usizeu64)

Attempt to call to an address outside the text segment

ExceededMaxInstructions(usizeu64)

Exceeded max instructions allowed

JitNotCompiled

Program has not been JIT-compiled

InvalidVirtualAddress(u64)

Invalid virtual address

VirtualAddressOverlap(u64)

Virtual address overlap

AccessViolation(usizeAccessTypeu64u64, &'static str)

Access violation (general)

StackAccessViolation(usizeAccessTypeu64u64i64)

Access violation (stack specific)

InvalidInstruction(usize)

Invalid instruction

UnsupportedInstruction(usize)

Unsupported instruction

ExhausedTextSegment(usize)

Compilation is too big to fit

Trait Implementations

impl<E: Debug + UserDefinedError> Debug for EbpfError<E>[src]

impl<E: UserDefinedError> Display for EbpfError<E>[src]

impl<E: Eq + UserDefinedError> Eq for EbpfError<E>[src]

impl<E: UserDefinedError> Error for EbpfError<E>[src]

impl<E: UserDefinedError> From<E> for EbpfError<E>[src]

impl<E: UserDefinedError> From<ElfError> for EbpfError<E>[src]

impl<E: UserDefinedError> From<Error> for EbpfError<E>[src]

impl<E: PartialEq + UserDefinedError> PartialEq<EbpfError<E>> for EbpfError<E>[src]

impl<E: UserDefinedError> StructuralEq for EbpfError<E>[src]

impl<E: UserDefinedError> StructuralPartialEq for EbpfError<E>[src]

Auto Trait Implementations

impl<E> RefUnwindSafe for EbpfError<E> where
    E: RefUnwindSafe

impl<E> Send for EbpfError<E> where
    E: Send

impl<E> Sync for EbpfError<E> where
    E: Sync

impl<E> Unpin for EbpfError<E> where
    E: Unpin

impl<E> UnwindSafe for EbpfError<E> where
    E: UnwindSafe

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<!> for T[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.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,