#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Spacing {
pub top: ::std::option::Option<::std::string::String>,
pub bottom: ::std::option::Option<::std::string::String>,
pub left: ::std::option::Option<::std::string::String>,
pub right: ::std::option::Option<::std::string::String>,
}
impl Spacing {
pub fn top(&self) -> ::std::option::Option<&str> {
self.top.as_deref()
}
pub fn bottom(&self) -> ::std::option::Option<&str> {
self.bottom.as_deref()
}
pub fn left(&self) -> ::std::option::Option<&str> {
self.left.as_deref()
}
pub fn right(&self) -> ::std::option::Option<&str> {
self.right.as_deref()
}
}
impl Spacing {
pub fn builder() -> crate::types::builders::SpacingBuilder {
crate::types::builders::SpacingBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct SpacingBuilder {
pub(crate) top: ::std::option::Option<::std::string::String>,
pub(crate) bottom: ::std::option::Option<::std::string::String>,
pub(crate) left: ::std::option::Option<::std::string::String>,
pub(crate) right: ::std::option::Option<::std::string::String>,
}
impl SpacingBuilder {
pub fn top(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.top = ::std::option::Option::Some(input.into());
self
}
pub fn set_top(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.top = input;
self
}
pub fn get_top(&self) -> &::std::option::Option<::std::string::String> {
&self.top
}
pub fn bottom(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.bottom = ::std::option::Option::Some(input.into());
self
}
pub fn set_bottom(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.bottom = input;
self
}
pub fn get_bottom(&self) -> &::std::option::Option<::std::string::String> {
&self.bottom
}
pub fn left(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.left = ::std::option::Option::Some(input.into());
self
}
pub fn set_left(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.left = input;
self
}
pub fn get_left(&self) -> &::std::option::Option<::std::string::String> {
&self.left
}
pub fn right(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.right = ::std::option::Option::Some(input.into());
self
}
pub fn set_right(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.right = input;
self
}
pub fn get_right(&self) -> &::std::option::Option<::std::string::String> {
&self.right
}
pub fn build(self) -> crate::types::Spacing {
crate::types::Spacing {
top: self.top,
bottom: self.bottom,
left: self.left,
right: self.right,
}
}
}