Copyright | (c) 2019 Athan Clark |
---|---|
License | BSD-3-Style |
Maintainer | athan.clark@gmail.com |
Portability | GHC |
Safe Haskell | None |
Language | Haskell2010 |
Test.Serialization.Symbiote.Abides
Description
This module provides newtypes for ensuring consistent functionality with respect to various class laws:
Monoids, SemiRing, etc are all included via the
abides library. Note: This only verifies the consistency
of behavior between platforms - if both platforms are broken (return False
) consistently, the tests
will pass. Prevent this by implementing a local test suite with
QuickCheck, and use the abides property tests
directly.
Documentation
newtype AbidesSemigroup a Source #
Constructors
AbidesSemigroup | |
Fields
|
Instances
newtype AbidesMonoid a Source #
Constructors
AbidesMonoid | |
Fields
|
Instances
Constructors
AbidesEq | |
Fields
|
Instances
Constructors
AbidesOrd | |
Fields
|
Instances
newtype AbidesEnum a Source #
Constructors
AbidesEnum | |
Fields
|
Instances
newtype AbidesSemiring a Source #
Constructors
AbidesSemiring | |
Fields
|
Instances
newtype AbidesRing a Source #
Constructors
AbidesRing | |
Fields
|
Instances
newtype AbidesCommutativeRing a Source #
Constructors
AbidesCommutativeRing | |
Fields |
Instances
newtype AbidesDivisionRing a Source #
Constructors
AbidesDivisionRing | |
Fields |
Instances
newtype AbidesEuclideanRing a Source #
Constructors
AbidesEuclideanRing | |
Fields |
Instances
newtype AbidesField a Source #
Constructors
AbidesField | |
Fields
|