pub struct AttestedList {
pub values: Vec<String>,
pub provenance: FieldProvenance,
pub source: String,
pub reason: Option<String>,
}Expand description
A list with its provenance. The distinction a bare Vec cannot make is the one that
matters here: depends_on: [] in the record is an authored empty list, and a record with
no depends_on key is unknown. Both are empty; only one is a statement.
Fields§
§values: Vec<String>The items, in the order the record or the derivation produced them. Empty for an
authored empty list and for an unknown field alike; provenance tells them apart.
provenance: FieldProvenanceWhere they came from.
source: StringThe one place a reader goes to check them.
reason: Option<String>Why the provenance is what it is, when that is worth a sentence.
Implementations§
Source§impl AttestedList
impl AttestedList
Sourcepub fn explicit(values: Vec<String>, source: impl Into<String>) -> Self
pub fn explicit(values: Vec<String>, source: impl Into<String>) -> Self
A list the canonical record carried under this key, including an empty one.
Sourcepub fn derived(values: Vec<String>, source: impl Into<String>) -> Self
pub fn derived(values: Vec<String>, source: impl Into<String>) -> Self
A list worked out by a rule that cannot be wrong about a readable repository.
Sourcepub fn inferred(
values: Vec<String>,
source: impl Into<String>,
reason: impl Into<String>,
) -> Self
pub fn inferred( values: Vec<String>, source: impl Into<String>, reason: impl Into<String>, ) -> Self
A list worked out by a rule that can be wrong, with the rule stated.
Trait Implementations§
Source§impl Clone for AttestedList
impl Clone for AttestedList
Source§fn clone(&self) -> AttestedList
fn clone(&self) -> AttestedList
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 AttestedList
impl Debug for AttestedList
Source§impl<'de> Deserialize<'de> for AttestedList
impl<'de> Deserialize<'de> for AttestedList
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 Eq for AttestedList
Source§impl JsonSchema for AttestedList
impl JsonSchema for AttestedList
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl PartialEq for AttestedList
impl PartialEq for AttestedList
Source§fn eq(&self, other: &AttestedList) -> bool
fn eq(&self, other: &AttestedList) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for AttestedList
impl Serialize for AttestedList
impl StructuralPartialEq for AttestedList
Auto Trait Implementations§
impl Freeze for AttestedList
impl RefUnwindSafe for AttestedList
impl Send for AttestedList
impl Sync for AttestedList
impl Unpin for AttestedList
impl UnsafeUnpin for AttestedList
impl UnwindSafe for AttestedList
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.