pub struct SelectionValue {
pub items: IndexSet<SelectionItem>,
pub provenance: Provenance,
}Expand description
An observed selection value.
Stored as an IndexSet so duplicates are impossible and authored
order is preserved. Canonical form sorts items lexicographically
before hashing so two selections that differ only in authored order
fingerprint the same.
Fields§
§items: IndexSet<SelectionItem>The selected items, in authored order.
provenance: ProvenanceShared provenance.
Implementations§
Source§impl SelectionValue
impl SelectionValue
Sourcepub fn new(
name: ParameterName,
items: IndexSet<SelectionItem>,
generator: Option<GeneratorInfo>,
) -> Self
pub fn new( name: ParameterName, items: IndexSet<SelectionItem>, generator: Option<GeneratorInfo>, ) -> Self
Construct, computing the fingerprint and stamping “now”.
Sourcepub fn new_at(
name: ParameterName,
items: IndexSet<SelectionItem>,
generator: Option<GeneratorInfo>,
now: Timestamp,
) -> Self
pub fn new_at( name: ParameterName, items: IndexSet<SelectionItem>, generator: Option<GeneratorInfo>, now: Timestamp, ) -> Self
Construct with an explicit timestamp.
Sourcepub fn fingerprint_of(
name: &ParameterName,
items: &IndexSet<SelectionItem>,
) -> Fingerprint
pub fn fingerprint_of( name: &ParameterName, items: &IndexSet<SelectionItem>, ) -> Fingerprint
Canonical fingerprint for a selection value. Items sort lexicographically by UTF-8 bytes before hashing.
Trait Implementations§
Source§impl Clone for SelectionValue
impl Clone for SelectionValue
Source§fn clone(&self) -> SelectionValue
fn clone(&self) -> SelectionValue
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SelectionValue
impl Debug for SelectionValue
Source§impl<'de> Deserialize<'de> for SelectionValue
impl<'de> Deserialize<'de> for SelectionValue
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
Source§impl PartialEq for SelectionValue
impl PartialEq for SelectionValue
Source§impl Serialize for SelectionValue
impl Serialize for SelectionValue
impl Eq for SelectionValue
impl StructuralPartialEq for SelectionValue
Auto Trait Implementations§
impl Freeze for SelectionValue
impl RefUnwindSafe for SelectionValue
impl Send for SelectionValue
impl Sync for SelectionValue
impl Unpin for SelectionValue
impl UnsafeUnpin for SelectionValue
impl UnwindSafe for SelectionValue
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,
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.