pub struct GenMap<K, V>(/* private fields */);Expand description
A Daml GenMap — a map with an arbitrary key type (key/value pairs on the
wire; the LF-JSON form is an array of [key, value] pairs).
Entry order is a wire detail, not part of the value: two maps with the same entries compare equal regardless of the order the ledger returned them in.
Implementations§
Trait Implementations§
Source§impl<'de, K, V> Deserialize<'de> for GenMap<K, V>where
K: Deserialize<'de>,
V: Deserialize<'de>,
impl<'de, K, V> Deserialize<'de> for GenMap<K, V>where
K: Deserialize<'de>,
V: Deserialize<'de>,
Source§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
impl<K: Eq, V: Eq> Eq for GenMap<K, V>
Source§impl<K, V> FromIterator<(K, V)> for GenMap<K, V>
impl<K, V> FromIterator<(K, V)> for GenMap<K, V>
Source§impl<K: FromValue, V: FromValue> FromValue for GenMap<K, V>
impl<K: FromValue, V: FromValue> FromValue for GenMap<K, V>
Source§fn from_value(value: &Value) -> Result<Self, ValueError>
fn from_value(value: &Value) -> Result<Self, ValueError>
Source§impl<K, V> IntoIterator for GenMap<K, V>
impl<K, V> IntoIterator for GenMap<K, V>
Source§impl<'a, K, V> IntoIterator for &'a GenMap<K, V>
impl<'a, K, V> IntoIterator for &'a GenMap<K, V>
Source§impl<K: PartialEq, V: PartialEq> PartialEq for GenMap<K, V>
Entry order is a wire detail: equality compares the entries as a multiset,
so a map read back from the ledger in a different order still equals the one
submitted — while a repeated entry still has to appear the same number of
times on both sides (a plain “every entry occurs in the other” test would be
asymmetric: [a, a] would equal [a, b] but not the reverse).
impl<K: PartialEq, V: PartialEq> PartialEq for GenMap<K, V>
Entry order is a wire detail: equality compares the entries as a multiset,
so a map read back from the ledger in a different order still equals the one
submitted — while a repeated entry still has to appear the same number of
times on both sides (a plain “every entry occurs in the other” test would be
asymmetric: [a, a] would equal [a, b] but not the reverse).
Auto Trait Implementations§
impl<K, V> Freeze for GenMap<K, V>
impl<K, V> RefUnwindSafe for GenMap<K, V>
impl<K, V> Send for GenMap<K, V>
impl<K, V> Sync for GenMap<K, V>
impl<K, V> Unpin for GenMap<K, V>
impl<K, V> UnsafeUnpin for GenMap<K, V>
impl<K, V> UnwindSafe for GenMap<K, V>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request