Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
data CommutativeE Source #
class CommutativeK op a s Source #
CommutativeK k k1 op a s => CommutativeK k k1 op a (CommutativeTagged tag s) Source # | |
(KnownSymbol sym, CommutativeK k k1 op a s) => CommutativeK k k1 op a (CommutativeNamed sym s) Source # | |
Num a => CommutativeK * BinaryNumeric Add a CommutativeNum Source # | |
Num a => CommutativeK * BinaryNumeric Mul a CommutativeNum Source # | |
type Commutative op a = CommutativeK op a (CommutativeS op a) Source #
type family CommutativeS (op :: k) (a :: Type) = (r :: CommutativeE) Source #