pub struct InstanceLuid(pub u32, pub u32);Expand description
The two hex DWORDs of an instance-name luid token, in printed order.
WHY not “high, low”: the HighPart-then-LowPart order is inferred from observation, not documented anywhere by Microsoft. Matching therefore verifies BOTH parts against an enumerated adapter LUID (either order) and treats no-match as “unattributed” (§3.2) — a wrong attribution is worse than an honest gap.
Tuple Fields§
§0: u32§1: u32Implementations§
Source§impl InstanceLuid
impl InstanceLuid
Sourcepub fn matches(&self, high: i32, low: u32) -> bool
pub fn matches(&self, high: i32, low: u32) -> bool
Does this instance belong to the adapter with (HighPart, LowPart)?
Accepts the pair in either order — see the type-level WHY. A mirrored
collision between two real adapters would require LUIDs (x, y) and (y, x)
alive in one session; the kernel allocates LowPart monotonically with
HighPart almost always 0, so the ambiguity is theoretical.
Trait Implementations§
Source§impl Clone for InstanceLuid
impl Clone for InstanceLuid
Source§fn clone(&self) -> InstanceLuid
fn clone(&self) -> InstanceLuid
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 InstanceLuid
Source§impl Debug for InstanceLuid
impl Debug for InstanceLuid
Source§impl Default for InstanceLuid
impl Default for InstanceLuid
Source§fn default() -> InstanceLuid
fn default() -> InstanceLuid
Returns the “default value” for a type. Read more
impl Eq for InstanceLuid
Source§impl PartialEq for InstanceLuid
impl PartialEq for InstanceLuid
impl StructuralPartialEq for InstanceLuid
Auto Trait Implementations§
impl Freeze for InstanceLuid
impl RefUnwindSafe for InstanceLuid
impl Send for InstanceLuid
impl Sync for InstanceLuid
impl Unpin for InstanceLuid
impl UnsafeUnpin for InstanceLuid
impl UnwindSafe for InstanceLuid
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