#[non_exhaustive]pub struct Gedcomx {
pub id: Option<Id>,
pub lang: Option<Lang>,
pub attribution: Option<Attribution>,
pub persons: Vec<Person>,
pub relationships: Vec<Relationship>,
pub source_descriptions: Vec<SourceDescription>,
pub agents: Vec<Agent>,
pub events: Vec<Event>,
pub documents: Vec<Document>,
pub places: Vec<PlaceDescription>,
pub groups: Vec<Group>,
pub description: Option<Uri>,
}Expand description
A container for a set of GEDCOM X data. The top level type in the library.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.id: Option<Id>An identifier for the data set.
lang: Option<Lang>The locale identifier for the data set.
attribution: Option<Attribution>The attribution of this data set.
persons: Vec<Person>The list of persons contained in the data set.
relationships: Vec<Relationship>The list of relationships contained in the data set.
source_descriptions: Vec<SourceDescription>The list of source descriptions contained in the data set.
agents: Vec<Agent>The list of agents contained in the data set.
events: Vec<Event>The list of events contained in the data set.
documents: Vec<Document>The list of documents contained in the data set.
places: Vec<PlaceDescription>The list of places contained in the data set.
groups: Vec<Group>The list of groups contained in the data set.
description: Option<Uri>Reference to the description of this data set.
If provided, MUST resolve to an instance of SourceDescription.
Implementations§
Source§impl Gedcomx
impl Gedcomx
pub fn new( id: Option<Id>, lang: Option<Lang>, attribution: Option<Attribution>, persons: Vec<Person>, relationships: Vec<Relationship>, source_descriptions: Vec<SourceDescription>, agents: Vec<Agent>, events: Vec<Event>, documents: Vec<Document>, places: Vec<PlaceDescription>, groups: Vec<Group>, description: Option<Uri>, ) -> Self
pub fn builder() -> GedcomxBuilder
Source§impl Gedcomx
impl Gedcomx
Sourcepub fn to_json_string(&self) -> Result<String>
pub fn to_json_string(&self) -> Result<String>
Serialize the instance as a string of JSON.
§Errors
Returns GedcomxError::JSONError if serialization fails.
Sourcepub fn to_json_string_pretty(&self) -> Result<String>
pub fn to_json_string_pretty(&self) -> Result<String>
Serialize the instance as a string of pretty-printed JSON.
§Errors
Returns GedcomxError::JSONError if serialization fails.
Sourcepub fn to_writer_as_json<W: Write>(&self, writer: W) -> Result<()>
pub fn to_writer_as_json<W: Write>(&self, writer: W) -> Result<()>
Serialize the instance as JSON into the IO stream.
§Errors
Returns GedcomxError::JSONError if serialization fails.
Sourcepub fn to_writer_as_json_pretty<W: Write>(&self, writer: W) -> Result<()>
pub fn to_writer_as_json_pretty<W: Write>(&self, writer: W) -> Result<()>
Serialize the instance as pretty-printed JSON into the IO stream.
§Errors
Returns GedcomxError::JSONError if serialization fails.
Sourcepub fn from_json_str(s: &str) -> Result<Self>
pub fn from_json_str(s: &str) -> Result<Self>
Deserialize an instance of the type from a string of JSON text.
§Errors
Returns GedcomxError::JSONError if deserialization fails.
Sourcepub fn from_json_reader<R: Read>(rdr: R) -> Result<Self>
pub fn from_json_reader<R: Read>(rdr: R) -> Result<Self>
Deserialize an instance of the type from an IO stream of JSON.
§Errors
Returns GedcomxError::JSONError if deserialization fails.
Sourcepub fn to_xml_string(&self) -> Result<String>
pub fn to_xml_string(&self) -> Result<String>
Serialize the instance as a string of XML.
§Errors
Returns GedcomxError::XMLError if serialization fails.
Sourcepub fn to_xml_string_pretty(&self) -> Result<String>
pub fn to_xml_string_pretty(&self) -> Result<String>
Serialize the instance as a string of pretty-printed XML.
§Errors
Returns GedcomxError::XMLError if serialization fails.
Sourcepub fn to_writer_as_xml<W: Write>(&self, writer: W) -> Result<()>
pub fn to_writer_as_xml<W: Write>(&self, writer: W) -> Result<()>
Serialize the instance as XML into the IO stream.
§Errors
Returns GedcomxError::XMLError if serialization fails.
Sourcepub fn to_writer_as_xml_pretty<W: Write>(&self, writer: W) -> Result<()>
pub fn to_writer_as_xml_pretty<W: Write>(&self, writer: W) -> Result<()>
Serialize the instance as pretty-printed XML into the IO stream.
§Errors
Returns GedcomxError::XMLError if serialization fails.
Sourcepub fn from_xml_str(s: &str) -> Result<Self>
pub fn from_xml_str(s: &str) -> Result<Self>
Deserialize an instance of the type from a string of XML text.
§Errors
Returns GedcomxError::XMLError if deserialization fails.
Sourcepub fn from_xml_reader<R: Read>(rdr: R) -> Result<Self>
pub fn from_xml_reader<R: Read>(rdr: R) -> Result<Self>
Deserialize an instance of the type from an IO stream of XML.
§Errors
Returns GedcomxError::XMLError if deserialization fails.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Gedcomx
impl<'de> Deserialize<'de> for Gedcomx
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>,
Source§impl YaDeserialize for Gedcomx
impl YaDeserialize for Gedcomx
fn deserialize<R: Read>(reader: &mut Deserializer<R>) -> Result<Self, String>
Source§impl YaSerialize for Gedcomx
impl YaSerialize for Gedcomx
fn serialize<W: Write>(&self, writer: &mut Serializer<W>) -> Result<(), String>
fn serialize_attributes( &self, source_attributes: Vec<OwnedAttribute>, source_namespace: Namespace, ) -> Result<(Vec<OwnedAttribute>, Namespace), String>
impl StructuralPartialEq for Gedcomx
Auto Trait Implementations§
impl Freeze for Gedcomx
impl RefUnwindSafe for Gedcomx
impl Send for Gedcomx
impl Sync for Gedcomx
impl Unpin for Gedcomx
impl UnwindSafe for Gedcomx
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)