#[repr(C)]pub struct RHardwareDevice {
pub key: String,
pub category_kind: RHardwareCategoryKind,
pub model: String,
pub vendor: Option<String>,
pub location: Option<String>,
pub plugin_device_id: String,
}Expand description
FFI-stable mirror of linsight_core::HardwareDevice. The plugin
emits these alongside its sensors; the daemon validates each one
before integrating into its registry.
Note: plugin_id and sensor_ids are NOT on the wire from plugin
to host — the daemon fills plugin_id from the loader’s knowledge
and sensor_ids from the manifest’s sensors list. Including them
in the FFI mirror would invite plugins to lie about either.
Fields§
§key: String§category_kind: RHardwareCategoryKind§model: String§vendor: Option<String>§location: Option<String>§plugin_device_id: StringImplementations§
Source§impl RHardwareDevice
impl RHardwareDevice
Sourcepub const fn has_optimal_layout() -> bool
pub const fn has_optimal_layout() -> bool
Returns true if the layout for RHardwareDevice is smaller or equal to that Rust would have generated for it.
Trait Implementations§
Source§impl Clone for RHardwareDevice
impl Clone for RHardwareDevice
Source§fn clone(&self) -> RHardwareDevice
fn clone(&self) -> RHardwareDevice
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 moreSource§impl Debug for RHardwareDevice
impl Debug for RHardwareDevice
Source§impl From<HardwareDevice> for RHardwareDevice
impl From<HardwareDevice> for RHardwareDevice
Source§fn from(d: HardwareDevice) -> Self
fn from(d: HardwareDevice) -> Self
Converts to this type from the input type.
Source§impl From<RHardwareDevice> for HardwareDevice
impl From<RHardwareDevice> for HardwareDevice
Source§fn from(r: RHardwareDevice) -> Self
fn from(r: RHardwareDevice) -> Self
Converts to this type from the input type.
Source§impl IStable for RHardwareDevice
impl IStable for RHardwareDevice
Source§const REPORT: &'static TypeReport
const REPORT: &'static TypeReport
A compile-time generated report of the fields of the type, allowing for compatibility inspection.
Source§const ID: u64
const ID: u64
A stable (and ideally unique) identifier for the type. Often generated using
crate::report::gen_id, but can be manually set.Source§type ForbiddenValues = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::ForbiddenValues
type ForbiddenValues = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::ForbiddenValues
The values that the annotated type cannot occupy.
Source§type UnusedBits = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::UnusedBits
type UnusedBits = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::UnusedBits
The padding bits in the annotated types
Source§type Size = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::Size
type Size = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::Size
The size of the annotated type in bytes.
Source§type Align = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::Align
type Align = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::Align
The alignment of the annotated type in bytes.
Source§type HasExactlyOneNiche = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::HasExactlyOneNiche
type HasExactlyOneNiche = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::HasExactlyOneNiche
Allows the detection of whether or not
core::option::Options are stable: Read moreSource§type ContainsIndirections = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::ContainsIndirections
type ContainsIndirections = <Struct<FieldPair<FieldPair<FieldPair<FieldPair<FieldPair<String, RHardwareCategoryKind>, String>, Option<String>>, Option<String>>, String>> as IStable>::ContainsIndirections
Whether or not the type contains indirections (pointers, indices in independent data-structures…)
Auto Trait Implementations§
impl Freeze for RHardwareDevice
impl RefUnwindSafe for RHardwareDevice
impl Send for RHardwareDevice
impl Sync for RHardwareDevice
impl Unpin for RHardwareDevice
impl UnsafeUnpin for RHardwareDevice
impl UnwindSafe for RHardwareDevice
Blanket Implementations§
Source§impl<Source> AccessAs for Source
impl<Source> AccessAs for Source
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