Struct Variant

Source
pub struct Variant<T>(/* private fields */)
where
    T: Marshal + Signature;

Trait Implementations§

Source§

impl<T> Marshal for Variant<T>
where T: Marshal + Signature,

Source§

fn marshal(&self, ctx: &mut MarshalContext<'_, '_>) -> Result<(), Error>

Source§

fn marshal_as_variant( &self, ctx: &mut MarshalContext<'_, '_>, ) -> Result<(), Error>

Source§

impl<T> Signature for Variant<T>
where T: Marshal + Signature,

Source§

fn signature() -> Type

Source§

fn alignment() -> usize

Source§

fn sig_str(s_buf: &mut SignatureBuffer)

Appends the signature of the type to the SignatureBuffer. Read more
Source§

fn has_sig(sig: &str) -> bool

Check if this type fulfills this signature. This may expect to only be called with valid signatures. But it might be called with the wrong signature. This means for example you must check the length before indexing. Read more
Source§

unsafe fn valid_slice(_bo: ByteOrder) -> bool

If this returns true, it indicates that for implementing type T, Rust’s [T] is identical to DBus’s array format and can be copied into a message after aligning the first element. Read more

Auto Trait Implementations§

§

impl<T> Freeze for Variant<T>
where T: Freeze,

§

impl<T> RefUnwindSafe for Variant<T>
where T: RefUnwindSafe,

§

impl<T> Send for Variant<T>
where T: Send,

§

impl<T> Sync for Variant<T>
where T: Sync,

§

impl<T> Unpin for Variant<T>
where T: Unpin,

§

impl<T> UnwindSafe for Variant<T>
where T: UnwindSafe,

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
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.

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.