Struct Variant

Source
pub struct Variant<'fds, 'buf> { /* private fields */ }

Implementations§

Source§

impl<'buf, 'fds> Variant<'fds, 'buf>

Source

pub fn get_value_sig(&self) -> &Type

Get the Type of the value contained by the variant.

Source

pub fn get<T>(&self) -> Result<T, Error>
where T: Unmarshal<'buf, 'fds>,

Unmarshal the variant’s value. This method is used in the same way as MessageBodyParser::get().

Trait Implementations§

Source§

impl<'fds, 'buf> Debug for Variant<'fds, 'buf>

Source§

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

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

impl Signature for Variant<'_, '_>

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

impl<'buf, 'fds> Unmarshal<'buf, 'fds> for Variant<'fds, 'buf>

Source§

fn unmarshal( ctx: &mut UnmarshalContext<'fds, 'buf>, ) -> Result<(usize, Variant<'fds, 'buf>), Error>

Auto Trait Implementations§

§

impl<'fds, 'buf> Freeze for Variant<'fds, 'buf>

§

impl<'fds, 'buf> RefUnwindSafe for Variant<'fds, 'buf>

§

impl<'fds, 'buf> Send for Variant<'fds, 'buf>

§

impl<'fds, 'buf> Sync for Variant<'fds, 'buf>

§

impl<'fds, 'buf> Unpin for Variant<'fds, 'buf>

§

impl<'fds, 'buf> UnwindSafe for Variant<'fds, 'buf>

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.