RefArg

Trait RefArg 

Source
pub trait RefArg:
    Debug
    + Send
    + Sync {
Show 13 methods // Required methods fn arg_type(&self) -> ArgType; fn signature(&self) -> Signature<'static>; fn append(&self, _: &mut IterAppend<'_>); fn as_any(&self) -> &dyn Any where Self: 'static; fn as_any_mut(&mut self) -> &mut dyn Any where Self: 'static; fn box_clone(&self) -> Box<dyn RefArg + 'static>; // Provided methods fn as_i64(&self) -> Option<i64> { ... } fn as_u64(&self) -> Option<u64> { ... } fn as_f64(&self) -> Option<f64> { ... } fn as_str(&self) -> Option<&str> { ... } fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>> { ... } fn as_static_inner(&self, _index: usize) -> Option<&(dyn RefArg + 'static)> where Self: 'static { ... } fn array_clone(_arg: &[Self]) -> Option<Box<dyn RefArg + 'static>> where Self: Sized { ... }
}
Expand description

Object safe version of Arg + Append + Get.

Required Methods§

Source

fn arg_type(&self) -> ArgType

The corresponding D-Bus argument type code.

Source

fn signature(&self) -> Signature<'static>

The corresponding D-Bus type signature for this type.

Source

fn append(&self, _: &mut IterAppend<'_>)

Performs the append operation.

Source

fn as_any(&self) -> &dyn Any
where Self: 'static,

Transforms this argument to Any (which can be downcasted to read the current value).

See the argument guide’s reference section for which types you can cast to.

Source

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Transforms this argument to Any (which can be downcasted to read the current value).

See the argument guide’s reference section for which types you can cast to.

§Panic

Will panic if the interior cannot be made mutable, e g, if encapsulated inside a Rc with a reference count > 1.

Source

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Deep clone of the RefArg, causing the result to be ’static.

Usable as an escape hatch in case of lifetime problems with RefArg.

In case of complex types (Array, Dict, Struct), the clone is not guaranteed to have the same internal representation as the original.

Provided Methods§

Source

fn as_i64(&self) -> Option<i64>

Try to read the argument as an i64.

Works for: Boolean, Byte, Int16, UInt16, Int32, UInt32, Int64, UnixFd.

Source

fn as_u64(&self) -> Option<u64>

Try to read the argument as an u64.

Works for: Boolean, Byte, Int16, UInt16, Int32, UInt32, UInt64.

Source

fn as_f64(&self) -> Option<f64>

Try to read the argument as an f64.

Works for: Boolean, Byte, Int16, UInt16, Int32, UInt32, Double.

Source

fn as_str(&self) -> Option<&str>

Try to read the argument as a str.

Works for: String, ObjectPath, Signature.

Source

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Try to read the argument as an iterator.

Works for: Array/Dict, Struct, Variant. For Dicts, keys and values are interleaved.

Source

fn as_static_inner(&self, _index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Try to read the inner of an argument, as another argument, specifying an index.

Works for: Variant, Array, Struct, Dict. For Dicts, even indices gets a key, odd indices gets a value.

Source

fn array_clone(_arg: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Deep clone of an array.

This method is used internally by box_clone.

Trait Implementations§

Source§

impl<'a> Get<'a> for Box<dyn RefArg>

Source§

fn get(i: &mut Iter<'a>) -> Option<Self>

Performs the get operation.

Implementations on Foreign Types§

Source§

impl RefArg for bool

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn as_str(&self) -> Option<&str>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for f64

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn as_str(&self) -> Option<&str>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for i16

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for i32

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for i64

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for u8

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for u16

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for u32

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for u64

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for VecDeque<Box<dyn RefArg>>

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl RefArg for String

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn as_str(&self) -> Option<&str>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

fn array_clone(v: &[Self]) -> Option<Box<dyn RefArg + 'static>>
where Self: Sized,

Source§

impl RefArg for File

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any

Source§

fn as_any_mut(&mut self) -> &mut dyn Any

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<'a, T: Arg + RefArg> RefArg for &'a [T]

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<'a, T: RefArg + ?Sized> RefArg for &'a T

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where T: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where T: 'static,

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn as_str(&self) -> Option<&str>

Source§

fn as_iter<'b>( &'b self, ) -> Option<Box<dyn Iterator<Item = &'b dyn RefArg> + 'b>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg> RefArg for (A,)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg> RefArg for (A, B)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg> RefArg for (A, B, C)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg, D: RefArg> RefArg for (A, B, C, D)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg, D: RefArg, E: RefArg> RefArg for (A, B, C, D, E)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg, D: RefArg, E: RefArg, F: RefArg> RefArg for (A, B, C, D, E, F)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg, D: RefArg, E: RefArg, F: RefArg, G: RefArg> RefArg for (A, B, C, D, E, F, G)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg, D: RefArg, E: RefArg, F: RefArg, G: RefArg, H: RefArg> RefArg for (A, B, C, D, E, F, G, H)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg, D: RefArg, E: RefArg, F: RefArg, G: RefArg, H: RefArg, I: RefArg> RefArg for (A, B, C, D, E, F, G, H, I)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg, D: RefArg, E: RefArg, F: RefArg, G: RefArg, H: RefArg, I: RefArg, J: RefArg> RefArg for (A, B, C, D, E, F, G, H, I, J)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg, D: RefArg, E: RefArg, F: RefArg, G: RefArg, H: RefArg, I: RefArg, J: RefArg, K: RefArg> RefArg for (A, B, C, D, E, F, G, H, I, J, K)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<A: RefArg, B: RefArg, C: RefArg, D: RefArg, E: RefArg, F: RefArg, G: RefArg, H: RefArg, I: RefArg, J: RefArg, K: RefArg, L: RefArg> RefArg for (A, B, C, D, E, F, G, H, I, J, K, L)

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<K: DictKey + RefArg + Eq + Ord, V: RefArg + Arg> RefArg for BTreeMap<K, V>

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'b>( &'b self, ) -> Option<Box<dyn Iterator<Item = &'b dyn RefArg> + 'b>>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<K: DictKey + RefArg + Eq + Hash, V: RefArg + Arg, S: BuildHasher + Send + Sync> RefArg for HashMap<K, V, S>

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'b>( &'b self, ) -> Option<Box<dyn Iterator<Item = &'b dyn RefArg> + 'b>>

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<T: Arg + RefArg> RefArg for Vec<T>

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where Self: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: 'static,

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<T: RefArg + ?Sized> RefArg for Box<T>

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where T: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where T: 'static,

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn as_str(&self) -> Option<&str>

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Source§

impl<T: RefArg + ?Sized> RefArg for Arc<T>

Source§

fn arg_type(&self) -> ArgType

Source§

fn signature(&self) -> Signature<'static>

Source§

fn append(&self, i: &mut IterAppend<'_>)

Source§

fn as_any(&self) -> &dyn Any
where T: 'static,

Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where T: 'static,

Source§

fn as_i64(&self) -> Option<i64>

Source§

fn as_u64(&self) -> Option<u64>

Source§

fn as_f64(&self) -> Option<f64>

Source§

fn as_str(&self) -> Option<&str>

Source§

fn as_iter<'a>( &'a self, ) -> Option<Box<dyn Iterator<Item = &'a dyn RefArg> + 'a>>

Source§

fn as_static_inner(&self, index: usize) -> Option<&(dyn RefArg + 'static)>
where Self: 'static,

Source§

fn box_clone(&self) -> Box<dyn RefArg + 'static>

Implementors§

Source§

impl RefArg for MessageItem

Source§

impl RefArg for ErrorName<'static>

Source§

impl RefArg for Interface<'static>

Source§

impl RefArg for Member<'static>

Source§

impl RefArg for Path<'static>

Source§

impl RefArg for Signature<'static>

Source§

impl RefArg for OwnedFd

Available on Unix only.
Source§

impl<'a, T, I> RefArg for Array<'static, T, I>
where T: 'a + Arg + RefArg, I: Debug + Clone + Send + Sync + Iterator<Item = &'a T>,

Source§

impl<T: RefArg> RefArg for Variant<T>