Skip to main content Module mana Copy item path Source pub use auto_pay::pay_mana_cost_auto ;pub use auto_pay::pay_mana_cost_auto_with_callback ;pub use auto_pay::pay_mana_cost_auto_with_callback_and_reserved_sacrifices ;pub use auto_pay::pay_mana_cost_auto_with_chooser ;pub use auto_pay::AutoPayResult ;pub use computer_util_mana::auto_tap_lands ;pub use computer_util_mana::auto_tap_lands_allow_reserved_source_reuse ;pub use computer_util_mana::auto_tap_lands_allow_reserved_source_reuse_trace ;pub use computer_util_mana::auto_tap_lands_allow_reserved_source_reuse_trace_with_callbacks_and_reserved_sacrifices ;pub use computer_util_mana::auto_tap_lands_allow_reserved_source_reuse_with_callbacks ;pub use computer_util_mana::auto_tap_lands_allow_reserved_source_reuse_with_callbacks_and_reserved_sacrifices ;pub use computer_util_mana::auto_tap_lands_allow_reserved_source_reuse_with_chooser ;pub use computer_util_mana::auto_tap_lands_generic ;pub use computer_util_mana::auto_tap_lands_trace ;pub use computer_util_mana::auto_tap_lands_trace_with_callbacks ;pub use computer_util_mana::auto_tap_lands_with_callbacks ;pub use computer_util_mana::auto_tap_lands_with_chooser ;pub use computer_util_mana::can_pay_mana_cost_with_reserved_sacrifices ;pub use computer_util_mana::can_pay_spell_mana_cost_for_action_space ;pub use computer_util_mana::collect_mana_payment_sources ;pub use computer_util_mana::next_auto_tap_choice ;pub use computer_util_mana::next_auto_tap_choice_with_reserved_sacrifices ;pub use computer_util_mana::AutoTapChoice ;pub use computer_util_mana::ManaPayCallback ;pub use computer_util_mana::ManaPayCallbackFn ;pub use computer_util_mana::ManaPaymentSources ;pub use computer_util_mana::SacrificeChooser ;pub use mana_pool::ManaPool ;auto_pay computer_util_mana mana_conversion_matrix mana_cost_being_paid mana_pool ManaPool — floating mana pool for a player. mana_refund_service Mana refund service for returning paid mana to the pool. Mana An individual mana object in the pool, tracking source and properties. ManaPaymentContext Context about what a mana payment is for, used to check restrictions. ManaProductionParams Parameters that describe metadata to attach to produced mana. add_produced_mana_to_pool Add produced mana to the pool with full metadata (snow, restriction, keywords, counters, triggers). apply_player_life_payment_keywords basic_land_mana_atom Determine what mana atom a basic land produces based on its subtypes. calculate_available_mana Calculate available mana from the current pool plus untapped lands and non-land mana sources. calculate_available_mana_excluding Calculate available mana while excluding a specific battlefield source. calculate_available_mana_excluding_with_reserved calculate_available_mana_for_casting calculate_available_mana_for_casting_excluding calculate_available_mana_with_context Like calculate_available_mana_excluding_with_reserved but filters mana
abilities whose RestrictValid$ cannot be satisfied by the given payment
context. Java’s ActionSpace filters per-spell via
manaPart.meetsManaRestrictions(saBeingPaid); this mirrors that for
Rust’s playability checks. capitalize_color Capitalize a lowercase color name: “white” → “White”. color_name_to_mana_atom Convert a color name (“Green”, “Blue”, etc.) to its ManaAtom constant.
Case-insensitive: accepts “white”, “White”, “WHITE”, etc. determine_mana_production_ir Determine what mana to produce from a Produced$ string, handling
color choice, combo mana, Amount$ multiplier, and replacement effects. land_mana_atoms Returns all ManaAtom values a land can produce from its activated mana abilities.
Handles: mana_atom_from_produced Convert a Produced$ value (e.g. “G”, “R”, “W”) to a ManaAtom. mana_letter_to_color_name Convert a single mana letter (“G”, “U”, etc.) to its color name (“Green”, “Blue”, etc.). mana_meets_restriction Check if a mana with the given restriction can be spent in the given context. payment_context_for_sa