Enum sp_rpc::list::ListOrValue [−][src]
pub enum ListOrValue<T> { List(Vec<T>), Value(T), }
Expand description
RPC list or value wrapper.
For some RPCs it’s convenient to call them with either a single value or a whole list of values to get a proper response. In theory you could do a batch query, but it’s:
- Less convenient in client libraries
- If the response value is small, the protocol overhead might be dominant.
Also it’s nice to be able to maintain backward compatibility for methods that were initially taking a value and now we want to expand them to take a list.
Variants
List(Vec<T>)
A list of values of given type.
A single value of given type.
Implementations
Map every contained value using function F
.
This allows to easily convert all values in any of the variants.
Trait Implementations
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl<T> RefUnwindSafe for ListOrValue<T> where
T: RefUnwindSafe,
impl<T> Send for ListOrValue<T> where
T: Send,
impl<T> Sync for ListOrValue<T> where
T: Sync,
impl<T> Unpin for ListOrValue<T> where
T: Unpin,
impl<T> UnwindSafe for ListOrValue<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
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
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
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
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
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
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
The counterpart to unchecked_from
.
pub fn vzip(self) -> V
impl<T> MaybeDebug for T where
T: Debug,