Struct gedcomx::Attribution

source ·
#[non_exhaustive]
pub struct Attribution { pub contributor: Option<ResourceReference>, pub modified: Option<Timestamp>, pub change_message: Option<String>, pub creator: Option<ResourceReference>, pub created: Option<Timestamp>, }
Expand description

The data structure used to attribute who, when, and why to genealogical data.

Data is attributed to the agent who made the latest significant change to the nature of the data being attributed.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§contributor: Option<ResourceReference>

Reference to the agent to whom the attributed data is attributed. If provided, MUST resolve to an instance of Agent.

§modified: Option<Timestamp>

Timestamp of when the attributed data was modified.

§change_message: Option<String>

A statement of why the attributed data is being provided by the contributor.

§creator: Option<ResourceReference>

Reference to the agent that created the attributed data. The creator MAY be different from the contributor if changes were made to the attributed data. If provided, MUST resolve to an instance of Agent.

§created: Option<Timestamp>

Timestamp of when the attributed data was contributed.

Implementations§

source§

impl Attribution

source

pub fn new( contributor: Option<ResourceReference>, modified: Option<Timestamp>, change_message: Option<String>, creator: Option<ResourceReference>, created: Option<Timestamp> ) -> Self

source

pub fn builder() -> AttributionBuilder

Trait Implementations§

source§

impl Arbitrary for Attribution

source§

fn arbitrary(g: &mut Gen) -> Self

Return an arbitrary value. Read more
source§

fn shrink(&self) -> Box<dyn Iterator<Item = Self>, Global>

Return an iterator of values that are smaller than itself. Read more
source§

impl Clone for Attribution

source§

fn clone(&self) -> Attribution

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Attribution

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Attribution

source§

fn default() -> Attribution

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for Attribution

source§

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<Attribution> for Attribution

source§

fn eq(&self, other: &Attribution) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for Attribution

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl YaDeserialize for Attribution

source§

fn deserialize<R: Read>(reader: &mut Deserializer<R>) -> Result<Self, String>

source§

impl YaSerialize for Attribution

source§

fn serialize<W: Write>(&self, writer: &mut Serializer<W>) -> Result<(), String>

source§

fn serialize_attributes( &self, source_attributes: Vec<OwnedAttribute>, source_namespace: Namespace ) -> Result<(Vec<OwnedAttribute>, Namespace), String>

source§

impl StructuralPartialEq for Attribution

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for Twhere T: for<'de> Deserialize<'de>,