Enum xous::definitions::Result
source · #[repr(C)]pub enum Result {
Show 23 variants
Ok,
Error(Error),
MemoryAddress(MemoryAddress),
MemoryRange(MemoryRange),
ReadyThreads(usize, usize, usize, usize, usize, usize, usize),
ResumeProcess,
ServerID(SID),
ConnectionID(CID),
NewServerID(SID, CID),
MessageEnvelope(MessageEnvelope),
ThreadID(TID),
ProcessID(PID),
Unimplemented,
BlockedProcess,
Scalar1(usize),
Scalar2(usize, usize),
RetryCall,
None,
MemoryReturned(Option<MemorySize>, Option<MemorySize>),
NewProcess(ProcessStartup),
Scalar5(usize, usize, usize, usize, usize),
Message(Message),
UnknownResult(usize, usize, usize, usize, usize, usize, usize),
}
Variants§
Ok
0
Error(Error)
1
MemoryAddress(MemoryAddress)
2
MemoryRange(MemoryRange)
3
ReadyThreads(usize, usize, usize, usize, usize, usize, usize)
4
ResumeProcess
5
ServerID(SID)
6
ConnectionID(CID)
7
NewServerID(SID, CID)
8
MessageEnvelope(MessageEnvelope)
9
ThreadID(TID)
10
ProcessID(PID)
11
Unimplemented
12: The requested system call is unimplemented
BlockedProcess
13: The process is blocked and should perform the read() again. This is only
ever seen in Hosted
mode, because when running natively the kernel
simply never schedules the process.
Scalar1(usize)
14: A scalar with one value
Scalar2(usize, usize)
15: A scalar with two values
RetryCall
16: The syscall should be attempted again. This is returned when calling
functions such as try_connect()
and try_send()
that may block.
None
The message was successful but no value was returned.
MemoryReturned(Option<MemorySize>, Option<MemorySize>)
Memory was returned, and more information is available.
NewProcess(ProcessStartup)
Returned when a process has started. This describes the new process to the caller.
Scalar5(usize, usize, usize, usize, usize)
20: A scalar with five values
Message(Message)
21: A message is returned as part of send_message()
when the result is blocking
UnknownResult(usize, usize, usize, usize, usize, usize, usize)
Reserved: do not rely on the argument numbering for this variant.