use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize, Clone, Eq, PartialEq, Hash, Debug)]
#[cfg_attr(not(feature = "unknown_variants"), derive(Copy))]
#[cfg_attr(
all(
not(feature = "unknown_variants"),
not(feature = "unknown_variants_slim")
),
non_exhaustive
)]
#[cfg_attr(test, serde(deny_unknown_fields))]
#[serde(rename_all = "snake_case")]
pub enum Layout {
Normal,
Split,
Flip,
Transform,
ModalDfc,
Meld,
Leveler,
Class,
Saga,
Adventure,
Planar,
Scheme,
Vanguard,
Token,
DoubleFacedToken,
Emblem,
Augment,
Host,
ArtSeries,
ReversibleCard,
Prototype,
Mutate,
Case,
#[cfg_attr(
docsrs,
doc(cfg(any(feature = "unknown_variants", feature = "unknown_variants_slim")))
)]
#[cfg(feature = "unknown_variants")]
#[serde(untagged)]
Unknown(Box<str>),
#[cfg_attr(
docsrs,
doc(cfg(any(feature = "unknown_variants", feature = "unknown_variants_slim")))
)]
#[cfg(all(not(feature = "unknown_variants"), feature = "unknown_variants_slim"))]
#[serde(other)]
Unknown,
}