monadiccp-0.6: Constraint Programming

Control.CP.EnumTerm

Documentation

class (Term s t, Enum (TermDomain s t)) => EnumTerm s t whereSource

Associated Types

type TermDomain s t :: *Source

Methods

get_domain_size :: t -> s IntSource

get_value :: t -> s (Maybe (TermDomain s t))Source

split_domain_partial :: t -> s [Tree s ()]Source

split_domain :: t -> s (Tree s ())Source

split_domains :: [t] -> s (Tree s ())Source

label :: ([t] -> s [t]) -> [t] -> Tree s ()Source

enumerate :: [t] -> Tree s ()Source

Instances

in_order :: Monad m => a -> m aSource

firstfail :: EnumTerm m a => [a] -> m [a]Source

middleout :: [a] -> [a]Source

endsout :: [a] -> [a]Source

interleave :: [t] -> [t] -> [t]Source

assignment :: EnumTerm s t => t -> Tree s (TermDomain s t)Source

assignments :: EnumTerm s t => [t] -> Tree s [TermDomain s t]Source