module Grisette.Internal.Unified.Theories (TheoryToUnify (..), isUFun) where
data TheoryToUnify
= UBool
| UIntN
| UWordN
| UInteger
| UAlgReal
| UFP
| UFun [TheoryToUnify]
deriving (TheoryToUnify -> TheoryToUnify -> Bool
(TheoryToUnify -> TheoryToUnify -> Bool)
-> (TheoryToUnify -> TheoryToUnify -> Bool) -> Eq TheoryToUnify
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TheoryToUnify -> TheoryToUnify -> Bool
== :: TheoryToUnify -> TheoryToUnify -> Bool
$c/= :: TheoryToUnify -> TheoryToUnify -> Bool
/= :: TheoryToUnify -> TheoryToUnify -> Bool
Eq, Int -> TheoryToUnify -> ShowS
[TheoryToUnify] -> ShowS
TheoryToUnify -> String
(Int -> TheoryToUnify -> ShowS)
-> (TheoryToUnify -> String)
-> ([TheoryToUnify] -> ShowS)
-> Show TheoryToUnify
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> TheoryToUnify -> ShowS
showsPrec :: Int -> TheoryToUnify -> ShowS
$cshow :: TheoryToUnify -> String
show :: TheoryToUnify -> String
$cshowList :: [TheoryToUnify] -> ShowS
showList :: [TheoryToUnify] -> ShowS
Show)
isUFun :: TheoryToUnify -> Bool
isUFun :: TheoryToUnify -> Bool
isUFun (UFun [TheoryToUnify]
_) = Bool
True
isUFun TheoryToUnify
_ = Bool
False