SerializableValue

Struct SerializableValue 

Source
pub struct SerializableValue<'a> { /* private fields */ }
Available on crate feature serde only.
Expand description

A wrapped Value with customized serialization behavior.

Implementations§

Source§

impl<'a> SerializableValue<'a>

Source

pub fn deny_unsupported_types(self, enabled: bool) -> Self

If true, an attempt to serialize types such as Function, Thread, LightUserData and Error will cause an error. Otherwise these types skipped when iterating or serialized as unit type.

Default: true

Source

pub fn deny_recursive_tables(self, enabled: bool) -> Self

If true, an attempt to serialize a recursive table (table that refers to itself) will cause an error. Otherwise subsequent attempts to serialize the same table will be ignored.

Default: true

Source

pub fn sort_keys(self, enabled: bool) -> Self

If true, keys in tables will be iterated (and serialized) in sorted order.

Default: false

Source

pub fn encode_empty_tables_as_array(self, enabled: bool) -> Self

If true, empty Lua tables will be encoded as array, instead of map.

Default: false

Source

pub fn detect_mixed_tables(self, enabled: bool) -> Self

If true, enable detection of mixed tables.

A mixed table is a table that has both array-like and map-like entries or several borders.

Default: false

Trait Implementations§

Source§

impl Serialize for SerializableValue<'_>

Source§

fn serialize<S>(&self, serializer: S) -> StdResult<S::Ok, S::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for SerializableValue<'a>

§

impl<'a> !RefUnwindSafe for SerializableValue<'a>

§

impl<'a> !Send for SerializableValue<'a>

§

impl<'a> !Sync for SerializableValue<'a>

§

impl<'a> Unpin for SerializableValue<'a>

§

impl<'a> !UnwindSafe for SerializableValue<'a>

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where 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 T
where 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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<T> Serialize for T
where T: Serialize + ?Sized,

Source§

fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<(), Error>

Source§

fn do_erased_serialize( &self, serializer: &mut dyn Serializer, ) -> Result<(), ErrorImpl>

Source§

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

Source§

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 T
where U: TryFrom<T>,

Source§

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.