pub struct DeviceInfo {Show 14 fields
pub id: Option<u64>,
pub parent_ids: Option<Vec<u64>>,
pub child_ids: Option<Vec<u64>>,
pub driver_host_koid: Option<u64>,
pub topological_path: Option<String>,
pub bound_driver_libname: Option<String>,
pub bound_driver_url: Option<String>,
pub property_list: Option<DevicePropertyList>,
pub flags: Option<DeviceFlags>,
pub moniker: Option<String>,
pub node_property_list: Option<Vec<NodeProperty>>,
pub offer_list: Option<Vec<Offer>>,
pub protocol_id: Option<u32>,
pub protocol_name: Option<String>,
/* private fields */
}
Fields§
§id: Option<u64>
(DFv1/DFv2) Unique ID identifying the device.
parent_ids: Option<Vec<u64>>
(DFv1/DFv2) List of ids representing parents. If more than one, this device is a composite device node.
child_ids: Option<Vec<u64>>
(DFv1/DFv2) List of ids representing children.
driver_host_koid: Option<u64>
(DFv1/DFv2) The process KOID of the driver host the driver resides within.
topological_path: Option<String>
(DFv1) The topological path of the driver.
bound_driver_libname: Option<String>
(DFv1) Path to the driver shared library.
bound_driver_url: Option<String>
(DFv2) URL to the driver component manifest
property_list: Option<DevicePropertyList>
(DFv1) Properties of the device.
flags: Option<DeviceFlags>
(DFv1) Tracks the state of the device.
moniker: Option<String>
(DFv2) The collection-relative moniker of the node.
node_property_list: Option<Vec<NodeProperty>>
(DFv2) Properties of the node.
offer_list: Option<Vec<Offer>>
(DFv2): Component offers to the node.
protocol_id: Option<u32>
(DFv1): Banjo protocol ID
protocol_name: Option<String>
(DFv1): Banjo protocol name
Implementations§
source§impl DeviceInfo
impl DeviceInfo
Trait Implementations§
source§impl Clone for DeviceInfo
impl Clone for DeviceInfo
source§fn clone(&self) -> DeviceInfo
fn clone(&self) -> DeviceInfo
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 DeviceInfo
impl Debug for DeviceInfo
source§impl Decode<DeviceInfo> for DeviceInfo
impl Decode<DeviceInfo> for DeviceInfo
source§impl Encode<DeviceInfo> for &DeviceInfo
impl Encode<DeviceInfo> for &DeviceInfo
source§impl Encode<DeviceInfo> for DeviceInfo
impl Encode<DeviceInfo> for DeviceInfo
source§impl PartialEq<DeviceInfo> for DeviceInfo
impl PartialEq<DeviceInfo> for DeviceInfo
source§fn eq(&self, other: &DeviceInfo) -> bool
fn eq(&self, other: &DeviceInfo) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl TypeMarker for DeviceInfo
impl TypeMarker for DeviceInfo
§type Owned = DeviceInfo
type Owned = DeviceInfo
The owned Rust type which this FIDL type decodes into.
source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Returns the minimum required alignment of the inline portion of the
encoded object. It must be a (nonzero) power of two.
source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
Returns the size of the inline portion of the encoded object, including
padding for alignment. Must be a multiple of
inline_align
.§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned
to a single memcpy. Read more§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned
to a single memcpy.source§impl ValueTypeMarker for DeviceInfo
impl ValueTypeMarker for DeviceInfo
§type Borrowed<'a> = &'a <DeviceInfo as TypeMarker>::Owned
type Borrowed<'a> = &'a <DeviceInfo as TypeMarker>::Owned
The Rust type to use for encoding. This is a particular
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read more