#[non_exhaustive]pub struct SerializeOptions {
pub set_array_metatable: bool,
pub serialize_none_to_null: bool,
pub serialize_unit_to_null: bool,
pub detect_serde_json_arbitrary_precision: bool,
}
serialize
only.Expand description
A struct with options to change default serializer behavior.
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.set_array_metatable: bool
If true, sequence serialization to a Lua table will create table
with the array_metatable
attached.
Default: true
serialize_none_to_null: bool
If true, serialize None
(part of the Option
type) to null
.
Otherwise it will be set to Lua Nil
.
Default: true
serialize_unit_to_null: bool
If true, serialize Unit
(type of ()
in Rust) and Unit structs to null
.
Otherwise it will be set to Lua Nil
.
Default: true
detect_serde_json_arbitrary_precision: bool
If true, serialize serde_json::Number
with arbitrary_precision to a Lua number.
Otherwise it will be serialized as an object (what serde does).
Default: false
Implementations§
Source§impl Options
impl Options
Sourcepub const fn set_array_metatable(self, enabled: bool) -> Self
pub const fn set_array_metatable(self, enabled: bool) -> Self
Sets set_array_metatable
option.
Sourcepub const fn serialize_none_to_null(self, enabled: bool) -> Self
pub const fn serialize_none_to_null(self, enabled: bool) -> Self
Sets serialize_none_to_null
option.
Sourcepub const fn serialize_unit_to_null(self, enabled: bool) -> Self
pub const fn serialize_unit_to_null(self, enabled: bool) -> Self
Sets serialize_unit_to_null
option.
Sourcepub const fn detect_serde_json_arbitrary_precision(self, enabled: bool) -> Self
pub const fn detect_serde_json_arbitrary_precision(self, enabled: bool) -> Self
Sets detect_serde_json_arbitrary_precision
option.
This option is used to serialize serde_json::Number
with arbitrary precision to a Lua
number. Otherwise it will be serialized as an object (what serde does).
This option is disabled by default.
Trait Implementations§
impl Copy for Options
Auto Trait Implementations§
impl Freeze for Options
impl RefUnwindSafe for Options
impl Send for Options
impl Sync for Options
impl Unpin for Options
impl UnwindSafe for Options
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§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more