x86_64::structures::port

Trait PortRead

Source
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§

Source

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.

Implementations on Foreign Types§

Source§

impl PortRead for u8

Source§

unsafe fn read_from_port(port: u16) -> u8

Source§

impl PortRead for u16

Source§

unsafe fn read_from_port(port: u16) -> u16

Source§

impl PortRead for u32

Source§

unsafe fn read_from_port(port: u16) -> u32

Implementors§