Struct Driver

Source
pub struct Driver;
Expand description

The type corresponding to the Driver protocol. This protocol is used by the Driver Framework’s Driver Host to communicate various messages and lifecycle hooks to the driver. The connection for this protocol is established through the |DriverRegistration| defined in the driver_symbols library.

Once the driver has closed its server end, the Driver Framework will initiate the shutdown of all dispatchers belonging to this driver.

Trait Implementations§

Source§

impl<___T, ___H> ClientProtocol<___T, ___H> for Driver
where ___T: Transport, ___H: DriverClientHandler<___T>, <Start as Method>::Response: Decode<<___T as Transport>::RecvBuffer>,

Source§

fn on_event( handler: &mut ___H, sender: &ClientSender<___T, Self>, ordinal: u64, buffer: ___T::RecvBuffer, )

Handles a received client event with the given handler.
Source§

impl Debug for Driver

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<___T, ___H> ServerProtocol<___T, ___H> for Driver
where ___T: Transport, ___H: DriverServerHandler<___T>, WireDriverStartRequest: Decode<<___T as Transport>::RecvBuffer>,

Source§

fn on_one_way( handler: &mut ___H, sender: &ServerSender<___T, Self>, ordinal: u64, buffer: ___T::RecvBuffer, )

Handles a received server one-way message with the given handler.
Source§

fn on_two_way( handler: &mut ___H, sender: &ServerSender<___T, Self>, ordinal: u64, buffer: ___T::RecvBuffer, responder: Responder, )

Handles a received server two-way message with the given handler.
Source§

impl TakeFrom<Driver> for DriverMarker

Source§

fn take_from(from: &Driver) -> Self

Converts from the given T, taking any resources that can’t be cloned.
§

const COPY_OPTIMIZATION: CopyOptimization<Self> = _

An optimization flag that allows the bytes of this type to be copied directly during conversion instead of calling take_from. Read more

Auto Trait Implementations§

§

impl Freeze for Driver

§

impl RefUnwindSafe for Driver

§

impl Send for Driver

§

impl Sync for Driver

§

impl Unpin for Driver

§

impl UnwindSafe for Driver

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T, D> Encode<Ambiguous1, D> for T
where D: ResourceDialect,

§

unsafe fn encode( self, _encoder: &mut Encoder<'_, D>, _offset: usize, _depth: Depth, ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
§

impl<T, D> Encode<Ambiguous2, D> for T
where D: ResourceDialect,

§

unsafe fn encode( self, _encoder: &mut Encoder<'_, D>, _offset: usize, _depth: Depth, ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.