dovin-0.1.0.1: A proof assistant for Magic: The Gathering puzzles.

Safe HaskellNone
LanguageHaskell2010

Dovin.Types

Synopsis

Documentation

data Player Source #

Constructors

Active 
Opponent 
Instances
Eq Player Source # 
Instance details

Defined in Dovin.Types

Methods

(==) :: Player -> Player -> Bool #

(/=) :: Player -> Player -> Bool #

Ord Player Source # 
Instance details

Defined in Dovin.Types

Show Player Source # 
Instance details

Defined in Dovin.Types

Generic Player Source # 
Instance details

Defined in Dovin.Types

Associated Types

type Rep Player :: Type -> Type #

Methods

from :: Player -> Rep Player x #

to :: Rep Player x -> Player #

Hashable Player Source # 
Instance details

Defined in Dovin.Types

Methods

hashWithSalt :: Int -> Player -> Int #

hash :: Player -> Int #

type Rep Player Source # 
Instance details

Defined in Dovin.Types

type Rep Player = D1 (MetaData "Player" "Dovin.Types" "dovin-0.1.0.1-13Mi2KtUzcX4zByHFTBMBL" False) (C1 (MetaCons "Active" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Opponent" PrefixI False) (U1 :: Type -> Type))

data Location Source #

Constructors

Hand 
Graveyard 
Play 
Stack 
Exile 
Instances
Eq Location Source # 
Instance details

Defined in Dovin.Types

Ord Location Source # 
Instance details

Defined in Dovin.Types

Show Location Source # 
Instance details

Defined in Dovin.Types

data Target Source #

Constructors

TargetPlayer Player

Target a player, use targetPlayer to construct.

TargetCard CardName

Target a card, use targetCard to construct.

data Phase Source #

A phase or step in a turn. Phases and steps are not distinguished between because haven't seen a need to.

Instances
Eq Phase Source # 
Instance details

Defined in Dovin.Types

Methods

(==) :: Phase -> Phase -> Bool #

(/=) :: Phase -> Phase -> Bool #

Ord Phase Source # 
Instance details

Defined in Dovin.Types

Methods

compare :: Phase -> Phase -> Ordering #

(<) :: Phase -> Phase -> Bool #

(<=) :: Phase -> Phase -> Bool #

(>) :: Phase -> Phase -> Bool #

(>=) :: Phase -> Phase -> Bool #

max :: Phase -> Phase -> Phase #

min :: Phase -> Phase -> Phase #

Show Phase Source # 
Instance details

Defined in Dovin.Types

Methods

showsPrec :: Int -> Phase -> ShowS #

show :: Phase -> String #

showList :: [Phase] -> ShowS #

newtype BaseCard Source #

Constructors

BaseCard Card 
Instances
Eq BaseCard Source # 
Instance details

Defined in Dovin.Types

Show BaseCard Source # 
Instance details

Defined in Dovin.Types

data Env Source #

Constructors

Env 

manaPoolFor :: Functor f => Player -> ([Char] -> f [Char]) -> Board -> f Board Source #