Enum wayland_backend::protocol::Argument [−][src]
pub enum Argument<Id> {
Int(i32),
Uint(u32),
Fixed(i32),
Str(Box<CString>),
Object(Id),
NewId(Id),
Array(Box<Vec<u8>>),
Fd(RawFd),
}Expand description
Enum of possible argument of the protocol
Variants
Int(i32)
Tuple Fields
0: i32An integer argument. Represented by a i32.
Uint(u32)
Tuple Fields
0: u32An unsigned integer argument. Represented by a u32.
Fixed(i32)
Tuple Fields
0: i32A signed fixed point number with 1/256 precision
Str(Box<CString>)
CString
The value is boxed to reduce the stack size of Argument. The performance
impact is negligible as string arguments are pretty rare in the protocol.
Object(Id)
Id of a wayland object
NewId(Id)
Id of a newly created wayland object
Array(Box<Vec<u8>>)
Vec
The value is boxed to reduce the stack size of Argument. The performance
impact is negligible as array arguments are pretty rare in the protocol.
Fd(RawFd)
Tuple Fields
0: RawFdA file descriptor argument. Represented by a RawFd.
Implementations
Retrieve the type of a given argument instance
Trait Implementations
Auto Trait Implementations
impl<Id> RefUnwindSafe for Argument<Id> where
Id: RefUnwindSafe,
impl<Id> UnwindSafe for Argument<Id> where
Id: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more
Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more
Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s. Read more
Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s. Read more
