#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Document {
pub content_reference: ::std::option::Option<crate::types::ContentReference>,
pub title: ::std::option::Option<crate::types::DocumentText>,
pub excerpt: ::std::option::Option<crate::types::DocumentText>,
}
impl Document {
pub fn content_reference(&self) -> ::std::option::Option<&crate::types::ContentReference> {
self.content_reference.as_ref()
}
pub fn title(&self) -> ::std::option::Option<&crate::types::DocumentText> {
self.title.as_ref()
}
pub fn excerpt(&self) -> ::std::option::Option<&crate::types::DocumentText> {
self.excerpt.as_ref()
}
}
impl Document {
pub fn builder() -> crate::types::builders::DocumentBuilder {
crate::types::builders::DocumentBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct DocumentBuilder {
pub(crate) content_reference: ::std::option::Option<crate::types::ContentReference>,
pub(crate) title: ::std::option::Option<crate::types::DocumentText>,
pub(crate) excerpt: ::std::option::Option<crate::types::DocumentText>,
}
impl DocumentBuilder {
pub fn content_reference(mut self, input: crate::types::ContentReference) -> Self {
self.content_reference = ::std::option::Option::Some(input);
self
}
pub fn set_content_reference(mut self, input: ::std::option::Option<crate::types::ContentReference>) -> Self {
self.content_reference = input;
self
}
pub fn get_content_reference(&self) -> &::std::option::Option<crate::types::ContentReference> {
&self.content_reference
}
pub fn title(mut self, input: crate::types::DocumentText) -> Self {
self.title = ::std::option::Option::Some(input);
self
}
pub fn set_title(mut self, input: ::std::option::Option<crate::types::DocumentText>) -> Self {
self.title = input;
self
}
pub fn get_title(&self) -> &::std::option::Option<crate::types::DocumentText> {
&self.title
}
pub fn excerpt(mut self, input: crate::types::DocumentText) -> Self {
self.excerpt = ::std::option::Option::Some(input);
self
}
pub fn set_excerpt(mut self, input: ::std::option::Option<crate::types::DocumentText>) -> Self {
self.excerpt = input;
self
}
pub fn get_excerpt(&self) -> &::std::option::Option<crate::types::DocumentText> {
&self.excerpt
}
pub fn build(self) -> crate::types::Document {
crate::types::Document {
content_reference: self.content_reference,
title: self.title,
excerpt: self.excerpt,
}
}
}