pub enum TRDRiscv64bitSyscallReturn {
Show 21 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(u32, u32, u32),
SuccessAddr(usize),
SuccessPtr(CapabilityPtr),
}Expand description
System call return variants defined as defined in TRD-Riscv64bit.
These variants correspond to those defined in the core kernel’s
SyscallReturn enum. For documentation on the individual
variants, refer to that 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(u32, u32, u32)
SuccessAddr(usize)
SuccessPtr(CapabilityPtr)
Trait Implementations§
Source§impl Clone for TRDRiscv64bitSyscallReturn
impl Clone for TRDRiscv64bitSyscallReturn
Source§fn clone(&self) -> TRDRiscv64bitSyscallReturn
fn clone(&self) -> TRDRiscv64bitSyscallReturn
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for TRDRiscv64bitSyscallReturn
Source§impl Debug for TRDRiscv64bitSyscallReturn
impl Debug for TRDRiscv64bitSyscallReturn
Source§impl From<SyscallReturn> for TRDRiscv64bitSyscallReturn
impl From<SyscallReturn> for TRDRiscv64bitSyscallReturn
Source§fn from(syscall_return: SyscallReturn) -> Self
fn from(syscall_return: SyscallReturn) -> Self
Map from the kernel’s SyscallReturn enum to the subset of return
values specified in TRD-Riscv64bit. This ensures backwards compatibility with
architectures implementing the ABI as specified in the TRD.
Auto Trait Implementations§
impl !Send for TRDRiscv64bitSyscallReturn
impl !Sync for TRDRiscv64bitSyscallReturn
impl Freeze for TRDRiscv64bitSyscallReturn
impl RefUnwindSafe for TRDRiscv64bitSyscallReturn
impl Unpin for TRDRiscv64bitSyscallReturn
impl UnsafeUnpin for TRDRiscv64bitSyscallReturn
impl UnwindSafe for TRDRiscv64bitSyscallReturn
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