#[non_exhaustive]#[repr(u8)]pub enum HandleType {
Show 28 variants
ProcessSelf = 1,
ThreadSelf = 2,
DefaultJob = 3,
RootVmar = 4,
LoadedVmar = 5,
LdsvcLoader = 16,
VdsoVmo = 17,
StackVmo = 19,
ExecutableVmo = 20,
BootdataVmo = 26,
BootfsVmo = 27,
KernelFileVmo = 28,
ComponentConfigVmo = 29,
NamespaceDirectory = 32,
FileDescriptor = 48,
Lifecycle = 58,
DirectoryRequest = 59,
EscrowedDictionary = 60,
Resource = 63,
ClockUtc = 64,
MmioResource = 80,
IrqResource = 81,
IoportResource = 82,
SmcResource = 83,
SystemResource = 84,
User0 = 240,
User1 = 241,
User2 = 242,
}
Expand description
Handle types as defined by the processargs protocol.
See //zircon/system/public/zircon/processargs.h for canonical definitions.
Short descriptions of each handle type are given, but more complete documentation may be found in the processargs.h header.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
ProcessSelf = 1
Handle to our own process.
Equivalent to PA_PROC_SELF.
ThreadSelf = 2
Handle to the initial thread of our own process.
Equivalent to PA_THREAD_SELF.
DefaultJob = 3
Handle to a job object which can be used to make child processes.
The job can be the same as the one used to create this process or it can be different.
Equivalent to PA_JOB_DEFAULT.
RootVmar = 4
Handle to the root of our address space.
Equivalent to PA_VMAR_ROOT.
LoadedVmar = 5
Handle to the VMAR used to load the initial program image.
Equivalent to PA_VMAR_LOADED.
LdsvcLoader = 16
Service for loading shared libraries.
See fuchsia.ldsvc.Loader
for the interface definition.
Equivalent to PA_LDSVC_LOADER.
VdsoVmo = 17
Handle to the VMO containing the vDSO ELF image.
Equivalent to PA_VMO_VDSO.
StackVmo = 19
Handle to the VMO used to map the initial thread’s stack.
Equivalent to PA_VMO_STACK.
ExecutableVmo = 20
Handle to the VMO for the main executable file.
Equivalent to PA_VMO_EXECUTABLE.
BootdataVmo = 26
Used by kernel and userboot during startup.
Equivalent to PA_VMO_BOOTDATA.
BootfsVmo = 27
Used by kernel and userboot during startup.
Equivalent to PA_VMO_BOOTFS.
KernelFileVmo = 28
Used by the kernel to export debug information as a file in bootfs.
Equivalent to PA_VMO_KERNEL_FILE.
ComponentConfigVmo = 29
A Handle to a component’s process’ configuration VMO.
Equivalent to PA_VMO_COMPONENT_CONFIG.
NamespaceDirectory = 32
A handle to a fuchsia.io.Directory service to be used as a directory in the process’s namespace. Corresponds to a path in the processargs bootstrap message’s namespace table based on the argument of a HandleInfo of this type.
Equivalent to PA_NS_DIR.
FileDescriptor = 48
A handle which will be used as a file descriptor.
Equivalent to PA_FD.
Lifecycle = 58
A Handle to a channel on which the process may serve the the |fuchsia.process.Lifecycle| protocol.
Equivalent to PA_LIFECYCLE.
DirectoryRequest = 59
Server endpoint for handling connections to a process’s outgoing directory.
Equivalent to PA_DIRECTORY_REQUEST.
EscrowedDictionary = 60
A |fuchsia.component.sandbox/Dictionary| client endpoint where the process may find a dictionary that it has stowed away earlier via |fuchsia.process.Lifecycle/OnEscrow|.
Equivalent to PA_ESCROWED_DICTIONARY.
Resource = 63
A Handle to a resource object. Used by devcoordinator and devhosts.
Equivalent to PA_RESOURCE.
ClockUtc = 64
A Handle to a clock object representing UTC. Used by runtimes to gain access to UTC time.
Equivalent to PA_CLOCK_UTC.
MmioResource = 80
A Handle to an MMIO resource object.
Equivalent to PA_MMIO_RESOURCE.
IrqResource = 81
A Handle to an IRQ resource object.
Equivalent to PA_IRQ_RESOURCE.
IoportResource = 82
A Handle to an IO Port resource object.
Equivalent to PA_IOPORT_RESOURCE.
SmcResource = 83
A Handle to an SMC resource object.
Equivalent to PA_SMC_RESOURCE.
SystemResource = 84
A Handle to the System resource object.
Equivalent to PA_SYSTEM_RESOURCE.
User0 = 240
A handle type with user-defined meaning.
Equivalent to PA_USER0.
User1 = 241
A handle type with user-defined meaning.
Equivalent to PA_USER1.
User2 = 242
A handle type with user-defined meaning.
Equivalent to PA_USER2.
Trait Implementations§
Source§impl Clone for HandleType
impl Clone for HandleType
Source§fn clone(&self) -> HandleType
fn clone(&self) -> HandleType
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for HandleType
impl Debug for HandleType
Source§impl From<HandleType> for HandleInfo
impl From<HandleType> for HandleInfo
An implementation of the From trait to create a HandleInfo from a HandleType with an argument of 0.
Source§fn from(ty: HandleType) -> Self
fn from(ty: HandleType) -> Self
Source§impl FromPrimitive for HandleType
impl FromPrimitive for HandleType
Source§fn from_i64(n: i64) -> Option<Self>
fn from_i64(n: i64) -> Option<Self>
i64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u64(n: u64) -> Option<Self>
fn from_u64(n: u64) -> Option<Self>
u64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_isize(n: isize) -> Option<Self>
fn from_isize(n: isize) -> Option<Self>
isize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_i8(n: i8) -> Option<Self>
fn from_i8(n: i8) -> Option<Self>
i8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_i16(n: i16) -> Option<Self>
fn from_i16(n: i16) -> Option<Self>
i16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_i32(n: i32) -> Option<Self>
fn from_i32(n: i32) -> Option<Self>
i32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_i128(n: i128) -> Option<Self>
fn from_i128(n: i128) -> Option<Self>
i128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moreSource§fn from_usize(n: usize) -> Option<Self>
fn from_usize(n: usize) -> Option<Self>
usize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u8(n: u8) -> Option<Self>
fn from_u8(n: u8) -> Option<Self>
u8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u16(n: u16) -> Option<Self>
fn from_u16(n: u16) -> Option<Self>
u16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u32(n: u32) -> Option<Self>
fn from_u32(n: u32) -> Option<Self>
u32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u128(n: u128) -> Option<Self>
fn from_u128(n: u128) -> Option<Self>
u128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moreSource§impl PartialEq for HandleType
impl PartialEq for HandleType
impl Copy for HandleType
impl Eq for HandleType
impl StructuralPartialEq for HandleType
Auto Trait Implementations§
impl Freeze for HandleType
impl RefUnwindSafe for HandleType
impl Send for HandleType
impl Sync for HandleType
impl Unpin for HandleType
impl UnwindSafe for HandleType
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)