boseiju/ability_tree/
card_layout.rs

1mod normal_layout;
2mod saga_layout;
3mod token_layout;
4
5pub use normal_layout::NormalLayout;
6pub use saga_layout::SagaLayout;
7pub use token_layout::TokenLayout;
8
9pub trait LayoutImpl: Sized {
10    fn card_types(&self) -> arrayvec::ArrayVec<mtg_data::CardType, 4>;
11    fn mana_value(&self) -> usize;
12    #[cfg(feature = "parser")]
13    fn from_raw_card(raw_card: &mtg_cardbase::Card) -> Result<Self, String>;
14    fn layout_debug_display<W: std::io::Write>(&self, output: &mut W) -> std::io::Result<()>;
15}