Enum kernel::utilities::arch_helpers::TRD104SyscallReturn
source · pub enum TRD104SyscallReturn {
Show 19 variants
Failure(ErrorCode),
FailureU32(ErrorCode, u32),
FailureU32U32(ErrorCode, u32, u32),
FailureU64(ErrorCode, u64),
Success,
SuccessU32(u32),
SuccessU32U32(u32, u32),
SuccessU32U32U32(u32, u32, u32),
SuccessU64(u64),
SuccessU32U64(u32, u64),
AllowReadWriteSuccess(*mut u8, usize),
AllowReadWriteFailure(ErrorCode, *mut u8, usize),
UserspaceReadableAllowSuccess(*mut u8, usize),
UserspaceReadableAllowFailure(ErrorCode, *mut u8, usize),
AllowReadOnlySuccess(*const u8, usize),
AllowReadOnlyFailure(ErrorCode, *const u8, usize),
SubscribeSuccess(*const (), usize),
SubscribeFailure(ErrorCode, *const (), usize),
YieldWaitFor(usize, usize, usize),
}
Expand description
System call return variants defined as defined in TRD104. These are a strict
subset of the variants defined in the core kernel’s SyscallReturn
enum. For documentation on the individual variants, refer to this type
instead.
Variants§
Failure(ErrorCode)
FailureU32(ErrorCode, u32)
FailureU32U32(ErrorCode, u32, u32)
FailureU64(ErrorCode, u64)
Success
SuccessU32(u32)
SuccessU32U32(u32, u32)
SuccessU32U32U32(u32, u32, u32)
SuccessU64(u64)
SuccessU32U64(u32, u64)
AllowReadWriteSuccess(*mut u8, usize)
AllowReadWriteFailure(ErrorCode, *mut u8, usize)
UserspaceReadableAllowSuccess(*mut u8, usize)
UserspaceReadableAllowFailure(ErrorCode, *mut u8, usize)
AllowReadOnlySuccess(*const u8, usize)
AllowReadOnlyFailure(ErrorCode, *const u8, usize)
SubscribeSuccess(*const (), usize)
SubscribeFailure(ErrorCode, *const (), usize)
YieldWaitFor(usize, usize, usize)
Implementations§
source§impl TRD104SyscallReturn
impl TRD104SyscallReturn
sourcepub fn from_syscall_return(syscall_return: SyscallReturn) -> Self
pub fn from_syscall_return(syscall_return: SyscallReturn) -> Self
Map from the kernel’s SyscallReturn
enum to the subset of return
values specified in TRD104. This ensures backwards compatibility with
architectures implementing the ABI as specified in TRD104.
Trait Implementations§
source§impl Clone for TRD104SyscallReturn
impl Clone for TRD104SyscallReturn
source§fn clone(&self) -> TRD104SyscallReturn
fn clone(&self) -> TRD104SyscallReturn
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for TRD104SyscallReturn
impl Debug for TRD104SyscallReturn
impl Copy for TRD104SyscallReturn
Auto Trait Implementations§
impl Freeze for TRD104SyscallReturn
impl RefUnwindSafe for TRD104SyscallReturn
impl !Send for TRD104SyscallReturn
impl !Sync for TRD104SyscallReturn
impl Unpin for TRD104SyscallReturn
impl UnwindSafe for TRD104SyscallReturn
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)