pub trait PortRead {
// Required method
unsafe fn read_from_port(port: u16) -> Self;
}
Expand description
A helper trait that implements the read port operation.
On x86, I/O ports operate on either u8
(via inb
/outb
), u16
(via inw
/outw
),
or u32
(via inl
/outl
). Therefore this trait is implemented for exactly these types.
Required Methods§
Sourceunsafe fn read_from_port(port: u16) -> Self
unsafe fn read_from_port(port: u16) -> Self
Reads a Self
value from the given port.
§Safety
This function is unsafe because the I/O port could have side effects that violate memory safety.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.