Safe Haskell | None |
---|
Documentation
data Signature sym attribs
Eq attribs => Eq (Signature sym attribs) | |
Show attribs => Show (Signature sym attribs) | |
PrettyPrintable (Variable, Variables) | |
PrettyPrintable (Symbol, Signature) | |
PrettyPrintable (Term, Signature, Variables) | |
PrettyPrintable (Rule, Signature, Variables) | |
PrettyPrintable (Trs, Signature, Variables) |
data SignatureMonad sym attribs a
Monad (SignatureMonad sym attribs) |
cardinality :: Signature sym attribs -> Int
fresh :: Enumerateable sym => attribs -> SignatureMonad sym attribs sym
maybeFresh :: (Enumerateable sym, Eq attribs) => attribs -> SignatureMonad sym attribs sym
getAttributes :: Enumerateable sym => sym -> SignatureMonad sym attribs attribs
modifySignature :: (Signature sym attribs -> Signature sym attribs) -> SignatureMonad sym attribs (Signature sym attribs)
runSignature :: SignatureMonad sym attribs a -> Signature sym attribs -> (a, Signature sym attribs)
findByAttribute :: (Enumerateable sym, MonadPlus m) => (attribs -> Bool) -> Signature sym attribs -> m sym
attribute :: Enumerateable sym => (attribs -> a) -> sym -> Signature sym attribs -> a
attributes :: Enumerateable sym => sym -> Signature sym attribs -> attribs
alterAttributes :: Enumerateable sym => (Maybe attribs -> Maybe attribs) -> sym -> Signature sym attribs -> Signature sym attribs
restrictToSymbols :: (Ord sym, Enumerateable sym) => Signature sym attribs -> Set sym -> Signature sym attribs
symbols :: (Ord sym, Enumerateable sym) => Signature sym attribs -> Set sym
liftS :: (Signature sym attribs -> a) -> SignatureMonad sym attribs a
foldWithKey :: Enumerateable sym => (sym -> attribs -> b -> b) -> b -> Signature sym attribs -> b
toList :: Enumerateable sym => Signature sym attribs -> [(sym, attribs)]
getSignature :: SignatureMonad sym attrib (Signature sym attrib)