pub trait RegisteredDriver {
    type Request: 'static;
    type Response: 'static;
    type Error: 'static;

    const UUID: Uuid;

    // Provided method
    fn type_id() -> RegistryType { ... }
}
Expand description

A marker trait designating a registerable driver service.

Typically used with Registry::register or Registry::register_konly. Can typically be retrieved by Registry::get or Registry::get_userspace After the service has been registered.

Required Associated Types§

source

type Request: 'static

This is the type of the request sent TO the driver service

source

type Response: 'static

This is the type of a SUCCESSFUL response sent FROM the driver service

source

type Error: 'static

This is the type of an UNSUCCESSFUL response sent FROM the driver service

Required Associated Constants§

source

const UUID: Uuid

This is the UUID of the driver service

Provided Methods§

source

fn type_id() -> RegistryType

Get the type_id used to make sure that driver instances are correctly typed. Corresponds to the same type ID as (Self::Request, Self::Response, Self::Error)

Implementors§

source§

impl RegisteredDriver for EmbDisplayService

§

type Request = Request

§

type Response = Response

§

type Error = FrameError

source§

const UUID: Uuid = crate::registry::known_uuids::kernel::EMB_DISPLAY

source§

impl RegisteredDriver for SerialMuxService

§

type Request = Request

§

type Response = Response

§

type Error = SerialMuxError

source§

const UUID: Uuid = crate::registry::known_uuids::kernel::SERIAL_MUX

source§

impl RegisteredDriver for SimpleSerialService

§

type Request = Request

§

type Response = Response

§

type Error = SimpleSerialError

source§

const UUID: Uuid = known_uuids::kernel::SIMPLE_SERIAL_PORT