#[macro_export]
macro_rules! options {
( $( $field:ident : $value:expr ),* $(,)? ) => {{
let mut opt = $crate::Options::default();
$(
#[allow(deprecated)]
{
opt.$field = $value;
}
)*
opt
}};
}
#[macro_export]
macro_rules! ser_options {
( $( $tt:tt )* ) => {{
let mut opt = $crate::SerializerOptions::default();
$crate::__serde_saphyr_serializer_options_apply!(opt, $( $tt )*);
opt
}};
}
#[macro_export]
macro_rules! budget {
( $( $field:ident : $value:expr ),* $(,)? ) => {{
let mut b = $crate::Budget::default();
$(
#[allow(deprecated)]
{
b.$field = $value;
}
)*
Some(b)
}};
}
#[macro_export]
macro_rules! render_options {
( $( $field:ident : $value:expr ),* $(,)? ) => {{
let mut opt = $crate::RenderOptions::default();
$(
{
opt.$field = $value;
}
)*
opt
}};
}
#[doc(hidden)]
#[macro_export]
macro_rules! __serde_saphyr_serializer_options_apply {
($opt:ident,) => {};
($opt:ident) => {};
($opt:ident, indent_step : $value:literal $(, $($rest:tt)*)? ) => {{
const _: () = {
if !($value > 0 && $value < 65536) {
panic!("`indent_step` must be in the range 1..=65535");
}
};
#[allow(deprecated)]
{
$opt.indent_step = $value;
}
$( $crate::__serde_saphyr_serializer_options_apply!($opt, $($rest)*); )?
}};
($opt:ident, indent_step : $value:expr $(, $($rest:tt)*)? ) => {{
#[allow(deprecated)]
{
$opt.indent_step = $value;
}
$( $crate::__serde_saphyr_serializer_options_apply!($opt, $($rest)*); )?
}};
($opt:ident, $field:ident : $value:expr $(, $($rest:tt)*)? ) => {{
#[allow(deprecated)]
{
$opt.$field = $value;
}
$( $crate::__serde_saphyr_serializer_options_apply!($opt, $($rest)*); )?
}};
}