cardano-ledger-core-1.23.0.0: Core components of Cardano ledgers from the Shelley release on.
Safe HaskellNone
LanguageHaskell2010

Test.Cardano.Ledger.Common

Synopsis

Documentation

module Test.Hspec

vector ∷ Arbitrary a ⇒ Int → Gen [a] Source #

Generates a list of a given length.

(==>) ∷ Testable prop ⇒ Bool → prop → Property infixr 0 Source #

Implication for properties: The resulting property holds if the first argument is False (in which case the test case is discarded), or if the given property holds. Note that using implication carelessly can severely skew test case distribution: consider using cover to make sure that your test data is still good quality.

newtype NonEmptyList a Source #

NonEmpty xs: guarantees that xs is non-empty.

Constructors

NonEmpty 

Fields

Instances

Instances details
Functor NonEmptyList 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → NonEmptyList a → NonEmptyList b #

(<$) ∷ a → NonEmptyList b → NonEmptyList a #

Arbitrary a ⇒ Arbitrary (NonEmptyList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Read a ⇒ Read (NonEmptyList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Show a ⇒ Show (NonEmptyList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → NonEmptyList a → ShowS #

show ∷ NonEmptyList a → String #

showList ∷ [NonEmptyList a] → ShowS #

Eq a ⇒ Eq (NonEmptyList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ NonEmptyList a → NonEmptyList a → Bool #

(/=) ∷ NonEmptyList a → NonEmptyList a → Bool #

Ord a ⇒ Ord (NonEmptyList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

data Result Source #

Result represents the test result

Constructors

Success

A successful test run

Fields

GaveUp

Given up

Fields

Failure

A failed test run

Fields

NoExpectedFailure

A property that should have failed did not

Fields

Instances

Instances details
Show Result 
Instance details

Defined in Test.QuickCheck.Test

Methods

showsPrec ∷ Int → Result → ShowS #

show ∷ Result → String #

showList ∷ [Result] → ShowS #

class Testable prop where Source #

The class of properties, i.e., types which QuickCheck knows how to test. Typically a property will be a function returning Bool or Property.

Minimal complete definition

property

Methods

property ∷ prop → Property Source #

Convert the thing to a property.

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → prop) → Property Source #

Optional; used internally in order to improve shrinking. Tests a property but also quantifies over an extra value (with a custom shrink and show function). The Testable instance for functions defines propertyForAllShrinkShow in a way that improves shrinking.

Instances

Instances details
Testable Assertion 
Instance details

Defined in Test.QuickCheck.IO

Methods

property ∷ Assertion → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Assertion) → Property Source #

Testable Discard 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Discard → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Discard) → Property Source #

Testable Prop 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Prop → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Prop) → Property Source #

Testable Property 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Property → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Property) → Property Source #

Testable Result 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Result → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Result) → Property Source #

Testable () 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ () → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → ()) → Property Source #

Testable Bool 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Bool → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Bool) → Property Source #

Testable prop ⇒ Testable (Gen prop) 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Gen prop → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Gen prop) → Property Source #

Testable prop ⇒ Testable (Maybe prop) 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Maybe prop → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Maybe prop) → Property Source #

(ImpSpec t, Testable a) ⇒ Testable (ImpM t a) 
Instance details

Defined in Test.ImpSpec.Internal

Methods

property ∷ ImpM t a → Property Source #

propertyForAllShrinkShow ∷ Gen a0 → (a0 → [a0]) → (a0 → [String]) → (a0 → ImpM t a) → Property Source #

(Arbitrary a, Show a, Testable prop) ⇒ Testable (a → prop) 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ (a → prop) → Property Source #

propertyForAllShrinkShow ∷ Gen a0 → (a0 → [a0]) → (a0 → [String]) → (a0 → a → prop) → Property Source #

class Arbitrary a where Source #

Random generation and shrinking of values.

QuickCheck provides Arbitrary instances for most types in base, except those which incur extra dependencies. For a wider range of Arbitrary instances see the quickcheck-instances package.

Minimal complete definition

arbitrary

Methods

arbitrary ∷ Gen a Source #

A generator for values of the given type.

It is worth spending time thinking about what sort of test data you want - good generators are often the difference between finding bugs and not finding them. You can use sample, label and classify to check the quality of your test data.

There is no generic arbitrary implementation included because we don't know how to make a high-quality one. If you want one, consider using the testing-feat or generic-random packages.

The QuickCheck manual goes into detail on how to write good generators. Make sure to look at it, especially if your type is recursive!

shrink ∷ a → [a] Source #

Produces a (possibly) empty list of all the possible immediate shrinks of the given value.

The default implementation returns the empty list, so will not try to shrink the value. If your data type has no special invariants, you can enable shrinking by defining shrink = genericShrink, but by customising the behaviour of shrink you can often get simpler counterexamples.

Most implementations of shrink should try at least three things:

  1. Shrink a term to any of its immediate subterms. You can use subterms to do this.
  2. Recursively apply shrink to all immediate subterms. You can use recursivelyShrink to do this.
  3. Type-specific shrinkings such as replacing a constructor by a simpler constructor.

For example, suppose we have the following implementation of binary trees:

data Tree a = Nil | Branch a (Tree a) (Tree a)

We can then define shrink as follows:

shrink Nil = []
shrink (Branch x l r) =
  -- shrink Branch to Nil
  [Nil] ++
  -- shrink to subterms
  [l, r] ++
  -- recursively shrink subterms
  [Branch x' l' r' | (x', l', r') <- shrink (x, l, r)]

There are a couple of subtleties here:

  • QuickCheck tries the shrinking candidates in the order they appear in the list, so we put more aggressive shrinking steps (such as replacing the whole tree by Nil) before smaller ones (such as recursively shrinking the subtrees).
  • It is tempting to write the last line as [Branch x' l' r' | x' <- shrink x, l' <- shrink l, r' <- shrink r] but this is the wrong thing! It will force QuickCheck to shrink x, l and r in tandem, and shrinking will stop once one of the three is fully shrunk.

There is a fair bit of boilerplate in the code above. We can avoid it with the help of some generic functions. The function genericShrink tries shrinking a term to all of its subterms and, failing that, recursively shrinks the subterms. Using it, we can define shrink as:

shrink x = shrinkToNil x ++ genericShrink x
  where
    shrinkToNil Nil = []
    shrinkToNil (Branch _ l r) = [Nil]

genericShrink is a combination of subterms, which shrinks a term to any of its subterms, and recursivelyShrink, which shrinks all subterms of a term. These may be useful if you need a bit more control over shrinking than genericShrink gives you.

A final gotcha: we cannot define shrink as simply shrink x = Nil:genericShrink x as this shrinks Nil to Nil, and shrinking will go into an infinite loop.

If all this leaves you bewildered, you might try shrink = genericShrink to begin with, after deriving Generic for your type. However, if your data type has any special invariants, you will need to check that genericShrink can't break those invariants.

Instances

Instances details
Arbitrary ASCIIString 
Instance details

Defined in Test.QuickCheck.Modifiers

Arbitrary PrintableString 
Instance details

Defined in Test.QuickCheck.Modifiers

Arbitrary UnicodeString 
Instance details

Defined in Test.QuickCheck.Modifiers

Arbitrary A 
Instance details

Defined in Test.QuickCheck.Poly

Methods

arbitrary ∷ Gen A Source #

shrink ∷ A → [A] Source #

Arbitrary B 
Instance details

Defined in Test.QuickCheck.Poly

Methods

arbitrary ∷ Gen B Source #

shrink ∷ B → [B] Source #

Arbitrary C 
Instance details

Defined in Test.QuickCheck.Poly

Methods

arbitrary ∷ Gen C Source #

shrink ∷ C → [C] Source #

Arbitrary OrdA 
Instance details

Defined in Test.QuickCheck.Poly

Arbitrary OrdB 
Instance details

Defined in Test.QuickCheck.Poly

Arbitrary OrdC 
Instance details

Defined in Test.QuickCheck.Poly

Arbitrary QCGen 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen QCGen Source #

shrink ∷ QCGen → [QCGen] Source #

Arbitrary Key

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.Key

Methods

arbitrary ∷ Gen Key Source #

shrink ∷ Key → [Key] Source #

Arbitrary Value

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.Types.Internal

Arbitrary ByteArray

Since: quickcheck-instances-0.3.28

Instance details

Defined in Test.QuickCheck.Instances.Primitive

Arbitrary ByteString64 
Instance details

Defined in Data.ByteString.Base64.Type

Arbitrary ByteString 
Instance details

Defined in Test.QuickCheck.Instances.ByteString

Arbitrary ByteString 
Instance details

Defined in Test.QuickCheck.Instances.ByteString

Arbitrary ShortByteString 
Instance details

Defined in Test.QuickCheck.Instances.ByteString

Arbitrary IPv4 
Instance details

Defined in Test.Cardano.Base.Arbitrary

Arbitrary IPv6 
Instance details

Defined in Test.Cardano.Base.Arbitrary

Arbitrary BigInteger 
Instance details

Defined in Test.Crypto.EllipticCurve

Arbitrary AnyPackedBytes 
Instance details

Defined in Test.Crypto.PackedBytes

Arbitrary Message 
Instance details

Defined in Test.Crypto.Util

Arbitrary TestSeed 
Instance details

Defined in Test.Crypto.Util

Arbitrary LeiosCert 
Instance details

Defined in Test.Cardano.Ledger.Binary.Arbitrary

Arbitrary LeiosCommittee 
Instance details

Defined in Test.Cardano.Ledger.Binary.Arbitrary

Arbitrary LeiosSeat 
Instance details

Defined in Test.Cardano.Ledger.Binary.Arbitrary

Arbitrary Version 
Instance details

Defined in Test.Cardano.Ledger.Binary.Arbitrary

Arbitrary U 
Instance details

Defined in Test.Cardano.Ledger.Binary.Vintage.Helpers

Methods

arbitrary ∷ Gen U Source #

shrink ∷ U → [U] Source #

Arbitrary AddrAttributes Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Address Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary AccountAddress Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary AccountId Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Addr Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary BootstrapAddress Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary CompactAddr Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary DirectDeposits Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Withdrawals Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ActiveSlotCoeff Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Anchor Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary BlocksMade Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary CertIx Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary DnsName Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Milliseconds32 Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Network Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary NonNegativeInterval Source #

Decimal numbers only

Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Nonce Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Port Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary PositiveInterval Source #

Decimal numbers only

Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary PositiveUnitInterval Source #

Decimal numbers only

Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ProtVer Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary TxIx Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary UnitInterval Source #

Decimal numbers only

Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Url Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen Url Source #

shrink ∷ Url → [Url] Source #

Arbitrary BlockHeaderVersionInfo Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Coin Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary CoinPerByte Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary DeltaCoin Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary MaxPledgeLeverage Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Ptr Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen Ptr Source #

shrink ∷ Ptr → [Ptr] Source #

Arbitrary SlotNo32 Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary StakeReference Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary DRep Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary DRepState Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary GenDelegPair Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary GenDelegs Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ScriptHash Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary TxAuxDataHash Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary BootstrapWitness Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ChainCode Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary CostModel Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary CostModels Source #

This Arbitrary instance assumes the inflexible deserialization scheme prior to version 9.

Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ExUnits Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Prices Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Language Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Reward Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary RewardType Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary CommitteeAuthorization Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary FutureGenDeleg Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary InstantaneousRewards Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ChainAccountState Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary IndividualPoolStake Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary PoolDistr Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary GoSnapShot Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary MarkSnapShot Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary SetSnapShot Source #

Builds a consistent set snapshot: its pool distribution and committee are seated from the mark it rotates, never generated independently.

Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary SnapShot Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary StakePoolSnapShot Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ActiveStake Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary Stake Source #

In the system, Stake never contains more than the sum of all Ada (which is constant). This makes it safe to store individual Coins (in CompactForm) as Word64. But we must be careful that we never generate Stake where the sum of all the coins exceeds (maxBound :: Word64) There will never be a real Stake in the system with that many Ada, because total Ada is constant. So using a restricted Arbitrary Generator is OK.

Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary StakeWithDelegation Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary BlsKey Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary BlsKeyState Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary PoolMetadata Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary SizeOfPoolOwners Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary SizeOfPoolRelays Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary StakePoolRelay Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary StakePoolState Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary TxId Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary TxIn Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ByronKeyPair Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.KeyPair

Arbitrary BlockNo 
Instance details

Defined in Test.Cardano.Slotting.Arbitrary

Arbitrary EpochInterval 
Instance details

Defined in Test.Cardano.Slotting.Arbitrary

Arbitrary EpochNo 
Instance details

Defined in Test.Cardano.Slotting.Arbitrary

Arbitrary EpochSize 
Instance details

Defined in Test.Cardano.Slotting.Arbitrary

Arbitrary SlotInterval Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary SlotNo 
Instance details

Defined in Test.Cardano.Slotting.Arbitrary

Arbitrary SystemStart 
Instance details

Defined in Test.Cardano.Slotting.Arbitrary

Arbitrary ByteArray 
Instance details

Defined in Test.Cardano.Binary.Arbitrary

Arbitrary SlicedByteArray 
Instance details

Defined in Test.Cardano.Binary.Arbitrary

Arbitrary Term 
Instance details

Defined in Test.Cardano.Binary.Arbitrary

Arbitrary IntSet

WARNING: The same warning as for Arbitrary (Set a) applies here.

Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary NInt 
Instance details

Defined in Codec.CBOR.Cuddle.CBOR.Canonical

Arbitrary PTerm 
Instance details

Defined in Codec.CBOR.Cuddle.CDDL.CTree

Arbitrary All 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen All Source #

shrink ∷ All → [All] Source #

Arbitrary Any 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen Any Source #

shrink ∷ Any → [Any] Source #

Arbitrary Version

Generates Version with non-empty non-negative versionBranch, and empty versionTags

Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CChar 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CClock 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CDouble 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CFloat 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CInt 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CIntMax 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CIntPtr 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CLLong 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CLong 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CPtrdiff 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CSChar 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CSUSeconds 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CShort 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CSigAtomic 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CSize 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CTime 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CUChar 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CUInt 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CUIntMax 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CUIntPtr 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CULLong 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CULong 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CUSeconds 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CUShort 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CWchar 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary ExitCode 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Newline 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary NewlineMode 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Int16 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Int32 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Int64 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Int8 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Word16 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Word32 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Word64 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Word8 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Ordering 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary CalendarTime 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Arbitrary ClockTime 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Arbitrary Day 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Methods

arbitrary ∷ Gen Day Source #

shrink ∷ Day → [Day] Source #

Arbitrary Month 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Arbitrary TimeDiff 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Arbitrary Data Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ExBudget Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ExCPU Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary ExMemory Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary FaceValue 
Instance details

Defined in PlutusLedgerApi.Test.V1.Data.Value

Arbitrary FaceValue 
Instance details

Defined in PlutusLedgerApi.Test.V1.Value

Arbitrary Quantity 
Instance details

Defined in PlutusLedgerApi.Test.V3.Data.MintValue

Arbitrary Quantity 
Instance details

Defined in PlutusLedgerApi.Test.V3.MintValue

Arbitrary Scientific 
Instance details

Defined in Test.QuickCheck.Instances.Scientific

Arbitrary Text 
Instance details

Defined in Test.QuickCheck.Instances.Text

Arbitrary Text 
Instance details

Defined in Test.QuickCheck.Instances.Text

Arbitrary ShortText 
Instance details

Defined in Test.QuickCheck.Instances.Text.Short

Arbitrary CalendarDiffDays 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary Day 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

arbitrary ∷ Gen Day Source #

shrink ∷ Day → [Day] Source #

Arbitrary Month 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary Quarter 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary QuarterOfYear 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary DayOfWeek 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary AbsoluteTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary DiffTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary NominalDiffTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary SystemTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary UTCTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary UniversalTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary CalendarDiffTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary LocalTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary TimeOfDay 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary TimeZone 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary ZonedTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Arbitrary Expr 
Instance details

Defined in Data.TreeDiff.Expr

Arbitrary UUID

Uniform distribution.

Instance details

Defined in Test.QuickCheck.Instances.UUID

Arbitrary Integer 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Natural 
Instance details

Defined in Test.QuickCheck.Instances.Natural

Arbitrary () 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen () Source #

shrink ∷ () → [()] Source #

Arbitrary Bool 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Char 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Double 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Float 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary Int 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen Int Source #

shrink ∷ Int → [Int] Source #

Arbitrary Word 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary a ⇒ Arbitrary (Blind a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Blind a) Source #

shrink ∷ Blind a → [Blind a] Source #

Arbitrary a ⇒ Arbitrary (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Fixed a) Source #

shrink ∷ Fixed a → [Fixed a] Source #

Arbitrary a ⇒ Arbitrary (InfiniteList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Arbitrary a ⇒ Arbitrary (InfiniteListInternalData a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (InfiniteListInternalData a) Source #

shrink ∷ InfiniteListInternalData a → [InfiniteListInternalData a] Source #

(Integral a, Bounded a) ⇒ Arbitrary (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Large a) Source #

shrink ∷ Large a → [Large a] Source #

(Num a, Ord a, Arbitrary a) ⇒ Arbitrary (Negative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Arbitrary a ⇒ Arbitrary (NonEmptyList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

(Num a, Ord a, Arbitrary a) ⇒ Arbitrary (NonNegative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

(Num a, Ord a, Arbitrary a) ⇒ Arbitrary (NonPositive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

(Num a, Eq a, Arbitrary a) ⇒ Arbitrary (NonZero a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (NonZero a) Source #

shrink ∷ NonZero a → [NonZero a] Source #

(Ord a, Arbitrary a) ⇒ Arbitrary (OrderedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

(Num a, Ord a, Arbitrary a) ⇒ Arbitrary (Positive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Arbitrary a ⇒ Arbitrary (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Shrink2 a) Source #

shrink ∷ Shrink2 a → [Shrink2 a] Source #

Integral a ⇒ Arbitrary (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Small a) Source #

shrink ∷ Small a → [Small a] Source #

Arbitrary a ⇒ Arbitrary (Smart a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Smart a) Source #

shrink ∷ Smart a → [Smart a] Source #

(Arbitrary a, Ord a) ⇒ Arbitrary (SortedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Arbitrary v ⇒ Arbitrary (KeyMap v)

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.KeyMap

Methods

arbitrary ∷ Gen (KeyMap v) Source #

shrink ∷ KeyMap v → [KeyMap v] Source #

Arbitrary a ⇒ Arbitrary (Complex a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Complex a) Source #

shrink ∷ Complex a → [Complex a] Source #

Arbitrary a ⇒ Arbitrary (First a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

arbitrary ∷ Gen (First a) Source #

shrink ∷ First a → [First a] Source #

Arbitrary a ⇒ Arbitrary (Last a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

arbitrary ∷ Gen (Last a) Source #

shrink ∷ Last a → [Last a] Source #

Arbitrary a ⇒ Arbitrary (Max a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

arbitrary ∷ Gen (Max a) Source #

shrink ∷ Max a → [Max a] Source #

Arbitrary a ⇒ Arbitrary (Min a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

arbitrary ∷ Gen (Min a) Source #

shrink ∷ Min a → [Min a] Source #

Arbitrary a ⇒ Arbitrary (WrappedMonoid a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Arbitrary (PossessionProofDSIGN BLS12381MinSigDSIGN) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

DSIGNAlgorithm v ⇒ Arbitrary (SigDSIGN v) 
Instance details

Defined in Test.Crypto.Instances

DSIGNAlgorithm v ⇒ Arbitrary (SignKeyDSIGN v) 
Instance details

Defined in Test.Crypto.Instances

DSIGNAlgorithm v ⇒ Arbitrary (VerKeyDSIGN v) 
Instance details

Defined in Test.Crypto.Instances

(UnsoundPureKESAlgorithm k, Signable k ByteString, Arbitrary (ContextKES k)) ⇒ Arbitrary (SigKES k) 
Instance details

Defined in Test.Crypto.KES

Methods

arbitrary ∷ Gen (SigKES k) Source #

shrink ∷ SigKES k → [SigKES k] Source #

(UnsoundPureKESAlgorithm k, Arbitrary (ContextKES k)) ⇒ Arbitrary (UnsoundPureSignKeyKES k) 
Instance details

Defined in Test.Crypto.KES

(UnsoundPureKESAlgorithm k, Arbitrary (ContextKES k)) ⇒ Arbitrary (VerKeyKES k) 
Instance details

Defined in Test.Crypto.KES

KnownNat n ⇒ Arbitrary (PinnedSizedBytes n) 
Instance details

Defined in Test.Crypto.Instances

(VRFAlgorithm v, ContextVRF v ~ (), Signable v ~ SignableRepresentation) ⇒ Arbitrary (CertVRF v) 
Instance details

Defined in Test.Crypto.Instances

Methods

arbitrary ∷ Gen (CertVRF v) Source #

shrink ∷ CertVRF v → [CertVRF v] Source #

VRFAlgorithm v ⇒ Arbitrary (OutputVRF v) 
Instance details

Defined in Test.Crypto.Instances

VRFAlgorithm v ⇒ Arbitrary (SignKeyVRF v) 
Instance details

Defined in Test.Crypto.Instances

VRFAlgorithm v ⇒ Arbitrary (VerKeyVRF v) 
Instance details

Defined in Test.Crypto.Instances

DSIGNAlgorithm v ⇒ Arbitrary (BadInputFor (SigDSIGN v)) 
Instance details

Defined in Test.Crypto.Util

DSIGNAlgorithm v ⇒ Arbitrary (BadInputFor (SignKeyDSIGN v)) 
Instance details

Defined in Test.Crypto.Util

DSIGNAlgorithm v ⇒ Arbitrary (BadInputFor (VerKeyDSIGN v)) 
Instance details

Defined in Test.Crypto.Util

HashAlgorithm h ⇒ Arbitrary (BadInputFor (Hash h a)) 
Instance details

Defined in Test.Crypto.Util

Methods

arbitrary ∷ Gen (BadInputFor (Hash h a)) Source #

shrink ∷ BadInputFor (Hash h a) → [BadInputFor (Hash h a)] Source #

KnownNat n ⇒ Arbitrary (SizedSeed n) 
Instance details

Defined in Test.Crypto.Util

(Era era, EncCBOR (f era), Arbitrary (f era)) ⇒ Arbitrary (Sized (f era)) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (Sized (f era)) Source #

shrink ∷ Sized (f era) → [Sized (f era)] Source #

(Twiddle a, Arbitrary a, EncCBOR a) ⇒ Arbitrary (Twiddler a) 
Instance details

Defined in Test.Cardano.Ledger.Binary.Twiddle

Arbitrary (Attributes AddrAttributes) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary a ⇒ Arbitrary (Exclusive a) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary a ⇒ Arbitrary (Inclusive a) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

(Arbitrary a, HasZero a) ⇒ Arbitrary (NonZero a) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (NonZero a) Source #

shrink ∷ NonZero a → [NonZero a] Source #

Arbitrary (CompactForm Coin) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

(Era era, Arbitrary (PParamsHKD Identity era)) ⇒ Arbitrary (PParams era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (PParams era) Source #

shrink ∷ PParams era → [PParams era] Source #

(Era era, Arbitrary (PParamsHKD StrictMaybe era)) ⇒ Arbitrary (PParamsUpdate era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary (PoolCert era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (PoolCert era) Source #

shrink ∷ PoolCert era → [PoolCert era] Source #

Arbitrary (Credential r) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary (NoGenesis era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (NoGenesis era) Source #

shrink ∷ NoGenesis era → [NoGenesis era] Source #

Arbitrary (NoUpdate a) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary (SafeHash i) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary (VRFVerKeyHash r) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Arbitrary (KeyHash r) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (KeyHash r) Source #

shrink ∷ KeyHash r → [KeyHash r] Source #

Arbitrary (VKey kd) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (VKey kd) Source #

shrink ∷ VKey kd → [VKey kd] Source #

Typeable kr ⇒ Arbitrary (WitVKey kr) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (WitVKey kr) Source #

shrink ∷ WitVKey kr → [WitVKey kr] Source #

Era era ⇒ Arbitrary (BinaryData era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (BinaryData era) Source #

shrink ∷ BinaryData era → [BinaryData era] Source #

Era era ⇒ Arbitrary (Data era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (Data era) Source #

shrink ∷ Data era → [Data era] Source #

Era era ⇒ Arbitrary (Datum era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (Datum era) Source #

shrink ∷ Datum era → [Datum era] Source #

Arbitrary (CommitteeState era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

(Era era, Arbitrary (Accounts era)) ⇒ Arbitrary (DState era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (DState era) Source #

shrink ∷ DState era → [DState era] Source #

Arbitrary (PState era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (PState era) Source #

shrink ∷ PState era → [PState era] Source #

Arbitrary (SnapShots era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (SnapShots era) Source #

shrink ∷ SnapShots era → [SnapShots era] Source #

Arbitrary (StakePoolParams era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

(EraTxOut era, Arbitrary (TxOut era)) ⇒ Arbitrary (UTxO era) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (UTxO era) Source #

shrink ∷ UTxO era → [UTxO era] Source #

Arbitrary (KeyPair kd) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.KeyPair

Methods

arbitrary ∷ Gen (KeyPair kd) Source #

shrink ∷ KeyPair kd → [KeyPair kd] Source #

Arbitrary t ⇒ Arbitrary (WithOrigin t) 
Instance details

Defined in Test.Cardano.Slotting.Arbitrary

Arbitrary e ⇒ Arbitrary (StrictMaybe e) 
Instance details

Defined in Test.Cardano.StrictContainers.Instances

Arbitrary e ⇒ Arbitrary (StrictSeq e) 
Instance details

Defined in Test.Cardano.StrictContainers.Instances

(FoldCase a, Arbitrary a) ⇒ Arbitrary (CI a) 
Instance details

Defined in Test.QuickCheck.Instances.CaseInsensitive

Methods

arbitrary ∷ Gen (CI a) Source #

shrink ∷ CI a → [CI a] Source #

Arbitrary a ⇒ Arbitrary (IntMap a)

WARNING: The same warning as for Arbitrary (Set a) applies here.

Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (IntMap a) Source #

shrink ∷ IntMap a → [IntMap a] Source #

Arbitrary a ⇒ Arbitrary (Seq a)

WARNING: The same warning as for Arbitrary (Set a) applies here.

Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Seq a) Source #

shrink ∷ Seq a → [Seq a] Source #

(Ord a, Arbitrary a) ⇒ Arbitrary (Set a)

WARNING: Users working on the internals of the Set type via e.g. Data.Set.Internal should be aware that this instance aims to give a good representation of Set a as mathematical sets but *does not* aim to provide a varied distribution over the underlying representation.

Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Set a) Source #

shrink ∷ Set a → [Set a] Source #

Arbitrary a ⇒ Arbitrary (Tree a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Tree a) Source #

shrink ∷ Tree a → [Tree a] Source #

Arbitrary1 f ⇒ Arbitrary (Fix f) 
Instance details

Defined in Test.QuickCheck.Instances.DataFix

Methods

arbitrary ∷ Gen (Fix f) Source #

shrink ∷ Fix f → [Fix f] Source #

(Arbitrary1 f, Functor f) ⇒ Arbitrary (Mu f) 
Instance details

Defined in Test.QuickCheck.Instances.DataFix

Methods

arbitrary ∷ Gen (Mu f) Source #

shrink ∷ Mu f → [Mu f] Source #

(Arbitrary1 f, Functor f) ⇒ Arbitrary (Nu f) 
Instance details

Defined in Test.QuickCheck.Instances.DataFix

Methods

arbitrary ∷ Gen (Nu f) Source #

shrink ∷ Nu f → [Nu f] Source #

(GArbitrary UnsizedOpts a, Weights_ (Rep a) ~ L c0) ⇒ Arbitrary (GenericArbitrarySingle a) 
Instance details

Defined in Generic.Random.DerivingVia

(GArbitrary UnsizedOpts a, GUniformWeight a) ⇒ Arbitrary (GenericArbitraryU a) 
Instance details

Defined in Generic.Random.DerivingVia

Arbitrary a ⇒ Arbitrary (NonEmpty a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Arbitrary a ⇒ Arbitrary (Identity a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Arbitrary a ⇒ Arbitrary (First a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (First a) Source #

shrink ∷ First a → [First a] Source #

Arbitrary a ⇒ Arbitrary (Last a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Last a) Source #

shrink ∷ Last a → [Last a] Source #

Arbitrary a ⇒ Arbitrary (Dual a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Dual a) Source #

shrink ∷ Dual a → [Dual a] Source #

(Arbitrary a, CoArbitrary a) ⇒ Arbitrary (Endo a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Endo a) Source #

shrink ∷ Endo a → [Endo a] Source #

Arbitrary a ⇒ Arbitrary (Product a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Product a) Source #

shrink ∷ Product a → [Product a] Source #

Arbitrary a ⇒ Arbitrary (Sum a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Sum a) Source #

shrink ∷ Sum a → [Sum a] Source #

Arbitrary a ⇒ Arbitrary (ZipList a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (ZipList a) Source #

shrink ∷ ZipList a → [ZipList a] Source #

Integral a ⇒ Arbitrary (Ratio a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Ratio a) Source #

shrink ∷ Ratio a → [Ratio a] Source #

(Hashable a, Arbitrary a) ⇒ Arbitrary (Hashed a) 
Instance details

Defined in Test.QuickCheck.Instances.Hashable

Methods

arbitrary ∷ Gen (Hashed a) Source #

shrink ∷ Hashed a → [Hashed a] Source #

Arbitrary (NoArbitrary a)

arbitrary throws, shrink neither throws nor shrinks.

Instance details

Defined in PlutusLedgerApi.Test.V1.Data.Value

Arbitrary a ⇒ Arbitrary (Maybe a)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

arbitrary ∷ Gen (Maybe a) Source #

shrink ∷ Maybe a → [Maybe a] Source #

(Hashable a, Eq a, Arbitrary a) ⇒ Arbitrary (HashSet a) 
Instance details

Defined in Test.QuickCheck.Instances.UnorderedContainers

Methods

arbitrary ∷ Gen (HashSet a) Source #

shrink ∷ HashSet a → [HashSet a] Source #

Arbitrary a ⇒ Arbitrary (Vector a) 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

arbitrary ∷ Gen (Vector a) Source #

shrink ∷ Vector a → [Vector a] Source #

(Prim a, Arbitrary a) ⇒ Arbitrary (Vector a)

Since: quickcheck-instances-0.3.32

Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

arbitrary ∷ Gen (Vector a) Source #

shrink ∷ Vector a → [Vector a] Source #

(Storable a, Arbitrary a) ⇒ Arbitrary (Vector a) 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

arbitrary ∷ Gen (Vector a) Source #

shrink ∷ Vector a → [Vector a] Source #

Arbitrary a ⇒ Arbitrary (Vector a)

Since: quickcheck-instances-0.3.33

Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

arbitrary ∷ Gen (Vector a) Source #

shrink ∷ Vector a → [Vector a] Source #

(Unbox a, Arbitrary a) ⇒ Arbitrary (Vector a) 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

arbitrary ∷ Gen (Vector a) Source #

shrink ∷ Vector a → [Vector a] Source #

Arbitrary a ⇒ Arbitrary (Maybe a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Maybe a) Source #

shrink ∷ Maybe a → [Maybe a] Source #

Arbitrary a ⇒ Arbitrary (Solo a) 
Instance details

Defined in Test.QuickCheck.Instances.Solo

Methods

arbitrary ∷ Gen (Solo a) Source #

shrink ∷ Solo a → [Solo a] Source #

Arbitrary a ⇒ Arbitrary [a] 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen [a] Source #

shrink ∷ [a] → [[a]] Source #

(Function a, CoArbitrary a, Arbitrary b) ⇒ Arbitrary (a :-> b) 
Instance details

Defined in Test.QuickCheck.Function

Methods

arbitrary ∷ Gen (a :-> b) Source #

shrink ∷ (a :-> b) → [a :-> b] Source #

(Function a, CoArbitrary a, Arbitrary b) ⇒ Arbitrary (Fun a b) 
Instance details

Defined in Test.QuickCheck.Function

Methods

arbitrary ∷ Gen (Fun a b) Source #

shrink ∷ Fun a b → [Fun a b] Source #

(Arbitrary a, ShrinkState s a) ⇒ Arbitrary (Shrinking s a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Shrinking s a) Source #

shrink ∷ Shrinking s a → [Shrinking s a] Source #

(Num i, Ix i, IArray UArray a, Arbitrary i, Arbitrary a) ⇒ Arbitrary (UArray i a) 
Instance details

Defined in Test.QuickCheck.Instances.Array

Methods

arbitrary ∷ Gen (UArray i a) Source #

shrink ∷ UArray i a → [UArray i a] Source #

Arbitrary (m a) ⇒ Arbitrary (WrappedMonad m a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

HasResolution a ⇒ Arbitrary (Fixed a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Fixed a) Source #

shrink ∷ Fixed a → [Fixed a] Source #

DSIGNAlgorithm v ⇒ Arbitrary (SignedDSIGN v a) 
Instance details

Defined in Test.Crypto.Instances

HashAlgorithm h ⇒ Arbitrary (Hash h a) 
Instance details

Defined in Test.Crypto.Hash

Methods

arbitrary ∷ Gen (Hash h a) Source #

shrink ∷ Hash h a → [Hash h a] Source #

(ContextVRF v ~ (), Signable v ~ SignableRepresentation, VRFAlgorithm v) ⇒ Arbitrary (CertifiedVRF v a) 
Instance details

Defined in Test.Crypto.Instances

Arbitrary a ⇒ Arbitrary (Mismatch r a) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.Arbitrary

Methods

arbitrary ∷ Gen (Mismatch r a) Source #

shrink ∷ Mismatch r a → [Mismatch r a] Source #

(Ord k, Arbitrary k, Arbitrary v) ⇒ Arbitrary (Map k v)

WARNING: The same warning as for Arbitrary (Set a) applies here.

Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Map k v) Source #

shrink ∷ Map k v → [Map k v] Source #

(Num i, Ix i, Arbitrary i, Arbitrary a) ⇒ Arbitrary (Array i a) 
Instance details

Defined in Test.QuickCheck.Instances.Array

Methods

arbitrary ∷ Gen (Array i a) Source #

shrink ∷ Array i a → [Array i a] Source #

(Arbitrary a, Arbitrary b) ⇒ Arbitrary (Either a b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Either a b) Source #

shrink ∷ Either a b → [Either a b] Source #

Arbitrary (Proxy a) 
Instance details

Defined in Test.QuickCheck.Instances.Tagged

Methods

arbitrary ∷ Gen (Proxy a) Source #

shrink ∷ Proxy a → [Proxy a] Source #

(Arbitrary a, Arbitrary b) ⇒ Arbitrary (Either a b)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

arbitrary ∷ Gen (Either a b) Source #

shrink ∷ Either a b → [Either a b] Source #

(Arbitrary a, Arbitrary b) ⇒ Arbitrary (These a b)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

arbitrary ∷ Gen (These a b) Source #

shrink ∷ These a b → [These a b] Source #

(Arbitrary a, Arbitrary b) ⇒ Arbitrary (Pair a b)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

arbitrary ∷ Gen (Pair a b) Source #

shrink ∷ Pair a b → [Pair a b] Source #

(Arbitrary a, Arbitrary b) ⇒ Arbitrary (These a b)

Since: quickcheck-instances-0.3.23

Instance details

Defined in Test.QuickCheck.Instances.These

Methods

arbitrary ∷ Gen (These a b) Source #

shrink ∷ These a b → [These a b] Source #

(Arbitrary1 f, Arbitrary a) ⇒ Arbitrary (Lift f a) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

arbitrary ∷ Gen (Lift f a) Source #

shrink ∷ Lift f a → [Lift f a] Source #

(Arbitrary1 m, Arbitrary a) ⇒ Arbitrary (MaybeT m a) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

arbitrary ∷ Gen (MaybeT m a) Source #

shrink ∷ MaybeT m a → [MaybeT m a] Source #

(Ord k, Arbitrary k, Arbitrary v) ⇒ Arbitrary (OMap k v) 
Instance details

Defined in Data.TreeDiff.OMap

Methods

arbitrary ∷ Gen (OMap k v) Source #

shrink ∷ OMap k v → [OMap k v] Source #

(Hashable k, Eq k, Arbitrary k, Arbitrary v) ⇒ Arbitrary (HashMap k v) 
Instance details

Defined in Test.QuickCheck.Instances.UnorderedContainers

Methods

arbitrary ∷ Gen (HashMap k v) Source #

shrink ∷ HashMap k v → [HashMap k v] Source #

(Arbitrary a, Arbitrary b) ⇒ Arbitrary (a, b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a, b) Source #

shrink ∷ (a, b) → [(a, b)] Source #

(CoArbitrary a, Arbitrary b) ⇒ Arbitrary (a → b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a → b) Source #

shrink ∷ (a → b) → [a → b] Source #

Arbitrary (a b c) ⇒ Arbitrary (WrappedArrow a b c) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (WrappedArrow a b c) Source #

shrink ∷ WrappedArrow a b c → [WrappedArrow a b c] Source #

(Arbitrary (f a), Coercible (f a) a, Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) ⇒ Arbitrary (AndShrinking f a) 
Instance details

Defined in Generic.Random.DerivingVia

(GArbitrary UnsizedOpts a, TypeLevelWeights' weights a) ⇒ Arbitrary (GenericArbitrary weights a) 
Instance details

Defined in Generic.Random.DerivingVia

Methods

arbitrary ∷ Gen (GenericArbitrary weights a) Source #

shrink ∷ GenericArbitrary weights a → [GenericArbitrary weights a] Source #

(GArbitrary SizedOptsDef a, TypeLevelWeights' weights a) ⇒ Arbitrary (GenericArbitraryRec weights a) 
Instance details

Defined in Generic.Random.DerivingVia

Methods

arbitrary ∷ Gen (GenericArbitraryRec weights a) Source #

shrink ∷ GenericArbitraryRec weights a → [GenericArbitraryRec weights a] Source #

(GArbitrary (SetGens genList UnsizedOpts) a, Weights_ (Rep a) ~ L c0, TypeLevelGenList genList', genList ~ TypeLevelGenList' genList') ⇒ Arbitrary (GenericArbitrarySingleG genList' a) 
Instance details

Defined in Generic.Random.DerivingVia

(GArbitrary (SetGens genList UnsizedOpts) a, GUniformWeight a, TypeLevelGenList genList', genList ~ TypeLevelGenList' genList') ⇒ Arbitrary (GenericArbitraryUG genList' a) 
Instance details

Defined in Generic.Random.DerivingVia

Methods

arbitrary ∷ Gen (GenericArbitraryUG genList' a) Source #

shrink ∷ GenericArbitraryUG genList' a → [GenericArbitraryUG genList' a] Source #

Arbitrary a ⇒ Arbitrary (Const a b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Const a b) Source #

shrink ∷ Const a b → [Const a b] Source #

Arbitrary (f a) ⇒ Arbitrary (Alt f a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Alt f a) Source #

shrink ∷ Alt f a → [Alt f a] Source #

Arbitrary b ⇒ Arbitrary (Tagged a b) 
Instance details

Defined in Test.QuickCheck.Instances.Tagged

Methods

arbitrary ∷ Gen (Tagged a b) Source #

shrink ∷ Tagged a b → [Tagged a b] Source #

(Arbitrary1 f, Arbitrary1 g, Arbitrary a) ⇒ Arbitrary (These1 f g a)

Since: quickcheck-instances-0.3.23

Instance details

Defined in Test.QuickCheck.Instances.These

Methods

arbitrary ∷ Gen (These1 f g a) Source #

shrink ∷ These1 f g a → [These1 f g a] Source #

(Arbitrary1 f, Arbitrary a) ⇒ Arbitrary (Backwards f a) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

arbitrary ∷ Gen (Backwards f a) Source #

shrink ∷ Backwards f a → [Backwards f a] Source #

Arbitrary a ⇒ Arbitrary (Constant a b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Constant a b) Source #

shrink ∷ Constant a b → [Constant a b] Source #

(Arbitrary1 f, Arbitrary a) ⇒ Arbitrary (Reverse f a) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

arbitrary ∷ Gen (Reverse f a) Source #

shrink ∷ Reverse f a → [Reverse f a] Source #

(Arbitrary a, Arbitrary b, Arbitrary c) ⇒ Arbitrary (a, b, c) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a, b, c) Source #

shrink ∷ (a, b, c) → [(a, b, c)] Source #

(Arbitrary1 f, Arbitrary1 g, Arbitrary a) ⇒ Arbitrary (Product f g a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Product f g a) Source #

shrink ∷ Product f g a → [Product f g a] Source #

(Arbitrary1 f, Arbitrary1 g, Arbitrary a) ⇒ Arbitrary (Sum f g a) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

arbitrary ∷ Gen (Sum f g a) Source #

shrink ∷ Sum f g a → [Sum f g a] Source #

(Ord k, Vector kv k, Vector vv v, Arbitrary k, Arbitrary v) ⇒ Arbitrary (VMap kv vv k v) 
Instance details

Defined in Test.Data.VMap.Arbitrary

Methods

arbitrary ∷ Gen (VMap kv vv k v) Source #

shrink ∷ VMap kv vv k v → [VMap kv vv k v] Source #

(Arbitrary a, Arbitrary b, Arbitrary c, Arbitrary d) ⇒ Arbitrary (a, b, c, d) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a, b, c, d) Source #

shrink ∷ (a, b, c, d) → [(a, b, c, d)] Source #

(Arbitrary1 f, Arbitrary1 g, Arbitrary a) ⇒ Arbitrary (Compose f g a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (Compose f g a) Source #

shrink ∷ Compose f g a → [Compose f g a] Source #

(GArbitrary (SetGens genList UnsizedOpts) a, GUniformWeight a, TypeLevelWeights' weights a, TypeLevelGenList genList', genList ~ TypeLevelGenList' genList') ⇒ Arbitrary (GenericArbitraryG genList' weights a) 
Instance details

Defined in Generic.Random.DerivingVia

Methods

arbitrary ∷ Gen (GenericArbitraryG genList' weights a) Source #

shrink ∷ GenericArbitraryG genList' weights a → [GenericArbitraryG genList' weights a] Source #

(GArbitrary (SetGens genList SizedOpts) a, TypeLevelWeights' weights a, TypeLevelGenList genList', genList ~ TypeLevelGenList' genList') ⇒ Arbitrary (GenericArbitraryRecG genList' weights a) 
Instance details

Defined in Generic.Random.DerivingVia

Methods

arbitrary ∷ Gen (GenericArbitraryRecG genList' weights a) Source #

shrink ∷ GenericArbitraryRecG genList' weights a → [GenericArbitraryRecG genList' weights a] Source #

(GArbitrary opts a, TypeLevelWeights' weights a, TypeLevelOpts opts', opts ~ TypeLevelOpts' opts') ⇒ Arbitrary (GenericArbitraryWith opts' weights a) 
Instance details

Defined in Generic.Random.DerivingVia

Methods

arbitrary ∷ Gen (GenericArbitraryWith opts' weights a) Source #

shrink ∷ GenericArbitraryWith opts' weights a → [GenericArbitraryWith opts' weights a] Source #

(Arbitrary a, Arbitrary b, Arbitrary c, Arbitrary d, Arbitrary e) ⇒ Arbitrary (a, b, c, d, e) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a, b, c, d, e) Source #

shrink ∷ (a, b, c, d, e) → [(a, b, c, d, e)] Source #

(Arbitrary a, Arbitrary b, Arbitrary c, Arbitrary d, Arbitrary e, Arbitrary f) ⇒ Arbitrary (a, b, c, d, e, f) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a, b, c, d, e, f) Source #

shrink ∷ (a, b, c, d, e, f) → [(a, b, c, d, e, f)] Source #

(Arbitrary a, Arbitrary b, Arbitrary c, Arbitrary d, Arbitrary e, Arbitrary f, Arbitrary g) ⇒ Arbitrary (a, b, c, d, e, f, g) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a, b, c, d, e, f, g) Source #

shrink ∷ (a, b, c, d, e, f, g) → [(a, b, c, d, e, f, g)] Source #

(Arbitrary a, Arbitrary b, Arbitrary c, Arbitrary d, Arbitrary e, Arbitrary f, Arbitrary g, Arbitrary h) ⇒ Arbitrary (a, b, c, d, e, f, g, h) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a, b, c, d, e, f, g, h) Source #

shrink ∷ (a, b, c, d, e, f, g, h) → [(a, b, c, d, e, f, g, h)] Source #

(Arbitrary a, Arbitrary b, Arbitrary c, Arbitrary d, Arbitrary e, Arbitrary f, Arbitrary g, Arbitrary h, Arbitrary i) ⇒ Arbitrary (a, b, c, d, e, f, g, h, i) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a, b, c, d, e, f, g, h, i) Source #

shrink ∷ (a, b, c, d, e, f, g, h, i) → [(a, b, c, d, e, f, g, h, i)] Source #

(Arbitrary a, Arbitrary b, Arbitrary c, Arbitrary d, Arbitrary e, Arbitrary f, Arbitrary g, Arbitrary h, Arbitrary i, Arbitrary j) ⇒ Arbitrary (a, b, c, d, e, f, g, h, i, j) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

arbitrary ∷ Gen (a, b, c, d, e, f, g, h, i, j) Source #

shrink ∷ (a, b, c, d, e, f, g, h, i, j) → [(a, b, c, d, e, f, g, h, i, j)] Source #

data Fun a b Source #

Generation of random shrinkable, showable functions.

To generate random values of type Fun a b, you must have an instance Function a.

See also applyFun, and Fn with GHC >= 7.8.

Constructors

Fun (a :-> b, b, Shrunk) (a → b) 

Instances

Instances details
Functor (Fun a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

fmap ∷ (a0 → b) → Fun a a0 → Fun a b #

(<$) ∷ a0 → Fun a b → Fun a a0 #

(Function a, CoArbitrary a, Arbitrary b) ⇒ Arbitrary (Fun a b) 
Instance details

Defined in Test.QuickCheck.Function

Methods

arbitrary ∷ Gen (Fun a b) Source #

shrink ∷ Fun a b → [Fun a b] Source #

(Show a, Show b) ⇒ Show (Fun a b) 
Instance details

Defined in Test.QuickCheck.Function

Methods

showsPrec ∷ Int → Fun a b → ShowS #

show ∷ Fun a b → String #

showList ∷ [Fun a b] → ShowS #

discard ∷ a Source #

A special error value. If a property evaluates discard, it causes QuickCheck to discard the current test case. This can be useful if you want to discard the current test case, but are somewhere you can't use ==>, such as inside a generator.

data Gen a Source #

A generator for values of type a.

The third-party packages QuickCheck-GenT and quickcheck-transformer provide monad transformer versions of Gen.

Instances

Instances details
MonadRandom Gen 
Instance details

Defined in Test.Cardano.Prelude.Orphans

Methods

getRandomBytes ∷ ByteArray byteArray ⇒ Int → Gen byteArray Source #

Applicative Gen 
Instance details

Defined in Test.QuickCheck.Gen

Methods

pure ∷ a → Gen a #

(<*>) ∷ Gen (a → b) → Gen a → Gen b #

liftA2 ∷ (a → b → c) → Gen a → Gen b → Gen c #

(*>) ∷ Gen a → Gen b → Gen b #

(<*) ∷ Gen a → Gen b → Gen a #

Functor Gen 
Instance details

Defined in Test.QuickCheck.Gen

Methods

fmap ∷ (a → b) → Gen a → Gen b #

(<$) ∷ a → Gen b → Gen a #

Monad Gen 
Instance details

Defined in Test.QuickCheck.Gen

Methods

(>>=) ∷ Gen a → (a → Gen b) → Gen b #

(>>) ∷ Gen a → Gen b → Gen b #

return ∷ a → Gen a #

MonadFix Gen 
Instance details

Defined in Test.QuickCheck.Gen

Methods

mfix ∷ (a → Gen a) → Gen a #

MonadGen Gen 
Instance details

Defined in Test.QuickCheck.GenT

Methods

liftGen ∷ Gen a → Gen a Source #

variant ∷ Integral n ⇒ n → Gen a → Gen a Source #

sized ∷ (Int → Gen a) → Gen a Source #

resize ∷ Int → Gen a → Gen a Source #

choose ∷ Random a ⇒ (a, a) → Gen a Source #

StatefulGen QC Gen 
Instance details

Defined in Test.Cardano.Ledger.Binary.Random

Arbitrary a ⇒ TypeLevelGenList (Gen a ∷ Type) 
Instance details

Defined in Generic.Random.DerivingVia

Associated Types

type TypeLevelGenList' (Gen a ∷ Type) 
Instance details

Defined in Generic.Random.DerivingVia

type TypeLevelGenList' (Gen a ∷ Type) = Gen a
Testable prop ⇒ Testable (Gen prop) 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Gen prop → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Gen prop) → Property Source #

FindGen ('Match 'INCOHERENT) s (Gen a) gs a

Matching custom generator for a.

Instance details

Defined in Generic.Random.Internal.Generic

Methods

findGen ∷ (Proxy ('Match 'INCOHERENT), Proxy s, FullGenListOf s) → Gen a → gs → Gen a Source #

a ~ a' ⇒ FindGen ('MatchCoh 'True) s (Gen a) gs a' 
Instance details

Defined in Generic.Random.Internal.Generic

Methods

findGen ∷ (Proxy ('MatchCoh 'True), Proxy s, FullGenListOf s) → Gen a → gs → Gen a' Source #

type TypeLevelGenList' (Gen a ∷ Type) 
Instance details

Defined in Generic.Random.DerivingVia

type TypeLevelGenList' (Gen a ∷ Type) = Gen a

variant ∷ Integral n ⇒ n → Gen a → Gen a Source #

Modifies a generator using an integer seed.

sized ∷ (Int → Gen a) → Gen a Source #

Used to construct generators that depend on the size parameter.

For example, listOf, which uses the size parameter as an upper bound on length of lists it generates, can be defined like this:

listOf :: Gen a -> Gen [a]
listOf gen = sized $ \n ->
  do k <- choose (0,n)
     vectorOf k gen

You can also do this using getSize.

getSize ∷ Gen Int Source #

Returns the size parameter. Used to construct generators that depend on the size parameter.

For example, listOf, which uses the size parameter as an upper bound on length of lists it generates, can be defined like this:

listOf :: Gen a -> Gen [a]
listOf gen = do
  n <- getSize
  k <- choose (0,n)
  vectorOf k gen

You can also do this using sized.

resize ∷ HasCallStack ⇒ Int → Gen a → Gen a Source #

Overrides the size parameter. Returns a generator which uses the given size instead of the runtime-size parameter.

scale ∷ (Int → Int) → Gen a → Gen a Source #

Adjust the size parameter, by transforming it with the given function.

choose ∷ Random a ⇒ (a, a) → Gen a Source #

Generates a random element in the given inclusive range. For integral and enumerated types, the specialised variants of choose below run much quicker.

chooseAny ∷ Random a ⇒ Gen a Source #

Generates a random element over the natural range of a.

chooseEnum ∷ Enum a ⇒ (a, a) → Gen a Source #

A fast implementation of choose for enumerated types.

chooseInt ∷ (Int, Int) → Gen Int Source #

A fast implementation of choose for Int.

chooseBoundedIntegral ∷ (Bounded a, Integral a) ⇒ (a, a) → Gen a Source #

A fast implementation of choose for bounded integral types.

chooseInteger ∷ (Integer, Integer) → Gen Integer Source #

A fast implementation of choose for Integer.

generate ∷ Gen a → IO a Source #

Run a generator. The size passed to the generator is always 30; if you want another size then you should explicitly use resize.

sample' ∷ Gen a → IO [a] Source #

Generates some example values.

sample ∷ Show a ⇒ Gen a → IO () Source #

Generates some example values and prints them to stdout.

suchThat ∷ Gen a → (a → Bool) → Gen a Source #

Generates a value that satisfies a predicate.

suchThatMap ∷ Gen a → (a → Maybe b) → Gen b Source #

Generates a value for which the given function returns a Just, and then applies the function.

suchThatMaybe ∷ Gen a → (a → Bool) → Gen (Maybe a) Source #

Tries to generate a value that satisfies a predicate. If it fails to do so after enough attempts, returns Nothing.

oneof ∷ HasCallStack ⇒ [Gen a] → Gen a Source #

Randomly uses one of the given generators. The input list must be non-empty.

frequency ∷ HasCallStack ⇒ [(Int, Gen a)] → Gen a Source #

Chooses one of the given generators, with a weighted random distribution. The input list must be non-empty.

elements ∷ HasCallStack ⇒ [a] → Gen a Source #

Generates one of the given values. The input list must be non-empty.

sublistOf ∷ [a] → Gen [a] Source #

Generates a random subsequence of the given list.

shuffle ∷ [a] → Gen [a] Source #

Generates a random permutation of the given list.

growingElements ∷ HasCallStack ⇒ [a] → Gen a Source #

Takes a list of elements of increasing size, and chooses among an initial segment of the list. The size of this initial segment increases with the size parameter. The input list must be non-empty.

listOf ∷ Gen a → Gen [a] Source #

Generates a list of random length. The maximum length depends on the size parameter.

listOf1 ∷ Gen a → Gen [a] Source #

Generates a non-empty list of random length. The maximum length depends on the size parameter.

vectorOf ∷ Int → Gen a → Gen [a] Source #

Generates a list of the given length.

infiniteListOf ∷ Gen a → Gen [a] Source #

Generates an infinite list.

class CoArbitrary a where Source #

Used for random generation of functions. You should consider using Fun instead, which can show the generated functions as strings.

If you are using a recent GHC, there is a default definition of coarbitrary using genericCoarbitrary, so if your type has a Generic instance it's enough to say

instance CoArbitrary MyType

You should only use genericCoarbitrary for data types where equality is structural, i.e. if you can't have two different representations of the same value. An example where it's not safe is sets implemented using binary search trees: the same set can be represented as several different trees. Here you would have to explicitly define coarbitrary s = coarbitrary (toList s).

Minimal complete definition

Nothing

Methods

coarbitrary ∷ a → Gen b → Gen b Source #

Used to generate a function of type a -> b. The first argument is a value, the second a generator. You should use variant to perturb the random generator; the goal is that different values for the first argument will lead to different calls to variant. An example will help:

instance CoArbitrary a => CoArbitrary [a] where
  coarbitrary []     = variant 0
  coarbitrary (x:xs) = variant 1 . coarbitrary (x,xs)

default coarbitrary ∷ (Generic a, GCoArbitrary (Rep a)) ⇒ a → Gen b → Gen b Source #

Instances

Instances details
CoArbitrary A 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary ∷ A → Gen b → Gen b Source #

CoArbitrary B 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary ∷ B → Gen b → Gen b Source #

CoArbitrary C 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary ∷ C → Gen b → Gen b Source #

CoArbitrary OrdA 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary ∷ OrdA → Gen b → Gen b Source #

CoArbitrary OrdB 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary ∷ OrdB → Gen b → Gen b Source #

CoArbitrary OrdC 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary ∷ OrdC → Gen b → Gen b Source #

CoArbitrary Key

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.Key

Methods

coarbitrary ∷ Key → Gen b → Gen b Source #

CoArbitrary Value

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.Types.Internal

Methods

coarbitrary ∷ Value → Gen b → Gen b Source #

CoArbitrary ByteArray

Since: quickcheck-instances-0.3.28

Instance details

Defined in Test.QuickCheck.Instances.Primitive

Methods

coarbitrary ∷ ByteArray → Gen b → Gen b Source #

CoArbitrary ByteString64 
Instance details

Defined in Data.ByteString.Base64.Type

Methods

coarbitrary ∷ ByteString64 → Gen b → Gen b Source #

CoArbitrary ByteString 
Instance details

Defined in Test.QuickCheck.Instances.ByteString

Methods

coarbitrary ∷ ByteString → Gen b → Gen b Source #

CoArbitrary ByteString 
Instance details

Defined in Test.QuickCheck.Instances.ByteString

Methods

coarbitrary ∷ ByteString → Gen b → Gen b Source #

CoArbitrary ShortByteString 
Instance details

Defined in Test.QuickCheck.Instances.ByteString

Methods

coarbitrary ∷ ShortByteString → Gen b → Gen b Source #

CoArbitrary IntSet 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ IntSet → Gen b → Gen b Source #

CoArbitrary Void 
Instance details

Defined in Test.QuickCheck.Instances.Void

Methods

coarbitrary ∷ Void → Gen b → Gen b Source #

CoArbitrary All 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ All → Gen b → Gen b Source #

CoArbitrary Any 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Any → Gen b → Gen b Source #

CoArbitrary Version 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Version → Gen b → Gen b Source #

CoArbitrary Newline 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Newline → Gen b → Gen b Source #

CoArbitrary NewlineMode 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ NewlineMode → Gen b → Gen b Source #

CoArbitrary Int16 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Int16 → Gen b → Gen b Source #

CoArbitrary Int32 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Int32 → Gen b → Gen b Source #

CoArbitrary Int64 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Int64 → Gen b → Gen b Source #

CoArbitrary Int8 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Int8 → Gen b → Gen b Source #

CoArbitrary Word16 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Word16 → Gen b → Gen b Source #

CoArbitrary Word32 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Word32 → Gen b → Gen b Source #

CoArbitrary Word64 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Word64 → Gen b → Gen b Source #

CoArbitrary Word8 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Word8 → Gen b → Gen b Source #

CoArbitrary Ordering 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Ordering → Gen b → Gen b Source #

CoArbitrary CalendarTime 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Methods

coarbitrary ∷ CalendarTime → Gen b → Gen b Source #

CoArbitrary ClockTime 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Methods

coarbitrary ∷ ClockTime → Gen b → Gen b Source #

CoArbitrary Day 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Methods

coarbitrary ∷ Day → Gen b → Gen b Source #

CoArbitrary Month 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Methods

coarbitrary ∷ Month → Gen b → Gen b Source #

CoArbitrary TimeDiff 
Instance details

Defined in Test.QuickCheck.Instances.OldTime

Methods

coarbitrary ∷ TimeDiff → Gen b → Gen b Source #

CoArbitrary Scientific 
Instance details

Defined in Test.QuickCheck.Instances.Scientific

Methods

coarbitrary ∷ Scientific → Gen b → Gen b Source #

CoArbitrary Text 
Instance details

Defined in Test.QuickCheck.Instances.Text

Methods

coarbitrary ∷ Text → Gen b → Gen b Source #

CoArbitrary Text 
Instance details

Defined in Test.QuickCheck.Instances.Text

Methods

coarbitrary ∷ Text → Gen b → Gen b Source #

CoArbitrary ShortText 
Instance details

Defined in Test.QuickCheck.Instances.Text.Short

Methods

coarbitrary ∷ ShortText → Gen b → Gen b Source #

CoArbitrary CalendarDiffDays 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ CalendarDiffDays → Gen b → Gen b Source #

CoArbitrary Day 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ Day → Gen b → Gen b Source #

CoArbitrary Month 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ Month → Gen b → Gen b Source #

CoArbitrary Quarter 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ Quarter → Gen b → Gen b Source #

CoArbitrary QuarterOfYear 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ QuarterOfYear → Gen b → Gen b Source #

CoArbitrary DayOfWeek 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ DayOfWeek → Gen b → Gen b Source #

CoArbitrary AbsoluteTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ AbsoluteTime → Gen b → Gen b Source #

CoArbitrary DiffTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ DiffTime → Gen b → Gen b Source #

CoArbitrary NominalDiffTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ NominalDiffTime → Gen b → Gen b Source #

CoArbitrary SystemTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ SystemTime → Gen b → Gen b Source #

CoArbitrary UTCTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ UTCTime → Gen b → Gen b Source #

CoArbitrary UniversalTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ UniversalTime → Gen b → Gen b Source #

CoArbitrary CalendarDiffTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ CalendarDiffTime → Gen b → Gen b Source #

CoArbitrary LocalTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ LocalTime → Gen b → Gen b Source #

CoArbitrary TimeOfDay 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ TimeOfDay → Gen b → Gen b Source #

CoArbitrary TimeZone 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ TimeZone → Gen b → Gen b Source #

CoArbitrary ZonedTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

coarbitrary ∷ ZonedTime → Gen b → Gen b Source #

CoArbitrary UUID 
Instance details

Defined in Test.QuickCheck.Instances.UUID

Methods

coarbitrary ∷ UUID → Gen b → Gen b Source #

CoArbitrary Integer 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Integer → Gen b → Gen b Source #

CoArbitrary Natural 
Instance details

Defined in Test.QuickCheck.Instances.Natural

Methods

coarbitrary ∷ Natural → Gen b → Gen b Source #

CoArbitrary () 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ () → Gen b → Gen b Source #

CoArbitrary Bool 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Bool → Gen b → Gen b Source #

CoArbitrary Char 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Char → Gen b → Gen b Source #

CoArbitrary Double 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Double → Gen b → Gen b Source #

CoArbitrary Float 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Float → Gen b → Gen b Source #

CoArbitrary Int 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Int → Gen b → Gen b Source #

CoArbitrary Word 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Word → Gen b → Gen b Source #

CoArbitrary v ⇒ CoArbitrary (KeyMap v)

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.KeyMap

Methods

coarbitrary ∷ KeyMap v → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Complex a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Complex a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (First a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

coarbitrary ∷ First a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Last a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

coarbitrary ∷ Last a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Max a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

coarbitrary ∷ Max a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Min a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

coarbitrary ∷ Min a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (WrappedMonoid a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

coarbitrary ∷ WrappedMonoid a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (CI a) 
Instance details

Defined in Test.QuickCheck.Instances.CaseInsensitive

Methods

coarbitrary ∷ CI a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (IntMap a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ IntMap a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Seq a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Seq a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Set a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Set a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Tree a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Tree a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (NonEmpty a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

coarbitrary ∷ NonEmpty a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Identity a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Identity a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (First a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ First a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Last a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Last a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Dual a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Dual a → Gen b → Gen b Source #

(Arbitrary a, CoArbitrary a) ⇒ CoArbitrary (Endo a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Endo a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Product a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Product a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Sum a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Sum a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (ZipList a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ ZipList a → Gen b → Gen b Source #

(Integral a, CoArbitrary a) ⇒ CoArbitrary (Ratio a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Ratio a → Gen b → Gen b Source #

CoArbitrary (Hashed a) 
Instance details

Defined in Test.QuickCheck.Instances.Hashable

Methods

coarbitrary ∷ Hashed a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Maybe a)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

coarbitrary ∷ Maybe a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (HashSet a) 
Instance details

Defined in Test.QuickCheck.Instances.UnorderedContainers

Methods

coarbitrary ∷ HashSet a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Vector a) 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

coarbitrary ∷ Vector a → Gen b → Gen b Source #

(Prim a, CoArbitrary a) ⇒ CoArbitrary (Vector a)

Since: quickcheck-instances-0.3.32

Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

coarbitrary ∷ Vector a → Gen b → Gen b Source #

(Storable a, CoArbitrary a) ⇒ CoArbitrary (Vector a) 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

coarbitrary ∷ Vector a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Vector a)

Since: quickcheck-instances-0.3.33

Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

coarbitrary ∷ Vector a → Gen b → Gen b Source #

(Unbox a, CoArbitrary a) ⇒ CoArbitrary (Vector a) 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

coarbitrary ∷ Vector a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Maybe a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Maybe a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary (Solo a) 
Instance details

Defined in Test.QuickCheck.Instances.Solo

Methods

coarbitrary ∷ Solo a → Gen b → Gen b Source #

CoArbitrary a ⇒ CoArbitrary [a] 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ [a] → Gen b → Gen b Source #

(Ix i, IArray UArray a, CoArbitrary i, CoArbitrary a) ⇒ CoArbitrary (UArray i a) 
Instance details

Defined in Test.QuickCheck.Instances.Array

Methods

coarbitrary ∷ UArray i a → Gen b → Gen b Source #

HasResolution a ⇒ CoArbitrary (Fixed a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Fixed a → Gen b → Gen b Source #

(CoArbitrary k, CoArbitrary v) ⇒ CoArbitrary (Map k v) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Map k v → Gen b → Gen b Source #

(Ix i, CoArbitrary i, CoArbitrary a) ⇒ CoArbitrary (Array i a) 
Instance details

Defined in Test.QuickCheck.Instances.Array

Methods

coarbitrary ∷ Array i a → Gen b → Gen b Source #

(CoArbitrary a, CoArbitrary b) ⇒ CoArbitrary (Either a b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Either a b → Gen b0 → Gen b0 Source #

CoArbitrary (Proxy a) 
Instance details

Defined in Test.QuickCheck.Instances.Tagged

Methods

coarbitrary ∷ Proxy a → Gen b → Gen b Source #

(CoArbitrary a, CoArbitrary b) ⇒ CoArbitrary (Either a b)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

coarbitrary ∷ Either a b → Gen b0 → Gen b0 Source #

(CoArbitrary a, CoArbitrary b) ⇒ CoArbitrary (These a b)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

coarbitrary ∷ These a b → Gen b0 → Gen b0 Source #

(CoArbitrary a, CoArbitrary b) ⇒ CoArbitrary (Pair a b)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

coarbitrary ∷ Pair a b → Gen b0 → Gen b0 Source #

(CoArbitrary a, CoArbitrary b) ⇒ CoArbitrary (These a b)

Since: quickcheck-instances-0.3.23

Instance details

Defined in Test.QuickCheck.Instances.These

Methods

coarbitrary ∷ These a b → Gen b0 → Gen b0 Source #

(CoArbitrary k, CoArbitrary v) ⇒ CoArbitrary (HashMap k v) 
Instance details

Defined in Test.QuickCheck.Instances.UnorderedContainers

Methods

coarbitrary ∷ HashMap k v → Gen b → Gen b Source #

(CoArbitrary a, CoArbitrary b) ⇒ CoArbitrary (a, b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ (a, b) → Gen b0 → Gen b0 Source #

(Arbitrary a, CoArbitrary b) ⇒ CoArbitrary (a → b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ (a → b) → Gen b0 → Gen b0 Source #

CoArbitrary a ⇒ CoArbitrary (Const a b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Const a b → Gen b0 → Gen b0 Source #

CoArbitrary (f a) ⇒ CoArbitrary (Alt f a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Alt f a → Gen b → Gen b Source #

CoArbitrary b ⇒ CoArbitrary (Tagged a b) 
Instance details

Defined in Test.QuickCheck.Instances.Tagged

Methods

coarbitrary ∷ Tagged a b → Gen b0 → Gen b0 Source #

CoArbitrary a ⇒ CoArbitrary (Constant a b) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ Constant a b → Gen b0 → Gen b0 Source #

(CoArbitrary a, CoArbitrary b, CoArbitrary c) ⇒ CoArbitrary (a, b, c) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ (a, b, c) → Gen b0 → Gen b0 Source #

(CoArbitrary a, CoArbitrary b, CoArbitrary c, CoArbitrary d) ⇒ CoArbitrary (a, b, c, d) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ (a, b, c, d) → Gen b0 → Gen b0 Source #

(CoArbitrary a, CoArbitrary b, CoArbitrary c, CoArbitrary d, CoArbitrary e) ⇒ CoArbitrary (a, b, c, d, e) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

coarbitrary ∷ (a, b, c, d, e) → Gen b0 → Gen b0 Source #

class Arbitrary2 (f ∷ Type → Type → Type) where Source #

Lifting of the Arbitrary class to binary type constructors.

Minimal complete definition

liftArbitrary2

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (f a b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → f a b → [f a b] Source #

Instances

Instances details
Arbitrary2 Either 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (Either a b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → Either a b → [Either a b] Source #

Arbitrary2 Either

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (Either a b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → Either a b → [Either a b] Source #

Arbitrary2 These

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (These a b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → These a b → [These a b] Source #

Arbitrary2 Pair

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (Pair a b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → Pair a b → [Pair a b] Source #

Arbitrary2 These

Since: quickcheck-instances-0.3.23

Instance details

Defined in Test.QuickCheck.Instances.These

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (These a b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → These a b → [These a b] Source #

Arbitrary2 (,) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (a, b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → (a, b) → [(a, b)] Source #

Arbitrary2 (Const ∷ Type → Type → Type) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (Const a b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → Const a b → [Const a b] Source #

Arbitrary2 (Tagged ∷ Type → Type → Type) 
Instance details

Defined in Test.QuickCheck.Instances.Tagged

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (Tagged a b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → Tagged a b → [Tagged a b] Source #

Arbitrary2 (Constant ∷ Type → Type → Type) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary2 ∷ Gen a → Gen b → Gen (Constant a b) Source #

liftShrink2 ∷ (a → [a]) → (b → [b]) → Constant a b → [Constant a b] Source #

class Arbitrary1 (f ∷ Type → Type) where Source #

Lifting of the Arbitrary class to unary type constructors.

Minimal complete definition

liftArbitrary

Methods

liftArbitrary ∷ Gen a → Gen (f a) Source #

liftShrink ∷ (a → [a]) → f a → [f a] Source #

Instances

Instances details
Arbitrary1 KeyMap

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.KeyMap

Methods

liftArbitrary ∷ Gen a → Gen (KeyMap a) Source #

liftShrink ∷ (a → [a]) → KeyMap a → [KeyMap a] Source #

Arbitrary1 First 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

liftArbitrary ∷ Gen a → Gen (First a) Source #

liftShrink ∷ (a → [a]) → First a → [First a] Source #

Arbitrary1 Last 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

liftArbitrary ∷ Gen a → Gen (Last a) Source #

liftShrink ∷ (a → [a]) → Last a → [Last a] Source #

Arbitrary1 Max 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

liftArbitrary ∷ Gen a → Gen (Max a) Source #

liftShrink ∷ (a → [a]) → Max a → [Max a] Source #

Arbitrary1 Min 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

liftArbitrary ∷ Gen a → Gen (Min a) Source #

liftShrink ∷ (a → [a]) → Min a → [Min a] Source #

Arbitrary1 WrappedMonoid 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

liftArbitrary ∷ Gen a → Gen (WrappedMonoid a) Source #

liftShrink ∷ (a → [a]) → WrappedMonoid a → [WrappedMonoid a] Source #

Arbitrary1 IntMap

WARNING: The same warning as for Arbitrary (Set a) applies here.

Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen (IntMap a) Source #

liftShrink ∷ (a → [a]) → IntMap a → [IntMap a] Source #

Arbitrary1 Seq 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen (Seq a) Source #

liftShrink ∷ (a → [a]) → Seq a → [Seq a] Source #

Arbitrary1 Tree 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen (Tree a) Source #

liftShrink ∷ (a → [a]) → Tree a → [Tree a] Source #

Arbitrary1 NonEmpty 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

liftArbitrary ∷ Gen a → Gen (NonEmpty a) Source #

liftShrink ∷ (a → [a]) → NonEmpty a → [NonEmpty a] Source #

Arbitrary1 Identity 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen (Identity a) Source #

liftShrink ∷ (a → [a]) → Identity a → [Identity a] Source #

Arbitrary1 ZipList 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen (ZipList a) Source #

liftShrink ∷ (a → [a]) → ZipList a → [ZipList a] Source #

Arbitrary1 Maybe

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

liftArbitrary ∷ Gen a → Gen (Maybe a) Source #

liftShrink ∷ (a → [a]) → Maybe a → [Maybe a] Source #

Arbitrary1 Vector 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

liftArbitrary ∷ Gen a → Gen (Vector a) Source #

liftShrink ∷ (a → [a]) → Vector a → [Vector a] Source #

Arbitrary1 Maybe 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen (Maybe a) Source #

liftShrink ∷ (a → [a]) → Maybe a → [Maybe a] Source #

Arbitrary1 Solo 
Instance details

Defined in Test.QuickCheck.Instances.Solo

Methods

liftArbitrary ∷ Gen a → Gen (Solo a) Source #

liftShrink ∷ (a → [a]) → Solo a → [Solo a] Source #

Arbitrary1 [] 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen [a] Source #

liftShrink ∷ (a → [a]) → [a] → [[a]] Source #

(Ord k, Arbitrary k) ⇒ Arbitrary1 (Map k) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen (Map k a) Source #

liftShrink ∷ (a → [a]) → Map k a → [Map k a] Source #

(Num i, Ix i, Arbitrary i) ⇒ Arbitrary1 (Array i) 
Instance details

Defined in Test.QuickCheck.Instances.Array

Methods

liftArbitrary ∷ Gen a → Gen (Array i a) Source #

liftShrink ∷ (a → [a]) → Array i a → [Array i a] Source #

Arbitrary a ⇒ Arbitrary1 (Either a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a0 → Gen (Either a a0) Source #

liftShrink ∷ (a0 → [a0]) → Either a a0 → [Either a a0] Source #

Arbitrary1 (Proxy ∷ Type → Type) 
Instance details

Defined in Test.QuickCheck.Instances.Tagged

Methods

liftArbitrary ∷ Gen a → Gen (Proxy a) Source #

liftShrink ∷ (a → [a]) → Proxy a → [Proxy a] Source #

Arbitrary a ⇒ Arbitrary1 (Either a)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

liftArbitrary ∷ Gen a0 → Gen (Either a a0) Source #

liftShrink ∷ (a0 → [a0]) → Either a a0 → [Either a a0] Source #

Arbitrary a ⇒ Arbitrary1 (These a)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

liftArbitrary ∷ Gen a0 → Gen (These a a0) Source #

liftShrink ∷ (a0 → [a0]) → These a a0 → [These a a0] Source #

Arbitrary a ⇒ Arbitrary1 (Pair a)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

liftArbitrary ∷ Gen a0 → Gen (Pair a a0) Source #

liftShrink ∷ (a0 → [a0]) → Pair a a0 → [Pair a a0] Source #

Arbitrary a ⇒ Arbitrary1 (These a)

Since: quickcheck-instances-0.3.23

Instance details

Defined in Test.QuickCheck.Instances.These

Methods

liftArbitrary ∷ Gen a0 → Gen (These a a0) Source #

liftShrink ∷ (a0 → [a0]) → These a a0 → [These a a0] Source #

Arbitrary1 f ⇒ Arbitrary1 (Lift f) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

liftArbitrary ∷ Gen a → Gen (Lift f a) Source #

liftShrink ∷ (a → [a]) → Lift f a → [Lift f a] Source #

Arbitrary1 m ⇒ Arbitrary1 (MaybeT m) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

liftArbitrary ∷ Gen a → Gen (MaybeT m a) Source #

liftShrink ∷ (a → [a]) → MaybeT m a → [MaybeT m a] Source #

(Ord k, Arbitrary k) ⇒ Arbitrary1 (OMap k) 
Instance details

Defined in Data.TreeDiff.OMap

Methods

liftArbitrary ∷ Gen a → Gen (OMap k a) Source #

liftShrink ∷ (a → [a]) → OMap k a → [OMap k a] Source #

(Hashable k, Eq k, Arbitrary k) ⇒ Arbitrary1 (HashMap k) 
Instance details

Defined in Test.QuickCheck.Instances.UnorderedContainers

Methods

liftArbitrary ∷ Gen a → Gen (HashMap k a) Source #

liftShrink ∷ (a → [a]) → HashMap k a → [HashMap k a] Source #

Arbitrary a ⇒ Arbitrary1 ((,) a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a0 → Gen (a, a0) Source #

liftShrink ∷ (a0 → [a0]) → (a, a0) → [(a, a0)] Source #

Arbitrary a ⇒ Arbitrary1 (Const a ∷ Type → Type) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a0 → Gen (Const a a0) Source #

liftShrink ∷ (a0 → [a0]) → Const a a0 → [Const a a0] Source #

Arbitrary1 (Tagged a) 
Instance details

Defined in Test.QuickCheck.Instances.Tagged

Methods

liftArbitrary ∷ Gen a0 → Gen (Tagged a a0) Source #

liftShrink ∷ (a0 → [a0]) → Tagged a a0 → [Tagged a a0] Source #

(Arbitrary1 f, Arbitrary1 g) ⇒ Arbitrary1 (These1 f g)

Since: quickcheck-instances-0.3.23

Instance details

Defined in Test.QuickCheck.Instances.These

Methods

liftArbitrary ∷ Gen a → Gen (These1 f g a) Source #

liftShrink ∷ (a → [a]) → These1 f g a → [These1 f g a] Source #

Arbitrary1 f ⇒ Arbitrary1 (Backwards f) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

liftArbitrary ∷ Gen a → Gen (Backwards f a) Source #

liftShrink ∷ (a → [a]) → Backwards f a → [Backwards f a] Source #

Arbitrary a ⇒ Arbitrary1 (Constant a ∷ Type → Type) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a0 → Gen (Constant a a0) Source #

liftShrink ∷ (a0 → [a0]) → Constant a a0 → [Constant a a0] Source #

Arbitrary1 f ⇒ Arbitrary1 (Reverse f) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

liftArbitrary ∷ Gen a → Gen (Reverse f a) Source #

liftShrink ∷ (a → [a]) → Reverse f a → [Reverse f a] Source #

(Arbitrary1 f, Arbitrary1 g) ⇒ Arbitrary1 (Product f g) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen (Product f g a) Source #

liftShrink ∷ (a → [a]) → Product f g a → [Product f g a] Source #

(Arbitrary1 f, Arbitrary1 g) ⇒ Arbitrary1 (Sum f g) 
Instance details

Defined in Test.QuickCheck.Instances.Transformer

Methods

liftArbitrary ∷ Gen a → Gen (Sum f g a) Source #

liftShrink ∷ (a → [a]) → Sum f g a → [Sum f g a] Source #

CoArbitrary a ⇒ Arbitrary1 ((->) a) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a0 → Gen (a -> a0) Source #

liftShrink ∷ (a0 → [a0]) → (a -> a0) → [a -> a0] Source #

(Arbitrary1 f, Arbitrary1 g) ⇒ Arbitrary1 (Compose f g) 
Instance details

Defined in Test.QuickCheck.Arbitrary

Methods

liftArbitrary ∷ Gen a → Gen (Compose f g a) Source #

liftShrink ∷ (a → [a]) → Compose f g a → [Compose f g a] Source #

arbitrary1 ∷ (Arbitrary1 f, Arbitrary a) ⇒ Gen (f a) Source #

shrink1 ∷ (Arbitrary1 f, Arbitrary a) ⇒ f a → [f a] Source #

arbitrary2 ∷ (Arbitrary2 f, Arbitrary a, Arbitrary b) ⇒ Gen (f a b) Source #

shrink2 ∷ (Arbitrary2 f, Arbitrary a, Arbitrary b) ⇒ f a b → [f a b] Source #

genericShrink ∷ (Generic a, RecursivelyShrink (Rep a), GSubterms (Rep a) a) ⇒ a → [a] Source #

Shrink a term to any of its immediate subterms, and also recursively shrink all subterms.

recursivelyShrink ∷ (Generic a, RecursivelyShrink (Rep a)) ⇒ a → [a] Source #

Recursively shrink all immediate subterms.

subterms ∷ (Generic a, GSubterms (Rep a) a) ⇒ a → [a] Source #

All immediate subterms of a term.

shrinkList ∷ (a → [a]) → [a] → [[a]] Source #

Shrink a list of values given a shrinking function for individual values.

applyArbitrary2 ∷ (Arbitrary a, Arbitrary b) ⇒ (a → b → r) → Gen r Source #

Apply a binary function to random arguments.

applyArbitrary3 ∷ (Arbitrary a, Arbitrary b, Arbitrary c) ⇒ (a → b → c → r) → Gen r Source #

Apply a ternary function to random arguments.

applyArbitrary4 ∷ (Arbitrary a, Arbitrary b, Arbitrary c, Arbitrary d) ⇒ (a → b → c → d → r) → Gen r Source #

Apply a function of arity 4 to random arguments.

arbitrarySizedIntegral ∷ Integral a ⇒ Gen a Source #

Generates an integral number. The number can be positive or negative and its maximum absolute value depends on the size parameter.

arbitrarySizedNatural ∷ Integral a ⇒ Gen a Source #

Generates a natural number. The number's maximum value depends on the size parameter.

arbitrarySizedFractional ∷ Fractional a ⇒ Gen a Source #

Uniformly generates a fractional number. The number can be positive or negative and its maximum absolute value depends on the size parameter.

arbitraryBoundedIntegral ∷ (Bounded a, Integral a) ⇒ Gen a Source #

Generates an integral number. The number is chosen uniformly from the entire range of the type. You may want to use arbitrarySizedBoundedIntegral instead.

arbitraryBoundedRandom ∷ (Bounded a, Random a) ⇒ Gen a Source #

Generates an element of a bounded type. The element is chosen from the entire range of the type.

arbitraryBoundedEnum ∷ (Bounded a, Enum a) ⇒ Gen a Source #

Generates an element of a bounded enumeration.

arbitrarySizedBoundedIntegral ∷ (Bounded a, Integral a) ⇒ Gen a Source #

Generates an integral number from a bounded domain. The number is chosen from the entire range of the type, but small numbers are generated more often than big numbers. Inspired by demands from Phil Wadler.

arbitraryUnicodeChar ∷ Gen Char Source #

Generates any Unicode character (but not a surrogate)

arbitraryASCIIChar ∷ Gen Char Source #

Generates a random ASCII character (0-127).

arbitraryPrintableChar ∷ Gen Char Source #

Generates a printable Unicode character.

shrinkNothing ∷ a → [a] Source #

Returns no shrinking alternatives.

shrinkMap ∷ Arbitrary a ⇒ (a → b) → (b → a) → b → [b] Source #

Map a shrink function to another domain. This is handy if your data type has special invariants, but is almost isomorphic to some other type.

shrinkOrderedList :: (Ord a, Arbitrary a) => [a] -> [[a]]
shrinkOrderedList = shrinkMap sort id

shrinkSet :: (Ord a, Arbitrary a) => Set a -> [Set a]
shrinkSet = shrinkMap fromList toList

shrinkMapBy ∷ (a → b) → (b → a) → (a → [a]) → b → [b] Source #

Non-overloaded version of shrinkMap.

shrinkIntegral ∷ Integral a ⇒ a → [a] Source #

Shrink an integral number.

shrinkBoundedEnum ∷ (Bounded a, Enum a, Eq a) ⇒ a → [a] Source #

Shrink an element of a bounded enumeration.

Example

Expand
data MyEnum = E0 | E1 | E2 | E3 | E4 | E5 | E6 | E7 | E8 | E9
   deriving (Bounded, Enum, Eq, Ord, Show)
>>> shrinkBoundedEnum E9
[E0,E5,E7,E8]
>>> shrinkBoundedEnum E5
[E0,E3,E4]
>>> shrinkBoundedEnum E0
[]

shrinkRealFrac ∷ RealFrac a ⇒ a → [a] Source #

Shrink a fraction, preferring numbers with smaller numerators or denominators. See also shrinkDecimal.

shrinkDecimal ∷ RealFrac a ⇒ a → [a] Source #

Shrink a real number, preferring numbers with shorter decimal representations. See also shrinkRealFrac.

genericCoarbitrary ∷ (Generic a, GCoArbitrary (Rep a)) ⇒ a → Gen b → Gen b Source #

Generic CoArbitrary implementation.

(><) ∷ (Gen a → Gen a) → (Gen a → Gen a) → Gen a → Gen a Source #

Combine two generator perturbing functions, for example the results of calls to variant or coarbitrary.

coarbitraryIntegral ∷ Integral a ⇒ a → Gen b → Gen b Source #

A coarbitrary implementation for integral numbers.

coarbitraryReal ∷ Real a ⇒ a → Gen b → Gen b Source #

A coarbitrary implementation for real numbers.

coarbitraryShow ∷ Show a ⇒ a → Gen b → Gen b Source #

coarbitrary helper for lazy people :-).

coarbitraryEnum ∷ Enum a ⇒ a → Gen b → Gen b Source #

A coarbitrary implementation for enums.

orderedList ∷ (Ord a, Arbitrary a) ⇒ Gen [a] Source #

Generates an ordered list.

infiniteList ∷ Arbitrary a ⇒ Gen [a] Source #

Generates an infinite list.

newtype PrintableString Source #

PrintableString: generates a printable unicode String. The string will not contain surrogate pairs.

Constructors

PrintableString 

newtype UnicodeString Source #

UnicodeString: generates a unicode String. The string will not contain surrogate pairs.

Constructors

UnicodeString 

newtype ASCIIString Source #

ASCIIString: generates an ASCII string.

Constructors

ASCIIString 

class ShrinkState s a where Source #

Methods

shrinkInit ∷ a → s Source #

shrinkState ∷ a → s → [(a, s)] Source #

data Shrinking s a Source #

Shrinking _ x: allows for maintaining a state during shrinking.

Constructors

Shrinking s a 

Instances

Instances details
Functor (Shrinking s) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → Shrinking s a → Shrinking s b #

(<$) ∷ a → Shrinking s b → Shrinking s a #

(Arbitrary a, ShrinkState s a) ⇒ Arbitrary (Shrinking s a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Shrinking s a) Source #

shrink ∷ Shrinking s a → [Shrinking s a] Source #

Show a ⇒ Show (Shrinking s a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → Shrinking s a → ShowS #

show ∷ Shrinking s a → String #

showList ∷ [Shrinking s a] → ShowS #

data Smart a Source #

Smart _ x: tries a different order when shrinking.

Constructors

Smart Int a 

Instances

Instances details
Functor Smart 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → Smart a → Smart b #

(<$) ∷ a → Smart b → Smart a #

Arbitrary a ⇒ Arbitrary (Smart a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Smart a) Source #

shrink ∷ Smart a → [Smart a] Source #

Show a ⇒ Show (Smart a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → Smart a → ShowS #

show ∷ Smart a → String #

showList ∷ [Smart a] → ShowS #

newtype Shrink2 a Source #

Shrink2 x: allows 2 shrinking steps at the same time when shrinking x

Constructors

Shrink2 

Fields

Instances

Instances details
Functor Shrink2 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → Shrink2 a → Shrink2 b #

(<$) ∷ a → Shrink2 b → Shrink2 a #

Arbitrary a ⇒ Arbitrary (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Shrink2 a) Source #

shrink ∷ Shrink2 a → [Shrink2 a] Source #

Enum a ⇒ Enum (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

succ ∷ Shrink2 a → Shrink2 a #

pred ∷ Shrink2 a → Shrink2 a #

toEnum ∷ Int → Shrink2 a #

fromEnum ∷ Shrink2 a → Int #

enumFrom ∷ Shrink2 a → [Shrink2 a] #

enumFromThen ∷ Shrink2 a → Shrink2 a → [Shrink2 a] #

enumFromTo ∷ Shrink2 a → Shrink2 a → [Shrink2 a] #

enumFromThenTo ∷ Shrink2 a → Shrink2 a → Shrink2 a → [Shrink2 a] #

Num a ⇒ Num (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(+) ∷ Shrink2 a → Shrink2 a → Shrink2 a #

(-) ∷ Shrink2 a → Shrink2 a → Shrink2 a #

(*) ∷ Shrink2 a → Shrink2 a → Shrink2 a #

negate ∷ Shrink2 a → Shrink2 a #

abs ∷ Shrink2 a → Shrink2 a #

signum ∷ Shrink2 a → Shrink2 a #

fromInteger ∷ Integer → Shrink2 a #

Read a ⇒ Read (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Integral a ⇒ Integral (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

quot ∷ Shrink2 a → Shrink2 a → Shrink2 a #

rem ∷ Shrink2 a → Shrink2 a → Shrink2 a #

div ∷ Shrink2 a → Shrink2 a → Shrink2 a #

mod ∷ Shrink2 a → Shrink2 a → Shrink2 a #

quotRem ∷ Shrink2 a → Shrink2 a → (Shrink2 a, Shrink2 a) #

divMod ∷ Shrink2 a → Shrink2 a → (Shrink2 a, Shrink2 a) #

toInteger ∷ Shrink2 a → Integer #

Real a ⇒ Real (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

toRational ∷ Shrink2 a → Rational #

Show a ⇒ Show (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → Shrink2 a → ShowS #

show ∷ Shrink2 a → String #

showList ∷ [Shrink2 a] → ShowS #

Eq a ⇒ Eq (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ Shrink2 a → Shrink2 a → Bool #

(/=) ∷ Shrink2 a → Shrink2 a → Bool #

Ord a ⇒ Ord (Shrink2 a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

compare ∷ Shrink2 a → Shrink2 a → Ordering #

(<) ∷ Shrink2 a → Shrink2 a → Bool #

(<=) ∷ Shrink2 a → Shrink2 a → Bool #

(>) ∷ Shrink2 a → Shrink2 a → Bool #

(>=) ∷ Shrink2 a → Shrink2 a → Bool #

max ∷ Shrink2 a → Shrink2 a → Shrink2 a #

min ∷ Shrink2 a → Shrink2 a → Shrink2 a #

newtype Small a Source #

Small x: generates values of x drawn from a small range. The opposite of Large.

Constructors

Small 

Fields

Instances

Instances details
Functor Small 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → Small a → Small b #

(<$) ∷ a → Small b → Small a #

Integral a ⇒ Arbitrary (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Small a) Source #

shrink ∷ Small a → [Small a] Source #

Enum a ⇒ Enum (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

succ ∷ Small a → Small a #

pred ∷ Small a → Small a #

toEnum ∷ Int → Small a #

fromEnum ∷ Small a → Int #

enumFrom ∷ Small a → [Small a] #

enumFromThen ∷ Small a → Small a → [Small a] #

enumFromTo ∷ Small a → Small a → [Small a] #

enumFromThenTo ∷ Small a → Small a → Small a → [Small a] #

Ix a ⇒ Ix (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

range ∷ (Small a, Small a) → [Small a] #

index ∷ (Small a, Small a) → Small a → Int #

unsafeIndex ∷ (Small a, Small a) → Small a → Int #

inRange ∷ (Small a, Small a) → Small a → Bool #

rangeSize ∷ (Small a, Small a) → Int #

unsafeRangeSize ∷ (Small a, Small a) → Int #

Num a ⇒ Num (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(+) ∷ Small a → Small a → Small a #

(-) ∷ Small a → Small a → Small a #

(*) ∷ Small a → Small a → Small a #

negate ∷ Small a → Small a #

abs ∷ Small a → Small a #

signum ∷ Small a → Small a #

fromInteger ∷ Integer → Small a #

Read a ⇒ Read (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Integral a ⇒ Integral (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

quot ∷ Small a → Small a → Small a #

rem ∷ Small a → Small a → Small a #

div ∷ Small a → Small a → Small a #

mod ∷ Small a → Small a → Small a #

quotRem ∷ Small a → Small a → (Small a, Small a) #

divMod ∷ Small a → Small a → (Small a, Small a) #

toInteger ∷ Small a → Integer #

Real a ⇒ Real (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

toRational ∷ Small a → Rational #

Show a ⇒ Show (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → Small a → ShowS #

show ∷ Small a → String #

showList ∷ [Small a] → ShowS #

Eq a ⇒ Eq (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ Small a → Small a → Bool #

(/=) ∷ Small a → Small a → Bool #

Ord a ⇒ Ord (Small a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

compare ∷ Small a → Small a → Ordering #

(<) ∷ Small a → Small a → Bool #

(<=) ∷ Small a → Small a → Bool #

(>) ∷ Small a → Small a → Bool #

(>=) ∷ Small a → Small a → Bool #

max ∷ Small a → Small a → Small a #

min ∷ Small a → Small a → Small a #

newtype Large a Source #

Large x: by default, QuickCheck generates Ints drawn from a small range. Large Int gives you values drawn from the entire range instead.

Constructors

Large 

Fields

Instances

Instances details
Functor Large 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → Large a → Large b #

(<$) ∷ a → Large b → Large a #

(Integral a, Bounded a) ⇒ Arbitrary (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Large a) Source #

shrink ∷ Large a → [Large a] Source #

Enum a ⇒ Enum (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

succ ∷ Large a → Large a #

pred ∷ Large a → Large a #

toEnum ∷ Int → Large a #

fromEnum ∷ Large a → Int #

enumFrom ∷ Large a → [Large a] #

enumFromThen ∷ Large a → Large a → [Large a] #

enumFromTo ∷ Large a → Large a → [Large a] #

enumFromThenTo ∷ Large a → Large a → Large a → [Large a] #

Ix a ⇒ Ix (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

range ∷ (Large a, Large a) → [Large a] #

index ∷ (Large a, Large a) → Large a → Int #

unsafeIndex ∷ (Large a, Large a) → Large a → Int #

inRange ∷ (Large a, Large a) → Large a → Bool #

rangeSize ∷ (Large a, Large a) → Int #

unsafeRangeSize ∷ (Large a, Large a) → Int #

Num a ⇒ Num (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(+) ∷ Large a → Large a → Large a #

(-) ∷ Large a → Large a → Large a #

(*) ∷ Large a → Large a → Large a #

negate ∷ Large a → Large a #

abs ∷ Large a → Large a #

signum ∷ Large a → Large a #

fromInteger ∷ Integer → Large a #

Read a ⇒ Read (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Integral a ⇒ Integral (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

quot ∷ Large a → Large a → Large a #

rem ∷ Large a → Large a → Large a #

div ∷ Large a → Large a → Large a #

mod ∷ Large a → Large a → Large a #

quotRem ∷ Large a → Large a → (Large a, Large a) #

divMod ∷ Large a → Large a → (Large a, Large a) #

toInteger ∷ Large a → Integer #

Real a ⇒ Real (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

toRational ∷ Large a → Rational #

Show a ⇒ Show (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → Large a → ShowS #

show ∷ Large a → String #

showList ∷ [Large a] → ShowS #

Eq a ⇒ Eq (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ Large a → Large a → Bool #

(/=) ∷ Large a → Large a → Bool #

Ord a ⇒ Ord (Large a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

compare ∷ Large a → Large a → Ordering #

(<) ∷ Large a → Large a → Bool #

(<=) ∷ Large a → Large a → Bool #

(>) ∷ Large a → Large a → Bool #

(>=) ∷ Large a → Large a → Bool #

max ∷ Large a → Large a → Large a #

min ∷ Large a → Large a → Large a #

newtype NonPositive a Source #

NonPositive x: guarantees that x <= 0.

Constructors

NonPositive 

Fields

Instances

Instances details
Functor NonPositive 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → NonPositive a → NonPositive b #

(<$) ∷ a → NonPositive b → NonPositive a #

(Num a, Ord a, Arbitrary a) ⇒ Arbitrary (NonPositive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Enum a ⇒ Enum (NonPositive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Read a ⇒ Read (NonPositive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Show a ⇒ Show (NonPositive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → NonPositive a → ShowS #

show ∷ NonPositive a → String #

showList ∷ [NonPositive a] → ShowS #

Eq a ⇒ Eq (NonPositive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ NonPositive a → NonPositive a → Bool #

(/=) ∷ NonPositive a → NonPositive a → Bool #

Ord a ⇒ Ord (NonPositive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

newtype NonNegative a Source #

NonNegative x: guarantees that x >= 0.

Constructors

NonNegative 

Fields

Instances

Instances details
Functor NonNegative 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → NonNegative a → NonNegative b #

(<$) ∷ a → NonNegative b → NonNegative a #

(Num a, Ord a, Arbitrary a) ⇒ Arbitrary (NonNegative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Enum a ⇒ Enum (NonNegative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Read a ⇒ Read (NonNegative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Show a ⇒ Show (NonNegative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → NonNegative a → ShowS #

show ∷ NonNegative a → String #

showList ∷ [NonNegative a] → ShowS #

Eq a ⇒ Eq (NonNegative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ NonNegative a → NonNegative a → Bool #

(/=) ∷ NonNegative a → NonNegative a → Bool #

Ord a ⇒ Ord (NonNegative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

newtype Negative a Source #

Negative x: guarantees that x < 0.

Constructors

Negative 

Fields

Instances

Instances details
Functor Negative 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → Negative a → Negative b #

(<$) ∷ a → Negative b → Negative a #

(Num a, Ord a, Arbitrary a) ⇒ Arbitrary (Negative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Enum a ⇒ Enum (Negative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

succ ∷ Negative a → Negative a #

pred ∷ Negative a → Negative a #

toEnum ∷ Int → Negative a #

fromEnum ∷ Negative a → Int #

enumFrom ∷ Negative a → [Negative a] #

enumFromThen ∷ Negative a → Negative a → [Negative a] #

enumFromTo ∷ Negative a → Negative a → [Negative a] #

enumFromThenTo ∷ Negative a → Negative a → Negative a → [Negative a] #

Read a ⇒ Read (Negative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Show a ⇒ Show (Negative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → Negative a → ShowS #

show ∷ Negative a → String #

showList ∷ [Negative a] → ShowS #

Eq a ⇒ Eq (Negative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ Negative a → Negative a → Bool #

(/=) ∷ Negative a → Negative a → Bool #

Ord a ⇒ Ord (Negative a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

compare ∷ Negative a → Negative a → Ordering #

(<) ∷ Negative a → Negative a → Bool #

(<=) ∷ Negative a → Negative a → Bool #

(>) ∷ Negative a → Negative a → Bool #

(>=) ∷ Negative a → Negative a → Bool #

max ∷ Negative a → Negative a → Negative a #

min ∷ Negative a → Negative a → Negative a #

newtype Positive a Source #

Positive x: guarantees that x > 0.

Constructors

Positive 

Fields

Instances

Instances details
Functor Positive 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → Positive a → Positive b #

(<$) ∷ a → Positive b → Positive a #

(Num a, Ord a, Arbitrary a) ⇒ Arbitrary (Positive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Enum a ⇒ Enum (Positive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

succ ∷ Positive a → Positive a #

pred ∷ Positive a → Positive a #

toEnum ∷ Int → Positive a #

fromEnum ∷ Positive a → Int #

enumFrom ∷ Positive a → [Positive a] #

enumFromThen ∷ Positive a → Positive a → [Positive a] #

enumFromTo ∷ Positive a → Positive a → [Positive a] #

enumFromThenTo ∷ Positive a → Positive a → Positive a → [Positive a] #

Read a ⇒ Read (Positive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Show a ⇒ Show (Positive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → Positive a → ShowS #

show ∷ Positive a → String #

showList ∷ [Positive a] → ShowS #

Eq a ⇒ Eq (Positive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ Positive a → Positive a → Bool #

(/=) ∷ Positive a → Positive a → Bool #

Ord a ⇒ Ord (Positive a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

compare ∷ Positive a → Positive a → Ordering #

(<) ∷ Positive a → Positive a → Bool #

(<=) ∷ Positive a → Positive a → Bool #

(>) ∷ Positive a → Positive a → Bool #

(>=) ∷ Positive a → Positive a → Bool #

max ∷ Positive a → Positive a → Positive a #

min ∷ Positive a → Positive a → Positive a #

newtype SortedList a Source #

Sorted xs: guarantees that xs is sorted.

Constructors

Sorted 

Fields

Instances

Instances details
Functor SortedList 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → SortedList a → SortedList b #

(<$) ∷ a → SortedList b → SortedList a #

(Arbitrary a, Ord a) ⇒ Arbitrary (SortedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Read a ⇒ Read (SortedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Show a ⇒ Show (SortedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → SortedList a → ShowS #

show ∷ SortedList a → String #

showList ∷ [SortedList a] → ShowS #

Eq a ⇒ Eq (SortedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ SortedList a → SortedList a → Bool #

(/=) ∷ SortedList a → SortedList a → Bool #

Ord a ⇒ Ord (SortedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

compare ∷ SortedList a → SortedList a → Ordering #

(<) ∷ SortedList a → SortedList a → Bool #

(<=) ∷ SortedList a → SortedList a → Bool #

(>) ∷ SortedList a → SortedList a → Bool #

(>=) ∷ SortedList a → SortedList a → Bool #

max ∷ SortedList a → SortedList a → SortedList a #

min ∷ SortedList a → SortedList a → SortedList a #

data InfiniteList a Source #

InfiniteList xs _: guarantees that xs is an infinite list. When a counterexample is found, only prints the prefix of xs that was used by the program.

Here is a contrived example property:

prop_take_10 :: InfiniteList Char -> Bool
prop_take_10 (InfiniteList xs _) =
  or [ x == 'a' | x <- take 10 xs ]

In the following counterexample, the list must start with "bbbbbbbbbb" but the remaining (infinite) part can contain anything:

>>> quickCheck prop_take_10
*** Failed! Falsified (after 1 test and 14 shrinks):
"bbbbbbbbbb" ++ ...

Constructors

InfiniteList 

Fields

Instances

Instances details
Arbitrary a ⇒ Arbitrary (InfiniteList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Show a ⇒ Show (InfiniteList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → InfiniteList a → ShowS #

show ∷ InfiniteList a → String #

showList ∷ [InfiniteList a] → ShowS #

newtype OrderedList a Source #

Ordered xs: guarantees that xs is ordered.

Constructors

Ordered 

Fields

Instances

Instances details
Functor OrderedList 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → OrderedList a → OrderedList b #

(<$) ∷ a → OrderedList b → OrderedList a #

(Ord a, Arbitrary a) ⇒ Arbitrary (OrderedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Read a ⇒ Read (OrderedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Show a ⇒ Show (OrderedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → OrderedList a → ShowS #

show ∷ OrderedList a → String #

showList ∷ [OrderedList a] → ShowS #

Eq a ⇒ Eq (OrderedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ OrderedList a → OrderedList a → Bool #

(/=) ∷ OrderedList a → OrderedList a → Bool #

Ord a ⇒ Ord (OrderedList a) 
Instance details

Defined in Test.QuickCheck.Modifiers

newtype Fixed a Source #

Fixed x: as x, but will not be shrunk.

Constructors

Fixed 

Fields

Instances

Instances details
Functor Fixed 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → Fixed a → Fixed b #

(<$) ∷ a → Fixed b → Fixed a #

Arbitrary a ⇒ Arbitrary (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Fixed a) Source #

shrink ∷ Fixed a → [Fixed a] Source #

Enum a ⇒ Enum (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

succ ∷ Fixed a → Fixed a #

pred ∷ Fixed a → Fixed a #

toEnum ∷ Int → Fixed a #

fromEnum ∷ Fixed a → Int #

enumFrom ∷ Fixed a → [Fixed a] #

enumFromThen ∷ Fixed a → Fixed a → [Fixed a] #

enumFromTo ∷ Fixed a → Fixed a → [Fixed a] #

enumFromThenTo ∷ Fixed a → Fixed a → Fixed a → [Fixed a] #

Num a ⇒ Num (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(+) ∷ Fixed a → Fixed a → Fixed a #

(-) ∷ Fixed a → Fixed a → Fixed a #

(*) ∷ Fixed a → Fixed a → Fixed a #

negate ∷ Fixed a → Fixed a #

abs ∷ Fixed a → Fixed a #

signum ∷ Fixed a → Fixed a #

fromInteger ∷ Integer → Fixed a #

Read a ⇒ Read (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Integral a ⇒ Integral (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

quot ∷ Fixed a → Fixed a → Fixed a #

rem ∷ Fixed a → Fixed a → Fixed a #

div ∷ Fixed a → Fixed a → Fixed a #

mod ∷ Fixed a → Fixed a → Fixed a #

quotRem ∷ Fixed a → Fixed a → (Fixed a, Fixed a) #

divMod ∷ Fixed a → Fixed a → (Fixed a, Fixed a) #

toInteger ∷ Fixed a → Integer #

Real a ⇒ Real (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

toRational ∷ Fixed a → Rational #

Show a ⇒ Show (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → Fixed a → ShowS #

show ∷ Fixed a → String #

showList ∷ [Fixed a] → ShowS #

Eq a ⇒ Eq (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ Fixed a → Fixed a → Bool #

(/=) ∷ Fixed a → Fixed a → Bool #

Ord a ⇒ Ord (Fixed a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

compare ∷ Fixed a → Fixed a → Ordering #

(<) ∷ Fixed a → Fixed a → Bool #

(<=) ∷ Fixed a → Fixed a → Bool #

(>) ∷ Fixed a → Fixed a → Bool #

(>=) ∷ Fixed a → Fixed a → Bool #

max ∷ Fixed a → Fixed a → Fixed a #

min ∷ Fixed a → Fixed a → Fixed a #

newtype Blind a Source #

Blind x: as x, but x does not have to be in the Show class.

Constructors

Blind 

Fields

Instances

Instances details
Functor Blind 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

fmap ∷ (a → b) → Blind a → Blind b #

(<$) ∷ a → Blind b → Blind a #

Arbitrary a ⇒ Arbitrary (Blind a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

arbitrary ∷ Gen (Blind a) Source #

shrink ∷ Blind a → [Blind a] Source #

Enum a ⇒ Enum (Blind a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

succ ∷ Blind a → Blind a #

pred ∷ Blind a → Blind a #

toEnum ∷ Int → Blind a #

fromEnum ∷ Blind a → Int #

enumFrom ∷ Blind a → [Blind a] #

enumFromThen ∷ Blind a → Blind a → [Blind a] #

enumFromTo ∷ Blind a → Blind a → [Blind a] #

enumFromThenTo ∷ Blind a → Blind a → Blind a → [Blind a] #

Num a ⇒ Num (Blind a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(+) ∷ Blind a → Blind a → Blind a #

(-) ∷ Blind a → Blind a → Blind a #

(*) ∷ Blind a → Blind a → Blind a #

negate ∷ Blind a → Blind a #

abs ∷ Blind a → Blind a #

signum ∷ Blind a → Blind a #

fromInteger ∷ Integer → Blind a #

Integral a ⇒ Integral (Blind a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

quot ∷ Blind a → Blind a → Blind a #

rem ∷ Blind a → Blind a → Blind a #

div ∷ Blind a → Blind a → Blind a #

mod ∷ Blind a → Blind a → Blind a #

quotRem ∷ Blind a → Blind a → (Blind a, Blind a) #

divMod ∷ Blind a → Blind a → (Blind a, Blind a) #

toInteger ∷ Blind a → Integer #

Real a ⇒ Real (Blind a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

toRational ∷ Blind a → Rational #

Show (Blind a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

showsPrec ∷ Int → Blind a → ShowS #

show ∷ Blind a → String #

showList ∷ [Blind a] → ShowS #

Eq a ⇒ Eq (Blind a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

(==) ∷ Blind a → Blind a → Bool #

(/=) ∷ Blind a → Blind a → Bool #

Ord a ⇒ Ord (Blind a) 
Instance details

Defined in Test.QuickCheck.Modifiers

Methods

compare ∷ Blind a → Blind a → Ordering #

(<) ∷ Blind a → Blind a → Bool #

(<=) ∷ Blind a → Blind a → Bool #

(>) ∷ Blind a → Blind a → Bool #

(>=) ∷ Blind a → Blind a → Bool #

max ∷ Blind a → Blind a → Blind a #

min ∷ Blind a → Blind a → Blind a #

class Function a where Source #

The class Function a is used for random generation of showable functions of type a -> b.

There is a default implementation for function, which you can use if your type has structural equality. Otherwise, you can normally use functionMap or functionShow.

Minimal complete definition

Nothing

Methods

function ∷ (a → b) → a :-> b Source #

default function ∷ (Generic a, GFunction (Rep a)) ⇒ (a → b) → a :-> b Source #

Instances

Instances details
Function A 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (A → b) → A :-> b Source #

Function B 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (B → b) → B :-> b Source #

Function C 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (C → b) → C :-> b Source #

Function OrdA 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (OrdA → b) → OrdA :-> b Source #

Function OrdB 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (OrdB → b) → OrdB :-> b Source #

Function OrdC 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (OrdC → b) → OrdC :-> b Source #

Function Key

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.Key

Methods

function ∷ (Key → b) → Key :-> b Source #

Function Value

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.Types.Internal

Methods

function ∷ (Value → b) → Value :-> b Source #

Function ByteArray

Since: quickcheck-instances-0.3.28

Instance details

Defined in Test.QuickCheck.Instances.Primitive

Methods

function ∷ (ByteArray → b) → ByteArray :-> b Source #

Function ByteString64 
Instance details

Defined in Data.ByteString.Base64.Type

Methods

function ∷ (ByteString64 → b) → ByteString64 :-> b Source #

Function ByteString 
Instance details

Defined in Test.QuickCheck.Instances.ByteString

Methods

function ∷ (ByteString → b) → ByteString :-> b Source #

Function ByteString 
Instance details

Defined in Test.QuickCheck.Instances.ByteString

Methods

function ∷ (ByteString → b) → ByteString :-> b Source #

Function ShortByteString 
Instance details

Defined in Test.QuickCheck.Instances.ByteString

Function IntSet 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (IntSet → b) → IntSet :-> b Source #

Function Void

All Void -> a functions are absurd.

Instance details

Defined in Test.QuickCheck.Instances.Void

Methods

function ∷ (Void → b) → Void :-> b Source #

Function All 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (All → b) → All :-> b Source #

Function Any 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Any → b) → Any :-> b Source #

Function Newline 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Newline → b) → Newline :-> b Source #

Function NewlineMode 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (NewlineMode → b) → NewlineMode :-> b Source #

Function Int16 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Int16 → b) → Int16 :-> b Source #

Function Int32 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Int32 → b) → Int32 :-> b Source #

Function Int64 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Int64 → b) → Int64 :-> b Source #

Function Int8 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Int8 → b) → Int8 :-> b Source #

Function Word16 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Word16 → b) → Word16 :-> b Source #

Function Word32 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Word32 → b) → Word32 :-> b Source #

Function Word64 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Word64 → b) → Word64 :-> b Source #

Function Word8 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Word8 → b) → Word8 :-> b Source #

Function Ordering 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Ordering → b) → Ordering :-> b Source #

Function Scientific 
Instance details

Defined in Test.QuickCheck.Instances.Scientific

Methods

function ∷ (Scientific → b) → Scientific :-> b Source #

Function Text 
Instance details

Defined in Test.QuickCheck.Instances.Text

Methods

function ∷ (Text → b) → Text :-> b Source #

Function Text 
Instance details

Defined in Test.QuickCheck.Instances.Text

Methods

function ∷ (Text → b) → Text :-> b Source #

Function ShortText 
Instance details

Defined in Test.QuickCheck.Instances.Text.Short

Methods

function ∷ (ShortText → b) → ShortText :-> b Source #

Function CalendarDiffDays 
Instance details

Defined in Test.QuickCheck.Instances.Time

Function Day 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

function ∷ (Day → b) → Day :-> b Source #

Function Month 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

function ∷ (Month → b) → Month :-> b Source #

Function Quarter 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

function ∷ (Quarter → b) → Quarter :-> b Source #

Function QuarterOfYear 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

function ∷ (QuarterOfYear → b) → QuarterOfYear :-> b Source #

Function DayOfWeek 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

function ∷ (DayOfWeek → b) → DayOfWeek :-> b Source #

Function DiffTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

function ∷ (DiffTime → b) → DiffTime :-> b Source #

Function NominalDiffTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Function SystemTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

function ∷ (SystemTime → b) → SystemTime :-> b Source #

Function UTCTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Methods

function ∷ (UTCTime → b) → UTCTime :-> b Source #

Function CalendarDiffTime 
Instance details

Defined in Test.QuickCheck.Instances.Time

Function UUID 
Instance details

Defined in Test.QuickCheck.Instances.UUID

Methods

function ∷ (UUID → b) → UUID :-> b Source #

Function Integer 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Integer → b) → Integer :-> b Source #

Function Natural 
Instance details

Defined in Test.QuickCheck.Instances.Natural

Methods

function ∷ (Natural → b) → Natural :-> b Source #

Function () 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (() → b) → () :-> b Source #

Function Bool 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Bool → b) → Bool :-> b Source #

Function Char 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Char → b) → Char :-> b Source #

Function Double 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Double → b) → Double :-> b Source #

Function Float 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Float → b) → Float :-> b Source #

Function Int 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Int → b) → Int :-> b Source #

Function Word 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Word → b) → Word :-> b Source #

Function v ⇒ Function (KeyMap v)

Since: aeson-2.0.3.0

Instance details

Defined in Data.Aeson.KeyMap

Methods

function ∷ (KeyMap v → b) → KeyMap v :-> b Source #

(RealFloat a, Function a) ⇒ Function (Complex a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Complex a → b) → Complex a :-> b Source #

Function a ⇒ Function (First a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

function ∷ (First a → b) → First a :-> b Source #

Function a ⇒ Function (Last a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

function ∷ (Last a → b) → Last a :-> b Source #

Function a ⇒ Function (Max a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

function ∷ (Max a → b) → Max a :-> b Source #

Function a ⇒ Function (Min a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

function ∷ (Min a → b) → Min a :-> b Source #

Function a ⇒ Function (WrappedMonoid a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

function ∷ (WrappedMonoid a → b) → WrappedMonoid a :-> b Source #

(FoldCase a, Function a) ⇒ Function (CI a) 
Instance details

Defined in Test.QuickCheck.Instances.CaseInsensitive

Methods

function ∷ (CI a → b) → CI a :-> b Source #

Function a ⇒ Function (IntMap a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (IntMap a → b) → IntMap a :-> b Source #

Function a ⇒ Function (Seq a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Seq a → b) → Seq a :-> b Source #

(Ord a, Function a) ⇒ Function (Set a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Set a → b) → Set a :-> b Source #

Function a ⇒ Function (Tree a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Tree a → b) → Tree a :-> b Source #

Function a ⇒ Function (NonEmpty a) 
Instance details

Defined in Test.QuickCheck.Instances.Semigroup

Methods

function ∷ (NonEmpty a → b) → NonEmpty a :-> b Source #

Function a ⇒ Function (Identity a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Identity a → b) → Identity a :-> b Source #

Function a ⇒ Function (First a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (First a → b) → First a :-> b Source #

Function a ⇒ Function (Last a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Last a → b) → Last a :-> b Source #

Function a ⇒ Function (Dual a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Dual a → b) → Dual a :-> b Source #

Function a ⇒ Function (Product a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Product a → b) → Product a :-> b Source #

Function a ⇒ Function (Sum a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Sum a → b) → Sum a :-> b Source #

(Integral a, Function a) ⇒ Function (Ratio a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Ratio a → b) → Ratio a :-> b Source #

Function a ⇒ Function (Maybe a)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

function ∷ (Maybe a → b) → Maybe a :-> b Source #

(Hashable a, Eq a, Function a) ⇒ Function (HashSet a) 
Instance details

Defined in Test.QuickCheck.Instances.UnorderedContainers

Methods

function ∷ (HashSet a → b) → HashSet a :-> b Source #

Function a ⇒ Function (Vector a) 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

function ∷ (Vector a → b) → Vector a :-> b Source #

(Prim a, Function a) ⇒ Function (Vector a)

Since: quickcheck-instances-0.3.32

Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

function ∷ (Vector a → b) → Vector a :-> b Source #

(Storable a, Function a) ⇒ Function (Vector a) 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

function ∷ (Vector a → b) → Vector a :-> b Source #

Function a ⇒ Function (Vector a)

Since: quickcheck-instances-0.3.33

Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

function ∷ (Vector a → b) → Vector a :-> b Source #

(Unbox a, Function a) ⇒ Function (Vector a) 
Instance details

Defined in Test.QuickCheck.Instances.Vector

Methods

function ∷ (Vector a → b) → Vector a :-> b Source #

Function a ⇒ Function (Maybe a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Maybe a → b) → Maybe a :-> b Source #

Function a ⇒ Function (Solo a) 
Instance details

Defined in Test.QuickCheck.Instances.Solo

Methods

function ∷ (Solo a → b) → Solo a :-> b Source #

Function a ⇒ Function [a] 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ ([a] → b) → [a] :-> b Source #

HasResolution a ⇒ Function (Fixed a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Fixed a → b) → Fixed a :-> b Source #

(Ord a, Function a, Function b) ⇒ Function (Map a b) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Map a b → b0) → Map a b :-> b0 Source #

(Function a, Function b) ⇒ Function (Either a b) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Either a b → b0) → Either a b :-> b0 Source #

Function (Proxy a) 
Instance details

Defined in Test.QuickCheck.Instances.Tagged

Methods

function ∷ (Proxy a → b) → Proxy a :-> b Source #

(Function a, Function b) ⇒ Function (Either a b)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

function ∷ (Either a b → b0) → Either a b :-> b0 Source #

(Function a, Function b) ⇒ Function (These a b)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

function ∷ (These a b → b0) → These a b :-> b0 Source #

(Function a, Function b) ⇒ Function (Pair a b)

Since: quickcheck-instances-0.3.24

Instance details

Defined in Test.QuickCheck.Instances.Strict

Methods

function ∷ (Pair a b → b0) → Pair a b :-> b0 Source #

(Function a, Function b) ⇒ Function (These a b)

Since: quickcheck-instances-0.3.23

Instance details

Defined in Test.QuickCheck.Instances.These

Methods

function ∷ (These a b → b0) → These a b :-> b0 Source #

(Hashable k, Eq k, Function k, Function v) ⇒ Function (HashMap k v) 
Instance details

Defined in Test.QuickCheck.Instances.UnorderedContainers

Methods

function ∷ (HashMap k v → b) → HashMap k v :-> b Source #

(Function a, Function b) ⇒ Function (a, b) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ ((a, b) → b0) → (a, b) :-> b0 Source #

Function a ⇒ Function (Const a b) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Const a b → b0) → Const a b :-> b0 Source #

Function (f a) ⇒ Function (Alt f a) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ (Alt f a → b) → Alt f a :-> b Source #

Function b ⇒ Function (Tagged a b) 
Instance details

Defined in Test.QuickCheck.Instances.Tagged

Methods

function ∷ (Tagged a b → b0) → Tagged a b :-> b0 Source #

(Function a, Function b, Function c) ⇒ Function (a, b, c) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ ((a, b, c) → b0) → (a, b, c) :-> b0 Source #

(Function a, Function b, Function c, Function d) ⇒ Function (a, b, c, d) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ ((a, b, c, d) → b0) → (a, b, c, d) :-> b0 Source #

(Function a, Function b, Function c, Function d, Function e) ⇒ Function (a, b, c, d, e) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ ((a, b, c, d, e) → b0) → (a, b, c, d, e) :-> b0 Source #

(Function a, Function b, Function c, Function d, Function e, Function f) ⇒ Function (a, b, c, d, e, f) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ ((a, b, c, d, e, f) → b0) → (a, b, c, d, e, f) :-> b0 Source #

(Function a, Function b, Function c, Function d, Function e, Function f, Function g) ⇒ Function (a, b, c, d, e, f, g) 
Instance details

Defined in Test.QuickCheck.Function

Methods

function ∷ ((a, b, c, d, e, f, g) → b0) → (a, b, c, d, e, f, g) :-> b0 Source #

pattern Fn3 ∷ (a → b → c → d) → Fun (a, b, c) d Source #

A modifier for testing ternary functions.

pattern Fn2 ∷ (a → b → c) → Fun (a, b) c Source #

A modifier for testing binary functions.

prop_zipWith :: Fun (Int, Bool) Char -> [Int] -> [Bool] -> Bool
prop_zipWith (Fn2 f) xs ys = zipWith f xs ys == [ f x y | (x, y) <- zip xs ys]

pattern Fn ∷ (a → b) → Fun a b Source #

A modifier for testing functions.

prop :: Fun String Integer -> Bool
prop (Fn f) = f "banana" == f "monkey"
           || f "banana" == f "elephant"

functionBoundedEnum ∷ (Eq a, Bounded a, Enum a) ⇒ (a → b) → a :-> b Source #

Provides a Function instance for types with Bounded and Enum. Use only for small types (i.e. not integers): creates the list [minBound..maxBound]!

functionRealFrac ∷ RealFrac a ⇒ (a → b) → a :-> b Source #

Provides a Function instance for types with RealFrac.

functionIntegral ∷ Integral a ⇒ (a → b) → a :-> b Source #

Provides a Function instance for types with Integral.

functionShow ∷ (Show a, Read a) ⇒ (a → c) → a :-> c Source #

Provides a Function instance for types with Show and Read.

functionVoid ∷ (∀ b. void → b) → void :-> c Source #

Provides a Function instance for types isomorphic to Void.

An actual Function Void instance is defined in quickcheck-instances.

functionMap ∷ Function b ⇒ (a → b) → (b → a) → (a → c) → a :-> c Source #

The basic building block for Function instances. Provides a Function instance by mapping to and from a type that already has a Function instance.

applyFun ∷ Fun a b → a → b Source #

Extracts the value of a function.

Fn is the pattern equivalent of this function.

prop :: Fun String Integer -> Bool
prop f = applyFun f "banana" == applyFun f "monkey"
      || applyFun f "banana" == applyFun f "elephant"

applyFun2 ∷ Fun (a, b) c → a → b → c Source #

Extracts the value of a binary function.

Fn2 is the pattern equivalent of this function.

prop_zipWith :: Fun (Int, Bool) Char -> [Int] -> [Bool] -> Bool
prop_zipWith f xs ys = zipWith (applyFun2 f) xs ys == [ applyFun2 f x y | (x, y) <- zip xs ys]

applyFun3 ∷ Fun (a, b, c) d → a → b → c → d Source #

Extracts the value of a ternary function. Fn3 is the pattern equivalent of this function.

data Confidence Source #

The statistical parameters used by checkCoverage.

Constructors

Confidence 

Fields

  • certainty ∷ Integer

    How certain checkCoverage must be before the property fails. If the coverage requirement is met, and the certainty parameter is n, then you should get a false positive at most one in n runs of QuickCheck. The default value is 10^9.

    Lower values will speed up checkCoverage at the cost of false positives.

    If you are using checkCoverage as part of a test suite, you should be careful not to set certainty too low. If you want, say, a 1% chance of a false positive during a project's lifetime, then certainty should be set to at least 100 * m * n, where m is the number of uses of cover in the test suite, and n is the number of times you expect the test suite to be run during the project's lifetime. The default value is chosen to be big enough for most projects.

  • tolerance ∷ Double

    For statistical reasons, checkCoverage will not reject coverage levels that are only slightly below the required levels. If the required level is p then an actual level of tolerance * p will be accepted. The default value is 0.9.

    Lower values will speed up checkCoverage at the cost of not detecting minor coverage violations.

Instances

Instances details
Show Confidence 
Instance details

Defined in Test.QuickCheck.State

pattern Wit ∷ () ⇒ (Typeable a, Show a) ⇒ a → Witness Source #

data Discard Source #

If a property returns Discard, the current test case is discarded, the same as if a precondition was false.

An example is the definition of ==>:

(==>) :: Testable prop => Bool -> prop -> Property
False ==> _ = property Discard
True  ==> p = property p

Constructors

Discard 

Instances

Instances details
Testable Discard 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Discard → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Discard) → Property Source #

data Property Source #

The type of properties.

Instances

Instances details
Testable Property 
Instance details

Defined in Test.QuickCheck.Property

Methods

property ∷ Property → Property Source #

propertyForAllShrinkShow ∷ Gen a → (a → [a]) → (a → [String]) → (a → Property) → Property Source #

Example Property 
Instance details

Defined in Test.Hspec.Core.QuickCheck

Associated Types

type Arg Property 
Instance details

Defined in Test.Hspec.Core.QuickCheck

type Arg Property = ()
Example (a → Property) 
Instance details

Defined in Test.Hspec.Core.QuickCheck

Associated Types

type Arg (a → Property) 
Instance details

Defined in Test.Hspec.Core.QuickCheck

type Arg (a → Property) = a

Methods

evaluateExample ∷ (a → Property) → Params → (ActionWith (Arg (a → Property)) → IO ()) → ProgressCallback → IO Result Source #

type Arg Property 
Instance details

Defined in Test.Hspec.Core.QuickCheck

type Arg Property = ()
type Arg (a → Property) 
Instance details

Defined in Test.Hspec.Core.QuickCheck

type Arg (a → Property) = a

ioProperty ∷ Testable prop ⇒ IO prop → Property Source #

Do I/O inside a property.

Warning: any random values generated inside of the argument to ioProperty will not currently be shrunk. For best results, generate all random values before calling ioProperty, or use idempotentIOProperty if that is safe.

idempotentIOProperty ∷ Testable prop ⇒ IO prop → Property Source #

Do I/O inside a property.

Warning: during shrinking, the I/O may not always be re-executed. Instead, the I/O may be executed once and then its result retained. If this is not acceptable, use ioProperty instead.

mapSize ∷ Testable prop ⇒ (Int → Int) → prop → Property Source #

Adjust the test case size for a property, by transforming it with the given function.

shrinking Source #

Arguments

∷ Testable prop 
⇒ (a → [a])

shrink-like function.

→ a

The original argument

→ (a → prop) 
→ Property 

Shrinks the argument to a property if it fails. Shrinking is done automatically for most types. This function is only needed when you want to override the default behavior.

noShrinking ∷ Testable prop ⇒ prop → Property Source #

Disables shrinking for a property altogether. Only quantification inside the call to noShrinking is affected.

counterexample ∷ Testable prop ⇒ String → prop → Property Source #

Adds the given string to the counterexample if the property fails.

printTestCase ∷ Testable prop ⇒ String → prop → Property Source #

Adds the given string to the counterexample if the property fails.

whenFail ∷ Testable prop ⇒ IO () → prop → Property Source #

Performs an IO action after the last failure of a property.

whenFail' ∷ Testable prop ⇒ IO () → prop → Property Source #

Performs an IO action every time a property fails. Thus, if shrinking is done, this can be used to keep track of the failures along the way.

verbose ∷ Testable prop ⇒ prop → Property Source #

Prints out the generated test case every time the property is tested. Only variables quantified over inside the verbose are printed.

Note: for technical reasons, the test case is printed out after the property is tested. To debug a property that goes into an infinite loop, use within to add a timeout instead.

verboseShrinking ∷ Testable prop ⇒ prop → Property Source #

Prints out the generated test case every time the property fails, including during shrinking. Only variables quantified over inside the verboseShrinking are printed.

Note: for technical reasons, the test case is printed out after the property is tested. To debug a property that goes into an infinite loop, use within to add a timeout instead.

expectFailure ∷ Testable prop ⇒ prop → Property Source #

Indicates that a property is supposed to fail. QuickCheck will report an error if it does not fail.

once ∷ Testable prop ⇒ prop → Property Source #

Modifies a property so that it only will be tested once. Opposite of again.

again ∷ Testable prop ⇒ prop → Property Source #

Modifies a property so that it will be tested repeatedly. Opposite of once.

withMaxSuccess ∷ Testable prop ⇒ Int → prop → Property Source #

Configures how many times a property will be tested.

For example,

quickCheck (withMaxSuccess 1000 p)

will test p up to 1000 times.

withDiscardRatio ∷ Testable prop ⇒ Int → prop → Property Source #

Configures how many times a property is allowed to be discarded before failing.

For example,

quickCheck (withDiscardRatio 10 p)

will allow p to fail up to 10 times per successful test.

withMaxShrinks ∷ Testable prop ⇒ Int → prop → Property Source #

Configure the maximum number of times a property will be shrunk.

For example,

quickCheck (withMaxShrinks 100 p)

will cause p to only attempt 100 shrinks on failure.

withMaxSize ∷ Testable prop ⇒ Int → prop → Property Source #

Configure the maximum size a property will be tested at.

witness ∷ (Typeable a, Show a, Testable prop) ⇒ a → prop → Property Source #

Return a value in the witnesses field of the Result returned by quickCheckResult. Witnesses are returned outer-most first.

In ghci, for example:

>>> [Wit x] <- fmap witnesses . quickCheckResult $ \ x -> witness x $ x == (0 :: Int)
*** Failed! Falsified (after 2 tests):
1
>>> x
1
>>> :t x
x :: Int

checkCoverage ∷ Testable prop ⇒ prop → Property Source #

Check that all coverage requirements defined by cover and coverTable are met, using a statistically sound test, and fail if they are not met.

Ordinarily, a failed coverage check does not cause the property to fail. This is because the coverage requirement is not tested in a statistically sound way. If you use cover to express that a certain value must appear 20% of the time, QuickCheck will warn you if the value only appears in 19 out of 100 test cases - but since the coverage varies randomly, you may have just been unlucky, and there may not be any real problem with your test generation.

When you use checkCoverage, QuickCheck uses a statistical test to account for the role of luck in coverage failures. It will run as many tests as needed until it is sure about whether the coverage requirements are met. If a coverage requirement is not met, the property fails.

Example:

quickCheck (checkCoverage prop_foo)

checkCoverageWith ∷ Testable prop ⇒ Confidence → prop → Property Source #

Check coverage requirements using a custom confidence level. See stdConfidence.

An example of making the statistical test less stringent in order to improve performance:

quickCheck (checkCoverageWith stdConfidence{certainty = 10^6} prop_foo)

stdConfidence ∷ Confidence Source #

The standard parameters used by checkCoverage: certainty = 10^9, tolerance = 0.9. See Confidence for the meaning of the parameters.

label ∷ Testable prop ⇒ String → prop → Property Source #

Attaches a label to a test case. This is used for reporting test case distribution.

For example:

prop_reverse_reverse :: [Int] -> Property
prop_reverse_reverse xs =
  label ("length of input is " ++ show (length xs)) $
    reverse (reverse xs) === xs
>>> quickCheck prop_reverse_reverse
+++ OK, passed 100 tests:
7% length of input is 7
6% length of input is 3
5% length of input is 4
4% length of input is 6
...

Each use of label in your property results in a separate table of test case distribution in the output. If this is not what you want, use tabulate.

collect ∷ (Show a, Testable prop) ⇒ a → prop → Property Source #

Attaches a label to a test case. This is used for reporting test case distribution.

collect x = label (show x)

For example:

prop_reverse_reverse :: [Int] -> Property
prop_reverse_reverse xs =
  collect (length xs) $
    reverse (reverse xs) === xs
>>> quickCheck prop_reverse_reverse
+++ OK, passed 100 tests:
7% 7
6% 3
5% 4
4% 6
...

Each use of collect in your property results in a separate table of test case distribution in the output. If this is not what you want, use tabulate.

classify Source #

Arguments

∷ Testable prop 
⇒ Bool

True if the test case should be labelled.

→ String

Label.

→ prop 
→ Property 

Reports how many test cases satisfy a given condition.

For example:

prop_sorted_sort :: [Int] -> Property
prop_sorted_sort xs =
  sorted xs ==>
  classify (length xs > 1) "non-trivial" $
  sort xs === xs
>>> quickCheck prop_sorted_sort
+++ OK, passed 100 tests (22% non-trivial).

cover Source #

Arguments

∷ Testable prop 
⇒ Double

The required percentage (0-100) of test cases.

→ Bool

True if the test case belongs to the class.

→ String

Label for the test case class.

→ prop 
→ Property 

Checks that at least the given proportion of successful test cases belong to the given class. Discarded tests (i.e. ones with a false precondition) do not affect coverage.

Note: If the coverage check fails, QuickCheck prints out a warning, but the property does not fail. To make the property fail, use checkCoverage.

For example:

prop_sorted_sort :: [Int] -> Property
prop_sorted_sort xs =
  sorted xs ==>
  cover 50 (length xs > 1) "non-trivial" $
  sort xs === xs
>>> quickCheck prop_sorted_sort
+++ OK, passed 100 tests; 135 discarded (26% non-trivial).

Only 26% non-trivial, but expected 50%

tabulate ∷ Testable prop ⇒ String → [String] → prop → Property Source #

Collects information about test case distribution into a table. The arguments to tabulate are the table's name and a list of values associated with the current test case. After testing, QuickCheck prints the frequency of all collected values. The frequencies are expressed as a percentage of the total number of values collected.

You should prefer tabulate to label when each test case is associated with a varying number of values. Here is a (not terribly useful) example, where the test data is a list of integers and we record all values that occur in the list:

prop_sorted_sort :: [Int] -> Property
prop_sorted_sort xs =
  sorted xs ==>
  tabulate "List elements" (map show xs) $
  sort xs === xs
>>> quickCheck prop_sorted_sort
+++ OK, passed 100 tests; 1684 discarded.

List elements (109 in total):
 3.7% 0
 3.7% 17
 3.7% 2
 3.7% 6
 2.8% -6
 2.8% -7

Here is a more useful example. We are testing a chatroom, where the user can log in, log out, or send a message:

data Command = LogIn | LogOut | SendMessage String deriving (Data, Show)
instance Arbitrary Command where ...

There are some restrictions on command sequences; for example, the user must log in before doing anything else. The function valid :: [Command] -> Bool checks that a command sequence is allowed. Our property then has the form:

prop_chatroom :: [Command] -> Property
prop_chatroom cmds =
  valid cmds ==>
    ...

The use of ==> may skew test case distribution. We use collect to see the length of the command sequences, and tabulate to get the frequencies of the individual commands:

prop_chatroom :: [Command] -> Property
prop_chatroom cmds =
  wellFormed cmds LoggedOut ==>
  'collect' (length cmds) $
  'tabulate' "Commands" (map (show . 'Data.Data.toConstr') cmds) $
    ...
>>> quickCheckWith stdArgs{maxDiscardRatio = 1000} prop_chatroom
+++ OK, passed 100 tests; 2775 discarded:
60% 0
20% 1
15% 2
 3% 3
 1% 4
 1% 5

Commands (68 in total):
62% LogIn
22% SendMessage
16% LogOut

coverTable ∷ Testable prop ⇒ String → [(String, Double)] → prop → Property Source #

Checks that the values in a given table appear a certain proportion of the time. A call to coverTable table [(x1, p1), ..., (xn, pn)] asserts that of the values in table, x1 should appear at least p1 percent of the time that table appears, x2 at least p2 percent of the time that table appears, and so on.

Note: If the coverage check fails, QuickCheck prints out a warning, but the property does not fail. To make the property fail, use checkCoverage.

Continuing the example from the tabular combinator...

data Command = LogIn | LogOut | SendMessage String deriving (Data, Show)
prop_chatroom :: [Command] -> Property
prop_chatroom cmds =
  wellFormed cmds LoggedOut ==>
  'tabulate' "Commands" (map (show . 'Data.Data.toConstr') cmds) $
    ...

...we can add a coverage requirement as follows, which checks that LogIn, LogOut and SendMessage each occur at least 25% of the time:

prop_chatroom :: [Command] -> Property
prop_chatroom cmds =
  wellFormed cmds LoggedOut ==>
  coverTable "Commands" [("LogIn", 25), ("LogOut", 25), ("SendMessage", 25)] $
  'tabulate' "Commands" (map (show . 'Data.Data.toConstr') cmds) $
    ... property goes here ...
>>> quickCheck prop_chatroom
+++ OK, passed 100 tests; 2909 discarded:
56% 0
17% 1
10% 2
 6% 3
 5% 4
 3% 5
 3% 7

Commands (111 in total):
51.4% LogIn
30.6% SendMessage
18.0% LogOut

Table 'Commands' had only 18.0% LogOut, but expected 25.0%

within ∷ Testable prop ⇒ Int → prop → Property Source #

Considers a property failed if it does not complete within the given number of microseconds.

Note: if the property times out, variables quantified inside the within will not be printed. Therefore, you should use within only in the body of your property.

Good: prop_foo a b c = within 1000000 ...

Bad: prop_foo = within 1000000 $ \a b c -> ...

Bad: prop_foo a b c = ...; main = quickCheck (within 1000000 prop_foo)

discardAfter ∷ Testable prop ⇒ Int → prop → Property Source #

Discards the test case if it does not complete within the given number of microseconds. This can be useful when testing algorithms that have pathological cases where they run extremely slowly.

forAll ∷ (Show a, Testable prop) ⇒ Gen a → (a → prop) → Property Source #

Explicit universal quantification: uses an explicitly given test case generator.

forAllShow ∷ Testable prop ⇒ Gen a → (a → String) → (a → prop) → Property Source #

Like forAll, but with an explicitly given show function.

forAllBlind ∷ Testable prop ⇒ Gen a → (a → prop) → Property Source #

Like forAll, but without printing the generated value.

forAllShrink ∷ (Show a, Testable prop) ⇒ Gen a → (a → [a]) → (a → prop) → Property Source #

Like forAll, but tries to shrink the argument for failing test cases.

forAllShrinkShow ∷ Testable prop ⇒ Gen a → (a → [a]) → (a → String) → (a → prop) → Property Source #

Like forAllShrink, but with an explicitly given show function.

forAllShrinkBlind ∷ Testable prop ⇒ Gen a → (a → [a]) → (a → prop) → Property Source #

Like forAllShrink, but without printing the generated value.

(.&.) ∷ (Testable prop1, Testable prop2) ⇒ prop1 → prop2 → Property infixr 1 Source #

Nondeterministic choice: p1 .&. p2 picks randomly one of p1 and p2 to test. If you test the property 100 times it makes 100 random choices.

(.&&.) ∷ (Testable prop1, Testable prop2) ⇒ prop1 → prop2 → Property infixr 1 Source #

Conjunction: p1 .&&. p2 passes if both p1 and p2 pass.

conjoin ∷ Testable prop ⇒ [prop] → Property Source #

Take the conjunction of several properties.

(.||.) ∷ (Testable prop1, Testable prop2) ⇒ prop1 → prop2 → Property infixr 1 Source #

Disjunction: p1 .||. p2 passes unless p1 and p2 simultaneously fail.

disjoin ∷ Testable prop ⇒ [prop] → Property Source #

Take the disjunction of several properties.

(===) ∷ (Eq a, Show a) ⇒ a → a → Property infix 4 Source #

Like ==, but prints a counterexample when it fails.

(=/=) ∷ (Eq a, Show a) ⇒ a → a → Property infix 4 Source #

Like /=, but prints a counterexample when it fails.

total ∷ NFData a ⇒ a → Property Source #

Checks that a value is total, i.e., doesn't crash when evaluated.

data Args Source #

Args specifies arguments to the QuickCheck driver

Constructors

Args 

Fields

  • replay ∷ Maybe (QCGen, Int)

    Should we replay a previous test? Note: saving a seed from one version of QuickCheck and replaying it in another is not supported. If you want to store a test case permanently you should save the test case itself.

  • maxSuccess ∷ Int

    Maximum number of successful tests before succeeding. Testing stops at the first failure. If all tests are passing and you want to run more tests, increase this number.

  • maxDiscardRatio ∷ Int

    Maximum number of discarded tests per successful test before giving up

  • maxSize ∷ Int

    Size to use for the biggest test cases

  • chatty ∷ Bool

    Whether to print anything

  • maxShrinks ∷ Int

    Maximum number of shrinks to do before giving up. Setting this to zero turns shrinking off.

Instances

Instances details
Read Args 
Instance details

Defined in Test.QuickCheck.Test

Show Args 
Instance details

Defined in Test.QuickCheck.Test

Methods

showsPrec ∷ Int → Args → ShowS #

show ∷ Args → String #

showList ∷ [Args] → ShowS #

isSuccess ∷ Result → Bool Source #

Check if the test run result was a success

stdArgs ∷ Args Source #

The default test arguments

quickCheck ∷ Testable prop ⇒ prop → IO () Source #

Tests a property and prints the results to stdout.

By default up to 100 tests are performed, which may not be enough to find all bugs. To run more tests, use withMaxSuccess.

If you want to get the counterexample as a Haskell value, rather than just printing it, try the quickcheck-with-counterexamples package.

quickCheckWith ∷ Testable prop ⇒ Args → prop → IO () Source #

Tests a property, using test arguments, and prints the results to stdout.

quickCheckResult ∷ Testable prop ⇒ prop → IO Result Source #

Tests a property, produces a test result, and prints the results to stdout.

quickCheckWithResult ∷ Testable prop ⇒ Args → prop → IO Result Source #

Tests a property, using test arguments, produces a test result, and prints the results to stdout.

recheck ∷ Testable prop ⇒ Result → prop → IO () Source #

Re-run a property with the seed and size that failed in a run of quickCheckResult.

verboseCheck ∷ Testable prop ⇒ prop → IO () Source #

Tests a property and prints the results and all test cases generated to stdout. This is just a convenience function that means the same as quickCheck . verbose.

Note: for technical reasons, the test case is printed out after the property is tested. To debug a property that goes into an infinite loop, use within to add a timeout instead.

verboseCheckWith ∷ Testable prop ⇒ Args → prop → IO () Source #

Tests a property, using test arguments, and prints the results and all test cases generated to stdout. This is just a convenience function that combines quickCheckWith and verbose.

Note: for technical reasons, the test case is printed out after the property is tested. To debug a property that goes into an infinite loop, use within to add a timeout instead.

verboseCheckResult ∷ Testable prop ⇒ prop → IO Result Source #

Tests a property, produces a test result, and prints the results and all test cases generated to stdout. This is just a convenience function that combines quickCheckResult and verbose.

Note: for technical reasons, the test case is printed out after the property is tested. To debug a property that goes into an infinite loop, use within to add a timeout instead.

verboseCheckWithResult ∷ Testable prop ⇒ Args → prop → IO Result Source #

Tests a property, using test arguments, produces a test result, and prints the results and all test cases generated to stdout. This is just a convenience function that combines quickCheckWithResult and verbose.

Note: for technical reasons, the test case is printed out after the property is tested. To debug a property that goes into an infinite loop, use within to add a timeout instead.

polyQuickCheck ∷ Name → ExpQ Source #

Test a polymorphic property, defaulting all type variables to Integer.

Invoke as $(polyQuickCheck 'prop), where prop is a property. Note that just evaluating quickCheck prop in GHCi will seem to work, but will silently default all type variables to ()!

$(polyQuickCheck 'prop) means the same as quickCheck $(monomorphic 'prop). If you want to supply custom arguments to polyQuickCheck, you will have to combine quickCheckWith and monomorphic yourself.

If you want to use polyQuickCheck in the same file where you defined the property, the same scoping problems pop up as in quickCheckAll: see the note there about return [].

polyVerboseCheck ∷ Name → ExpQ Source #

Test a polymorphic property, defaulting all type variables to Integer. This is just a convenience function that combines verboseCheck and monomorphic.

If you want to use polyVerboseCheck in the same file where you defined the property, the same scoping problems pop up as in quickCheckAll: see the note there about return [].

monomorphic ∷ Name → ExpQ Source #

Monomorphise an arbitrary property by defaulting all type variables to Integer.

For example, if f has type Ord a => [a] -> [a] then $(monomorphic 'f) has type [Integer] -> [Integer].

If you want to use monomorphic in the same file where you defined the property, the same scoping problems pop up as in quickCheckAll: see the note there about return [].

forAllProperties ∷ Q Exp Source #

Test all properties in the current module, using a custom quickCheck function. The same caveats as with quickCheckAll apply.

$forAllProperties has type (Property -> IO Result) -> IO Bool. An example invocation is $forAllProperties quickCheckResult, which does the same thing as $quickCheckAll.

forAllProperties has the same issue with scoping as quickCheckAll: see the note there about return [].

allProperties ∷ Q Exp Source #

List all properties in the current module.

$allProperties has type [(String, Property)].

allProperties has the same issue with scoping as quickCheckAll: see the note there about return [].

quickCheckAll ∷ Q Exp Source #

Test all properties in the current module. The name of the property must begin with prop_. Polymorphic properties will be defaulted to Integer. Returns True if all tests succeeded, False otherwise.

To use quickCheckAll, add a definition to your module along the lines of

return []
runTests = $quickCheckAll

and then execute runTests.

Note: the bizarre return [] in the example above is needed on GHC 7.8 and later; without it, quickCheckAll will not be able to find any of the properties. For the curious, the return [] is a Template Haskell splice that makes GHC insert the empty list of declarations at that point in the program; GHC typechecks everything before the return [] before it starts on the rest of the module, which means that the later call to quickCheckAll can see everything that was defined before the return []. Yikes!

verboseCheckAll ∷ Q Exp Source #

Test all properties in the current module. This is just a convenience function that combines quickCheckAll and verbose.

verboseCheckAll has the same issue with scoping as quickCheckAll: see the note there about return [].

labelledExamples ∷ Testable prop ⇒ prop → IO () Source #

Given a property, which must use label, collect, classify or cover to associate labels with test cases, find an example test case for each possible label. The example test cases are minimised using shrinking.

For example, suppose we test delete x xs and record the number of times that x occurs in xs:

prop_delete :: Int -> [Int] -> Property
prop_delete x xs =
  classify (count x xs == 0) "count x xs == 0" $
  classify (count x xs == 1) "count x xs == 1" $
  classify (count x xs >= 2) "count x xs >= 2" $
  counterexample (show (delete x xs)) $
  count x (delete x xs) == max 0 (count x xs-1)
  where count x xs = length (filter (== x) xs)

labelledExamples generates three example test cases, one for each label:

>>> labelledExamples prop_delete
*** Found example of count x xs == 0
0
[]
[]

*** Found example of count x xs == 1
0
[0]
[]

*** Found example of count x xs >= 2
5
[5,5]
[5]

+++ OK, passed 100 tests:
78% count x xs == 0
21% count x xs == 1
 1% count x xs >= 2

labelledExamplesWith ∷ Testable prop ⇒ Args → prop → IO () Source #

A variant of labelledExamples that takes test arguments.

labelledExamplesResult ∷ Testable prop ⇒ prop → IO Result Source #

A variant of labelledExamples that returns a result.

labelledExamplesWithResult ∷ Testable prop ⇒ Args → prop → IO Result Source #

A variant of labelledExamples that takes test arguments and returns a result.

when ∷ Applicative f ⇒ Bool → f () → f () #

Conditional execution of Applicative expressions. For example,

Examples

Expand
when debug (putStrLn "Debugging")

will output the string Debugging if the Boolean value debug is True, and otherwise do nothing.

>>> putStr "pi:" >> when False (print 3.14159)
pi:

unless ∷ Applicative f ⇒ Bool → f () → f () #

The reverse of when.

Examples

Expand
>>> do x <- getLine
       unless (x == "hi") (putStrLn "hi!")
comingupwithexamplesisdifficult
hi!
>>> unless (pi > exp 1) Nothing
Just ()

void ∷ Functor f ⇒ f a → f () #

void value discards or ignores the result of evaluation, such as the return value of an IO action.

Examples

Expand

Replace the contents of a Maybe Int with unit:

>>> void Nothing
Nothing
>>> void (Just 3)
Just ()

Replace the contents of an Either Int Int with unit, resulting in an Either Int ():

>>> void (Left 8675309)
Left 8675309
>>> void (Right 8675309)
Right ()

Replace every element of a list with unit:

>>> void [1,2,3]
[(),(),()]

Replace the second element of a pair with unit:

>>> void (1,2)
(1,())

Discard the result of an IO action:

>>> mapM print [1,2]
1
2
[(),()]
>>> void $ mapM print [1,2]
1
2

(>=>) ∷ Monad m ⇒ (a → m b) → (b → m c) → a → m c infixr 1 #

Left-to-right composition of Kleisli arrows.

'(bs >=> cs) a' can be understood as the do expression

do b <- bs a
   cs b

or in terms of (>>=) as

bs a >>= cs

replicateM ∷ Applicative m ⇒ Int → m a → m [a] #

replicateM n act performs the action act n times, and then returns the list of results.

replicateM n (pure x) == replicate n x

Examples

Expand
>>> replicateM 3 getLine
hi
heya
hiya
["hi","heya","hiya"]
>>> import Control.Monad.State
>>> runState (replicateM 3 $ state $ \s -> (s, s + 1)) 1
([1,2,3],4)

forM_ ∷ (Foldable t, Monad m) ⇒ t a → (a → m b) → m () #

forM_ is mapM_ with its arguments flipped. For a version that doesn't ignore the results see forM.

forM_ is just like for_, but specialised to monadic actions.

replicateM_ ∷ Applicative m ⇒ Int → m a → m () #

Like replicateM, but discards the result.

Examples

Expand
>>> replicateM_ 3 (putStr "a")
aaa

class NFData a #

A class of types that can be fully evaluated.

Since: deepseq-1.1.0.0

Instances

Instances details
NFData Key 
Instance details

Defined in Data.Aeson.Key

Methods

rnf ∷ Key → () #

NFData JSONPathElement 
Instance details

Defined in Data.Aeson.Types.Internal

Methods

rnf ∷ JSONPathElement → () #

NFData Value 
Instance details

Defined in Data.Aeson.Types.Internal

Methods

rnf ∷ Value → () #

NFData AdjacencyIntMap 
Instance details

Defined in Algebra.Graph.AdjacencyIntMap

Methods

rnf ∷ AdjacencyIntMap → () #

NFData ByteArray

Since: deepseq-1.4.7.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ ByteArray → () #

NFData ByteString64 
Instance details

Defined in Data.ByteString.Base64.Type

Methods

rnf ∷ ByteString64 → () #

NFData Buffer

Like the NFData instance for StrictByteString, this does not force the ForeignPtrContents field of the underlying ForeignPtr.

Since: bytestring-0.12.2.0

Instance details

Defined in Data.ByteString.Builder.Internal

Methods

rnf ∷ Buffer → () #

NFData BufferRange

Since: bytestring-0.12.2.0

Instance details

Defined in Data.ByteString.Builder.Internal

Methods

rnf ∷ BufferRange → () #

NFData ByteString 
Instance details

Defined in Data.ByteString.Internal.Type

Methods

rnf ∷ ByteString → () #

NFData ByteString 
Instance details

Defined in Data.ByteString.Lazy.Internal

Methods

rnf ∷ ByteString → () #

NFData ShortByteString 
Instance details

Defined in Data.ByteString.Short.Internal

Methods

rnf ∷ ShortByteString → () #

NFData IPv4 
Instance details

Defined in Cardano.Base.IP

Methods

rnf ∷ IPv4 → () #

NFData IPv6 
Instance details

Defined in Cardano.Base.IP

Methods

rnf ∷ IPv6 → () #

NFData DecoderError 
Instance details

Defined in Cardano.Binary.FromCBOR

Methods

rnf ∷ DecoderError → () #

NFData XPrv 
Instance details

Defined in Cardano.Crypto.Wallet

Methods

rnf ∷ XPrv → () #

NFData XPub 
Instance details

Defined in Cardano.Crypto.Wallet

Methods

rnf ∷ XPub → () #

NFData XSignature 
Instance details

Defined in Cardano.Crypto.Wallet

Methods

rnf ∷ XSignature → () #

NFData EncryptedKey 
Instance details

Defined in Cardano.Crypto.Wallet.Encrypted

Methods

rnf ∷ EncryptedKey → () #

NFData Signature 
Instance details

Defined in Cardano.Crypto.Wallet.Encrypted

Methods

rnf ∷ Signature → () #

NFData XPub 
Instance details

Defined in Cardano.Crypto.Wallet.Pure

Methods

rnf ∷ XPub → () #

NFData ChainCode 
Instance details

Defined in Cardano.Crypto.Wallet.Types

Methods

rnf ∷ ChainCode → () #

NFData PointCompressed 
Instance details

Defined in Crypto.Math.Edwards25519

Methods

rnf ∷ PointCompressed → () #

NFData Signature 
Instance details

Defined in Crypto.Math.Edwards25519

Methods

rnf ∷ Signature → () #

NFData BLS12381SignContext 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnf ∷ BLS12381SignContext → () #

NFData Scalar 
Instance details

Defined in Cardano.Crypto.EllipticCurve.BLS12_381.Internal

Methods

rnf ∷ Scalar → () #

NFData Seed 
Instance details

Defined in Cardano.Crypto.Seed

Methods

rnf ∷ Seed → () #

NFData Point 
Instance details

Defined in Cardano.Crypto.VRF.Simple

Methods

rnf ∷ Point → () #

NFData AggregationError 
Instance details

Defined in Cardano.Crypto.Leios

Methods

rnf ∷ AggregationError → () #

NFData BitField 
Instance details

Defined in Cardano.Crypto.Leios

Methods

rnf ∷ BitField → () #

NFData LeiosCert 
Instance details

Defined in Cardano.Crypto.Leios

Methods

rnf ∷ LeiosCert → () #

NFData LeiosCommittee 
Instance details

Defined in Cardano.Crypto.Leios

Methods

rnf ∷ LeiosCommittee → () #

NFData LeiosSeat 
Instance details

Defined in Cardano.Crypto.Leios

Methods

rnf ∷ LeiosSeat → () #

NFData LeiosSeatId 
Instance details

Defined in Cardano.Crypto.Leios

Methods

rnf ∷ LeiosSeatId → () #

NFData VerificationError 
Instance details

Defined in Cardano.Crypto.Leios

Methods

rnf ∷ VerificationError → () #

NFData Proof 
Instance details

Defined in Cardano.Crypto.VRF.Praos

Methods

rnf ∷ Proof → () #

NFData SignKey 
Instance details

Defined in Cardano.Crypto.VRF.Praos

Methods

rnf ∷ SignKey → () #

NFData VerKey 
Instance details

Defined in Cardano.Crypto.VRF.Praos

Methods

rnf ∷ VerKey → () #

NFData Proof 
Instance details

Defined in Cardano.Crypto.VRF.PraosBatchCompat

Methods

rnf ∷ Proof → () #

NFData SignKey 
Instance details

Defined in Cardano.Crypto.VRF.PraosBatchCompat

Methods

rnf ∷ SignKey → () #

NFData VerKey 
Instance details

Defined in Cardano.Crypto.VRF.PraosBatchCompat

Methods

rnf ∷ VerKey → () #

NFData ProtocolMagicId 
Instance details

Defined in Cardano.Crypto.ProtocolMagic

Methods

rnf ∷ ProtocolMagicId → () #

NFData RequiresNetworkMagic 
Instance details

Defined in Cardano.Crypto.ProtocolMagic

Methods

rnf ∷ RequiresNetworkMagic → () #

NFData Raw 
Instance details

Defined in Cardano.Crypto.Raw

Methods

rnf ∷ Raw → () #

NFData CompactRedeemVerificationKey 
Instance details

Defined in Cardano.Crypto.Signing.Redeem.Compact

NFData RedeemSigningKey 
Instance details

Defined in Cardano.Crypto.Signing.Redeem.SigningKey

Methods

rnf ∷ RedeemSigningKey → () #

NFData RedeemVerificationKey 
Instance details

Defined in Cardano.Crypto.Signing.Redeem.VerificationKey

Methods

rnf ∷ RedeemVerificationKey → () #

NFData SigningKey 
Instance details

Defined in Cardano.Crypto.Signing.SigningKey

Methods

rnf ∷ SigningKey → () #

NFData VerificationKey 
Instance details

Defined in Cardano.Crypto.Signing.VerificationKey

Methods

rnf ∷ VerificationKey → () #

NFData Version 
Instance details

Defined in Cardano.Ledger.Binary.Version

Methods

rnf ∷ Version → () #

NFData AddrAttributes 
Instance details

Defined in Cardano.Chain.Common.AddrAttributes

Methods

rnf ∷ AddrAttributes → () #

NFData HDAddressPayload 
Instance details

Defined in Cardano.Chain.Common.AddrAttributes

Methods

rnf ∷ HDAddressPayload → () #

NFData AddrSpendingData 
Instance details

Defined in Cardano.Chain.Common.AddrSpendingData

Methods

rnf ∷ AddrSpendingData → () #

NFData AddrType 
Instance details

Defined in Cardano.Chain.Common.AddrSpendingData

Methods

rnf ∷ AddrType → () #

NFData Address 
Instance details

Defined in Cardano.Chain.Common.Address

Methods

rnf ∷ Address → () #

NFData UnparsedFields 
Instance details

Defined in Cardano.Chain.Common.Attributes

Methods

rnf ∷ UnparsedFields → () #

NFData BlockCount 
Instance details

Defined in Cardano.Chain.Common.BlockCount

Methods

rnf ∷ BlockCount → () #

NFData ChainDifficulty 
Instance details

Defined in Cardano.Chain.Common.ChainDifficulty

Methods

rnf ∷ ChainDifficulty → () #

NFData CompactAddress 
Instance details

Defined in Cardano.Chain.Common.Compact

Methods

rnf ∷ CompactAddress → () #

NFData Lovelace 
Instance details

Defined in Cardano.Chain.Common.Lovelace

Methods

rnf ∷ Lovelace → () #

NFData LovelacePortion 
Instance details

Defined in Cardano.Chain.Common.LovelacePortion

Methods

rnf ∷ LovelacePortion → () #

NFData NetworkMagic 
Instance details

Defined in Cardano.Chain.Common.NetworkMagic

Methods

rnf ∷ NetworkMagic → () #

NFData TxFeePolicy 
Instance details

Defined in Cardano.Chain.Common.TxFeePolicy

Methods

rnf ∷ TxFeePolicy → () #

NFData TxSizeLinear 
Instance details

Defined in Cardano.Chain.Common.TxSizeLinear

Methods

rnf ∷ TxSizeLinear → () #

NFData State 
Instance details

Defined in Cardano.Chain.Delegation.Validation.Activation

Methods

rnf ∷ State → () #

NFData Environment 
Instance details

Defined in Cardano.Chain.Delegation.Validation.Interface

Methods

rnf ∷ Environment → () #

NFData State 
Instance details

Defined in Cardano.Chain.Delegation.Validation.Interface

Methods

rnf ∷ State → () #

NFData Environment 
Instance details

Defined in Cardano.Chain.Delegation.Validation.Scheduling

Methods

rnf ∷ Environment → () #

NFData ScheduledDelegation 
Instance details

Defined in Cardano.Chain.Delegation.Validation.Scheduling

Methods

rnf ∷ ScheduledDelegation → () #

NFData State 
Instance details

Defined in Cardano.Chain.Delegation.Validation.Scheduling

Methods

rnf ∷ State → () #

NFData SscPayload 
Instance details

Defined in Cardano.Chain.Ssc

Methods

rnf ∷ SscPayload → () #

NFData SscProof 
Instance details

Defined in Cardano.Chain.Ssc

Methods

rnf ∷ SscProof → () #

NFData UTxO 
Instance details

Defined in Cardano.Chain.UTxO.UTxO

Methods

rnf ∷ UTxO → () #

NFData ProposalBody 
Instance details

Defined in Cardano.Chain.Update.Proposal

Methods

rnf ∷ ProposalBody → () #

NFData CandidateProtocolUpdate 
Instance details

Defined in Cardano.Chain.Update.Validation.Endorsement

Methods

rnf ∷ CandidateProtocolUpdate → () #

NFData Endorsement 
Instance details

Defined in Cardano.Chain.Update.Validation.Endorsement

Methods

rnf ∷ Endorsement → () #

NFData State 
Instance details

Defined in Cardano.Chain.Update.Validation.Interface

Methods

rnf ∷ State → () #

NFData ApplicationVersion 
Instance details

Defined in Cardano.Chain.Update.Validation.Registration

Methods

rnf ∷ ApplicationVersion → () #

NFData ProtocolUpdateProposal 
Instance details

Defined in Cardano.Chain.Update.Validation.Registration

Methods

rnf ∷ ProtocolUpdateProposal → () #

NFData SoftwareUpdateProposal 
Instance details

Defined in Cardano.Chain.Update.Validation.Registration

Methods

rnf ∷ SoftwareUpdateProposal → () #

NFData Environment 
Instance details

Defined in Cardano.Chain.Update.Validation.Voting

Methods

rnf ∷ Environment → () #

NFData RegistrationEnvironment 
Instance details

Defined in Cardano.Chain.Update.Validation.Voting

Methods

rnf ∷ RegistrationEnvironment → () #

NFData AccountAddress 
Instance details

Defined in Cardano.Ledger.Address

Methods

rnf ∷ AccountAddress → () #

NFData AccountId 
Instance details

Defined in Cardano.Ledger.Address

Methods

rnf ∷ AccountId → () #

NFData Addr 
Instance details

Defined in Cardano.Ledger.Address

Methods

rnf ∷ Addr → () #

NFData BootstrapAddress 
Instance details

Defined in Cardano.Ledger.Address

Methods

rnf ∷ BootstrapAddress → () #

NFData CompactAddr 
Instance details

Defined in Cardano.Ledger.Address

Methods

rnf ∷ CompactAddr → () #

NFData DirectDeposits 
Instance details

Defined in Cardano.Ledger.Address

Methods

rnf ∷ DirectDeposits → () #

NFData Withdrawals 
Instance details

Defined in Cardano.Ledger.Address

Methods

rnf ∷ Withdrawals → () #

NFData BHeaderView 
Instance details

Defined in Cardano.Ledger.BHeaderView

Methods

rnf ∷ BHeaderView → () #

NFData ActiveSlotCoeff 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ ActiveSlotCoeff → () #

NFData Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Anchor → () #

NFData BlocksMade 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ BlocksMade → () #

NFData CertIx 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ CertIx → () #

NFData DnsName 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ DnsName → () #

NFData Globals 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Globals → () #

NFData Milliseconds32 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Milliseconds32 → () #

NFData Network 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Network → () #

NFData NonNegativeInterval 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ NonNegativeInterval → () #

NFData Nonce 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Nonce → () #

NFData Port 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Port → () #

NFData PositiveInterval 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ PositiveInterval → () #

NFData PositiveUnitInterval 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ PositiveUnitInterval → () #

NFData ProtVer 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ ProtVer → () #

NFData TxIx 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ TxIx → () #

NFData UnitInterval 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ UnitInterval → () #

NFData Url 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Url → () #

NFData BlockHeaderVersionInfo 
Instance details

Defined in Cardano.Ledger.Block

Methods

rnf ∷ BlockHeaderVersionInfo → () #

NFData EbReferencesAnnouncement 
Instance details

Defined in Cardano.Ledger.Block

Methods

rnf ∷ EbReferencesAnnouncement → () #

NFData Coin 
Instance details

Defined in Cardano.Ledger.Coin

Methods

rnf ∷ Coin → () #

NFData CoinPerByte 
Instance details

Defined in Cardano.Ledger.Coin

Methods

rnf ∷ CoinPerByte → () #

NFData DeltaCoin 
Instance details

Defined in Cardano.Ledger.Coin

Methods

rnf ∷ DeltaCoin → () #

NFData MaxPledgeLeverage 
Instance details

Defined in Cardano.Ledger.Core.PParams

Methods

rnf ∷ MaxPledgeLeverage → () #

NFData Ptr 
Instance details

Defined in Cardano.Ledger.Credential

Methods

rnf ∷ Ptr → () #

NFData SlotNo32 
Instance details

Defined in Cardano.Ledger.Credential

Methods

rnf ∷ SlotNo32 → () #

NFData StakeReference 
Instance details

Defined in Cardano.Ledger.Credential

Methods

rnf ∷ StakeReference → () #

NFData DRep 
Instance details

Defined in Cardano.Ledger.DRep

Methods

rnf ∷ DRep → () #

NFData DRepState 
Instance details

Defined in Cardano.Ledger.DRep

Methods

rnf ∷ DRepState → () #

NFData GenDelegPair 
Instance details

Defined in Cardano.Ledger.Hashes

Methods

rnf ∷ GenDelegPair → () #

NFData GenDelegs 
Instance details

Defined in Cardano.Ledger.Hashes

Methods

rnf ∷ GenDelegs → () #

NFData HashHeader 
Instance details

Defined in Cardano.Ledger.Hashes

Methods

rnf ∷ HashHeader → () #

NFData ScriptHash 
Instance details

Defined in Cardano.Ledger.Hashes

Methods

rnf ∷ ScriptHash → () #

NFData TxAuxDataHash 
Instance details

Defined in Cardano.Ledger.Hashes

Methods

rnf ∷ TxAuxDataHash → () #

NFData BootstrapWitness 
Instance details

Defined in Cardano.Ledger.Keys.Bootstrap

Methods

rnf ∷ BootstrapWitness → () #

NFData ChainCode 
Instance details

Defined in Cardano.Ledger.Keys.Bootstrap

Methods

rnf ∷ ChainCode → () #

NFData Metadatum 
Instance details

Defined in Cardano.Ledger.Metadata

Methods

rnf ∷ Metadatum → () #

NFData CostModel 
Instance details

Defined in Cardano.Ledger.Plutus.CostModels

Methods

rnf ∷ CostModel → () #

NFData CostModels 
Instance details

Defined in Cardano.Ledger.Plutus.CostModels

Methods

rnf ∷ CostModels → () #

NFData CostModelsUpdate 
Instance details

Defined in Cardano.Ledger.Plutus.CostModels

Methods

rnf ∷ CostModelsUpdate → () #

NFData PlutusDebugInfo 
Instance details

Defined in Cardano.Ledger.Plutus.Evaluate

Methods

rnf ∷ PlutusDebugInfo → () #

NFData PlutusWithContext 
Instance details

Defined in Cardano.Ledger.Plutus.Evaluate

Methods

rnf ∷ PlutusWithContext → () #

NFData ExUnits 
Instance details

Defined in Cardano.Ledger.Plutus.ExUnits

Methods

rnf ∷ ExUnits → () #

NFData OrdExUnits 
Instance details

Defined in Cardano.Ledger.Plutus.ExUnits

Methods

rnf ∷ OrdExUnits → () #

NFData Prices 
Instance details

Defined in Cardano.Ledger.Plutus.ExUnits

Methods

rnf ∷ Prices → () #

NFData Language 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ Language → () #

NFData PlutusBinary 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ PlutusBinary → () #

NFData TxOutSource 
Instance details

Defined in Cardano.Ledger.Plutus.TxInfo

Methods

rnf ∷ TxOutSource → () #

NFData Reward 
Instance details

Defined in Cardano.Ledger.Rewards

Methods

rnf ∷ Reward → () #

NFData RewardType 
Instance details

Defined in Cardano.Ledger.Rewards

Methods

rnf ∷ RewardType → () #

NFData CommitteeAuthorization 
Instance details

Defined in Cardano.Ledger.State.CertState

Methods

rnf ∷ CommitteeAuthorization → () #

NFData FutureGenDeleg 
Instance details

Defined in Cardano.Ledger.State.CertState

Methods

rnf ∷ FutureGenDeleg → () #

NFData InstantaneousRewards 
Instance details

Defined in Cardano.Ledger.State.CertState

Methods

rnf ∷ InstantaneousRewards → () #

NFData Obligations 
Instance details

Defined in Cardano.Ledger.State.CertState

Methods

rnf ∷ Obligations → () #

NFData ChainAccountState 
Instance details

Defined in Cardano.Ledger.State.ChainAccount

Methods

rnf ∷ ChainAccountState → () #

NFData IndividualPoolStake 
Instance details

Defined in Cardano.Ledger.State.PoolDistr

Methods

rnf ∷ IndividualPoolStake → () #

NFData PoolDistr 
Instance details

Defined in Cardano.Ledger.State.PoolDistr

Methods

rnf ∷ PoolDistr → () #

NFData GoSnapShot 
Instance details

Defined in Cardano.Ledger.State.SnapShots

Methods

rnf ∷ GoSnapShot → () #

NFData MarkSnapShot 
Instance details

Defined in Cardano.Ledger.State.SnapShots

Methods

rnf ∷ MarkSnapShot → () #

NFData SetSnapShot 
Instance details

Defined in Cardano.Ledger.State.SnapShots

Methods

rnf ∷ SetSnapShot → () #

NFData SnapShot 
Instance details

Defined in Cardano.Ledger.State.SnapShots

Methods

rnf ∷ SnapShot → () #

NFData StakePoolSnapShot 
Instance details

Defined in Cardano.Ledger.State.SnapShots

Methods

rnf ∷ StakePoolSnapShot → () #

NFData ActiveStake 
Instance details

Defined in Cardano.Ledger.State.Stake

Methods

rnf ∷ ActiveStake → () #

NFData Stake 
Instance details

Defined in Cardano.Ledger.State.Stake

Methods

rnf ∷ Stake → () #

NFData StakeWithDelegation 
Instance details

Defined in Cardano.Ledger.State.Stake

Methods

rnf ∷ StakeWithDelegation → () #

NFData BlsKey 
Instance details

Defined in Cardano.Ledger.State.StakePool

Methods

rnf ∷ BlsKey → () #

NFData BlsKeyState 
Instance details

Defined in Cardano.Ledger.State.StakePool

Methods

rnf ∷ BlsKeyState → () #

NFData PoolMetadata 
Instance details

Defined in Cardano.Ledger.State.StakePool

Methods

rnf ∷ PoolMetadata → () #

NFData StakePoolRelay 
Instance details

Defined in Cardano.Ledger.State.StakePool

Methods

rnf ∷ StakePoolRelay → () #

NFData StakePoolState 
Instance details

Defined in Cardano.Ledger.State.StakePool

Methods

rnf ∷ StakePoolState → () #

NFData TxId 
Instance details

Defined in Cardano.Ledger.TxIn

Methods

rnf ∷ TxId → () #

NFData TxIn 
Instance details

Defined in Cardano.Ledger.TxIn

Methods

rnf ∷ TxIn → () #

NFData TestBlockHeader Source # 
Instance details

Defined in Test.Cardano.Ledger.BlockHeader

Methods

rnf ∷ TestBlockHeader → () #

NFData PlutusArgs Source # 
Instance details

Defined in Test.Cardano.Ledger.Plutus.ScriptTestContext

Methods

rnf ∷ PlutusArgs → () #

NFData ScriptTestContext Source # 
Instance details

Defined in Test.Cardano.Ledger.Plutus.ScriptTestContext

Methods

rnf ∷ ScriptTestContext → () #

NFData BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Methods

rnf ∷ BlockNo → () #

NFData EpochInterval 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnf ∷ EpochInterval → () #

NFData EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnf ∷ EpochNo → () #

NFData EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnf ∷ EpochSize → () #

NFData SlotInterval 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnf ∷ SlotInterval → () #

NFData SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnf ∷ SlotNo → () #

NFData IntSet 
Instance details

Defined in Data.IntSet.Internal

Methods

rnf ∷ IntSet → () #

NFData CurveBinary 
Instance details

Defined in Crypto.PubKey.ECC.Types

Methods

rnf ∷ CurveBinary → () #

NFData Point 
Instance details

Defined in Crypto.PubKey.ECC.Types

Methods

rnf ∷ Point → () #

NFData PublicKey 
Instance details

Defined in Crypto.PubKey.Ed25519

Methods

rnf ∷ PublicKey → () #

NFData SecretKey 
Instance details

Defined in Crypto.PubKey.Ed25519

Methods

rnf ∷ SecretKey → () #

NFData Signature 
Instance details

Defined in Crypto.PubKey.Ed25519

Methods

rnf ∷ Signature → () #

NFData FsPath 
Instance details

Defined in System.FS.API.Types

Methods

rnf ∷ FsPath → () #

NFData Void

Defined as rnf = absurd.

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Void → () #

NFData ThreadId

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ ThreadId → () #

NFData All

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ All → () #

NFData Any

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Any → () #

NFData TypeRep

NOTE: Prior to deepseq-1.4.4.0 this instance was only defined for base-4.8.0.0 and later.

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ TypeRep → () #

NFData Unique

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Unique → () #

NFData Version

Since: deepseq-1.3.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Version → () #

NFData Fingerprint

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Fingerprint → () #

NFData CBool

Since: deepseq-1.4.3.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CBool → () #

NFData CChar

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CChar → () #

NFData CClock

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CClock → () #

NFData CDouble

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CDouble → () #

NFData CFile

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CFile → () #

NFData CFloat

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CFloat → () #

NFData CFpos

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CFpos → () #

NFData CInt

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CInt → () #

NFData CIntMax

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CIntMax → () #

NFData CIntPtr

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CIntPtr → () #

NFData CJmpBuf

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CJmpBuf → () #

NFData CLLong

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CLLong → () #

NFData CLong

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CLong → () #

NFData CPtrdiff

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CPtrdiff → () #

NFData CSChar

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CSChar → () #

NFData CSUSeconds

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CSUSeconds → () #

NFData CShort

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CShort → () #

NFData CSigAtomic

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CSigAtomic → () #

NFData CSize

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CSize → () #

NFData CTime

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CTime → () #

NFData CUChar

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CUChar → () #

NFData CUInt

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CUInt → () #

NFData CUIntMax

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CUIntMax → () #

NFData CUIntPtr

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CUIntPtr → () #

NFData CULLong

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CULLong → () #

NFData CULong

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CULong → () #

NFData CUSeconds

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CUSeconds → () #

NFData CUShort

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CUShort → () #

NFData CWchar

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CWchar → () #

NFData MaskingState

Since: deepseq-1.4.4.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ MaskingState → () #

NFData ExitCode

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ ExitCode → () #

NFData Int16 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Int16 → () #

NFData Int32 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Int32 → () #

NFData Int64 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Int64 → () #

NFData Int8 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Int8 → () #

NFData CallStack

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ CallStack → () #

NFData SrcLoc

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ SrcLoc → () #

NFData Word16 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Word16 → () #

NFData Word32 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Word32 → () #

NFData Word64 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Word64 → () #

NFData Word8 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Word8 → () #

NFData Module

Since: deepseq-1.4.8.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Module → () #

NFData Ordering 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Ordering → () #

NFData TyCon

NOTE: Prior to deepseq-1.4.4.0 this instance was only defined for base-4.8.0.0 and later.

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ TyCon → () #

NFData Half 
Instance details

Defined in Numeric.Half.Internal

Methods

rnf ∷ Half → () #

NFData FailureReason 
Instance details

Defined in Test.Hspec.Core.Example

Methods

rnf ∷ FailureReason → () #

NFData InvalidPosException 
Instance details

Defined in Text.Megaparsec.Pos

Methods

rnf ∷ InvalidPosException → () #

NFData Pos 
Instance details

Defined in Text.Megaparsec.Pos

Methods

rnf ∷ Pos → () #

NFData SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

Methods

rnf ∷ SourcePos → () #

NFData URI 
Instance details

Defined in Network.URI

Methods

rnf ∷ URI → () #

NFData URIAuth 
Instance details

Defined in Network.URI

Methods

rnf ∷ URIAuth → () #

NFData OsChar 
Instance details

Defined in System.OsString.Internal.Types

Methods

rnf ∷ OsChar → () #

NFData OsString 
Instance details

Defined in System.OsString.Internal.Types

Methods

rnf ∷ OsString → () #

NFData PosixChar 
Instance details

Defined in System.OsString.Internal.Types

Methods

rnf ∷ PosixChar → () #

NFData PosixString 
Instance details

Defined in System.OsString.Internal.Types

Methods

rnf ∷ PosixString → () #

NFData WindowsChar 
Instance details

Defined in System.OsString.Internal.Types

Methods

rnf ∷ WindowsChar → () #

NFData WindowsString 
Instance details

Defined in System.OsString.Internal.Types

Methods

rnf ∷ WindowsString → () #

NFData SrcSpan 
Instance details

Defined in PlutusCore.Annotation

Methods

rnf ∷ SrcSpan → () #

NFData SrcSpans 
Instance details

Defined in PlutusCore.Annotation

Methods

rnf ∷ SrcSpans → () #

NFData UnliftingError 
Instance details

Defined in PlutusCore.Builtin.Result

Methods

rnf ∷ UnliftingError → () #

NFData UnliftingEvaluationError 
Instance details

Defined in PlutusCore.Builtin.Result

Methods

rnf ∷ UnliftingEvaluationError → () #

NFData Data 
Instance details

Defined in PlutusCore.Data

Methods

rnf ∷ Data → () #

NFData DeBruijn 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Methods

rnf ∷ DeBruijn → () #

NFData FakeNamedDeBruijn 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Methods

rnf ∷ FakeNamedDeBruijn → () #

NFData FreeVariableError 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Methods

rnf ∷ FreeVariableError → () #

NFData Index 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Methods

rnf ∷ Index → () #

NFData NamedDeBruijn 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Methods

rnf ∷ NamedDeBruijn → () #

NFData NamedTyDeBruijn 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Methods

rnf ∷ NamedTyDeBruijn → () #

NFData TyDeBruijn 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Methods

rnf ∷ TyDeBruijn → () #

NFData DefaultFun 
Instance details

Defined in PlutusCore.Default.Builtins

Methods

rnf ∷ DefaultFun → () #

NFData ParserError 
Instance details

Defined in PlutusCore.Error

Methods

rnf ∷ ParserError → () #

NFData ParserErrorBundle 
Instance details

Defined in PlutusCore.Error

Methods

rnf ∷ ParserErrorBundle → () #

NFData CkUserError 
Instance details

Defined in PlutusCore.Evaluation.Machine.Ck

Methods

rnf ∷ CkUserError → () #

NFData CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

Methods

rnf ∷ CostModelApplyError → () #

NFData Coefficient0 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient0 → () #

NFData Coefficient00 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient00 → () #

NFData Coefficient01 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient01 → () #

NFData Coefficient02 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient02 → () #

NFData Coefficient1 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient1 → () #

NFData Coefficient10 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient10 → () #

NFData Coefficient11 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient11 → () #

NFData Coefficient12 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient12 → () #

NFData Coefficient2 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient2 → () #

NFData Coefficient20 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Coefficient20 → () #

NFData ExpModCostingFunction 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ExpModCostingFunction → () #

NFData Intercept 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Intercept → () #

NFData ModelConstantOrLinear 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ModelConstantOrLinear → () #

NFData ModelConstantOrOneArgument 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ModelConstantOrOneArgument → () #

NFData ModelConstantOrTwoArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

NFData ModelFiveArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ModelFiveArguments → () #

NFData ModelFourArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ModelFourArguments → () #

NFData ModelOneArgument 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ModelOneArgument → () #

NFData ModelSixArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ModelSixArguments → () #

NFData ModelSubtractedSizes 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ModelSubtractedSizes → () #

NFData ModelThreeArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ModelThreeArguments → () #

NFData ModelTwoArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ ModelTwoArguments → () #

NFData OneVariableLinearFunction 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ OneVariableLinearFunction → () #

NFData OneVariableQuadraticFunction 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

NFData Slope 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ Slope → () #

NFData TwoVariableLinearFunction 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ TwoVariableLinearFunction → () #

NFData TwoVariableQuadraticFunction 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

NFData TwoVariableWithInteractionFunction 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

NFData ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Methods

rnf ∷ ExBudget → () #

NFData ExRestrictingBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Methods

rnf ∷ ExRestrictingBudget → () #

NFData ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

rnf ∷ ExCPU → () #

NFData ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

rnf ∷ ExMemory → () #

NFData Name 
Instance details

Defined in PlutusCore.Name.Unique

Methods

rnf ∷ Name → () #

NFData TyName 
Instance details

Defined in PlutusCore.Name.Unique

Methods

rnf ∷ TyName → () #

NFData Unique 
Instance details

Defined in PlutusCore.Name.Unique

Methods

rnf ∷ Unique → () #

NFData K 
Instance details

Defined in PlutusCore.Value

Methods

rnf ∷ K → () #

NFData Quantity 
Instance details

Defined in PlutusCore.Value

Methods

rnf ∷ Quantity → () #

NFData Value 
Instance details

Defined in PlutusCore.Value

Methods

rnf ∷ Value → () #

NFData Version 
Instance details

Defined in PlutusCore.Version

Methods

rnf ∷ Version → () #

NFData CountingSt 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.ExBudgetMode

Methods

rnf ∷ CountingSt → () #

NFData RestrictingSt 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.ExBudgetMode

Methods

rnf ∷ RestrictingSt → () #

NFData CekUserError 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.Internal

Methods

rnf ∷ CekUserError → () #

NFData StepKind 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.Internal

Methods

rnf ∷ StepKind → () #

NFData Inline 
Instance details

Defined in UntypedPlutusCore.Transform.Certify.Hints

Methods

rnf ∷ Inline → () #

NFData CertifiedOptStage 
Instance details

Defined in UntypedPlutusCore.Transform.Certify.Trace

Methods

rnf ∷ CertifiedOptStage → () #

NFData UncertifiedOptStage 
Instance details

Defined in UntypedPlutusCore.Transform.Certify.Trace

Methods

rnf ∷ UncertifiedOptStage → () #

NFData Filler 
Instance details

Defined in PlutusCore.Flat.Filler

Methods

rnf ∷ Filler → () #

NFData SatInt 
Instance details

Defined in Data.SatInt

Methods

rnf ∷ SatInt → () #

NFData EvaluationContext 
Instance details

Defined in PlutusLedgerApi.Common.Eval

Methods

rnf ∷ EvaluationContext → () #

NFData ScriptForEvaluation 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

Methods

rnf ∷ ScriptForEvaluation → () #

NFData ScriptNamedDeBruijn 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

Methods

rnf ∷ ScriptNamedDeBruijn → () #

NFData PlutusLedgerLanguage 
Instance details

Defined in PlutusLedgerApi.Common.Versions

Methods

rnf ∷ PlutusLedgerLanguage → () #

NFData Address 
Instance details

Defined in PlutusLedgerApi.V1.Address

Methods

rnf ∷ Address → () #

NFData LedgerBytes 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Methods

rnf ∷ LedgerBytes → () #

NFData ScriptContext 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ ScriptContext → () #

NFData Credential 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Methods

rnf ∷ Credential → () #

NFData StakingCredential 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Methods

rnf ∷ StakingCredential → () #

NFData PubKeyHash 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Methods

rnf ∷ PubKeyHash → () #

NFData DCert 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Methods

rnf ∷ DCert → () #

NFData Address 
Instance details

Defined in PlutusLedgerApi.V1.Data.Address

Methods

rnf ∷ Address → () #

NFData Credential 
Instance details

Defined in PlutusLedgerApi.V1.Data.Credential

Methods

rnf ∷ Credential → () #

NFData StakingCredential 
Instance details

Defined in PlutusLedgerApi.V1.Data.Credential

Methods

rnf ∷ StakingCredential → () #

NFData DCert 
Instance details

Defined in PlutusLedgerApi.V1.Data.DCert

Methods

rnf ∷ DCert → () #

NFData DiffMilliSeconds 
Instance details

Defined in PlutusLedgerApi.V1.Data.Time

Methods

rnf ∷ DiffMilliSeconds → () #

NFData POSIXTime 
Instance details

Defined in PlutusLedgerApi.V1.Data.Time

Methods

rnf ∷ POSIXTime → () #

NFData RedeemerPtr 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

rnf ∷ RedeemerPtr → () #

NFData ScriptTag 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

rnf ∷ ScriptTag → () #

NFData TxId 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

rnf ∷ TxId → () #

NFData TxOutRef 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

rnf ∷ TxOutRef → () #

NFData AssetClass 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

Methods

rnf ∷ AssetClass → () #

NFData CurrencySymbol 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

Methods

rnf ∷ CurrencySymbol → () #

NFData TokenName 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

Methods

rnf ∷ TokenName → () #

NFData Datum 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnf ∷ Datum → () #

NFData DatumHash 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnf ∷ DatumHash → () #

NFData Redeemer 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnf ∷ Redeemer → () #

NFData RedeemerHash 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnf ∷ RedeemerHash → () #

NFData ScriptError 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnf ∷ ScriptError → () #

NFData ScriptHash 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnf ∷ ScriptHash → () #

NFData DiffMilliSeconds 
Instance details

Defined in PlutusLedgerApi.V1.Time

Methods

rnf ∷ DiffMilliSeconds → () #

NFData POSIXTime 
Instance details

Defined in PlutusLedgerApi.V1.Time

Methods

rnf ∷ POSIXTime → () #

NFData RedeemerPtr 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

rnf ∷ RedeemerPtr → () #

NFData ScriptTag 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

rnf ∷ ScriptTag → () #

NFData TxId 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

rnf ∷ TxId → () #

NFData TxOut 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

rnf ∷ TxOut → () #

NFData TxOutRef 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

rnf ∷ TxOutRef → () #

NFData AssetClass 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

rnf ∷ AssetClass → () #

NFData CurrencySymbol 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

rnf ∷ CurrencySymbol → () #

NFData TokenName 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

rnf ∷ TokenName → () #

NFData Value 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

rnf ∷ Value → () #

NFData ScriptContext 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ ScriptContext → () #

NFData OutputDatum 
Instance details

Defined in PlutusLedgerApi.V2.Data.Tx

Methods

rnf ∷ OutputDatum → () #

NFData OutputDatum 
Instance details

Defined in PlutusLedgerApi.V2.Tx

Methods

rnf ∷ OutputDatum → () #

NFData TxOut 
Instance details

Defined in PlutusLedgerApi.V2.Tx

Methods

rnf ∷ TxOut → () #

NFData ScriptContext 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ ScriptContext → () #

NFData TxId 
Instance details

Defined in PlutusLedgerApi.V3.Data.Tx

Methods

rnf ∷ TxId → () #

NFData TxOutRef 
Instance details

Defined in PlutusLedgerApi.V3.Data.Tx

Methods

rnf ∷ TxOutRef → () #

NFData MintValue 
Instance details

Defined in PlutusLedgerApi.V3.MintValue

Methods

rnf ∷ MintValue → () #

NFData TxId 
Instance details

Defined in PlutusLedgerApi.V3.Tx

Methods

rnf ∷ TxId → () #

NFData TxOutRef 
Instance details

Defined in PlutusLedgerApi.V3.Tx

Methods

rnf ∷ TxOutRef → () #

NFData ScriptContext 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ ScriptContext → () #

NFData POSIXTimeRange 
Instance details

Defined in PlutusLedgerApi.V4.Data.Time

Methods

rnf ∷ POSIXTimeRange → () #

NFData TxOutRef 
Instance details

Defined in PlutusLedgerApi.V4.Data.Tx

Methods

rnf ∷ TxOutRef → () #

NFData AssetClass 
Instance details

Defined in PlutusLedgerApi.V4.Data.Value

Methods

rnf ∷ AssetClass → () #

NFData POSIXTimeRange 
Instance details

Defined in PlutusLedgerApi.V4.Time

Methods

rnf ∷ POSIXTimeRange → () #

NFData TxOutRef 
Instance details

Defined in PlutusLedgerApi.V4.Tx

Methods

rnf ∷ TxOutRef → () #

NFData AssetClass 
Instance details

Defined in PlutusLedgerApi.V4.Value

Methods

rnf ∷ AssetClass → () #

NFData BuiltinByteStringHex 
Instance details

Defined in PlutusTx.Builtins.HasOpaque

Methods

rnf ∷ BuiltinByteStringHex → () #

NFData BuiltinByteStringUtf8 
Instance details

Defined in PlutusTx.Builtins.HasOpaque

Methods

rnf ∷ BuiltinByteStringUtf8 → () #

NFData BuiltinBLS12_381_G1_Element 
Instance details

Defined in PlutusTx.Builtins.Internal

NFData BuiltinBLS12_381_G2_Element 
Instance details

Defined in PlutusTx.Builtins.Internal

NFData BuiltinBLS12_381_MlResult 
Instance details

Defined in PlutusTx.Builtins.Internal

Methods

rnf ∷ BuiltinBLS12_381_MlResult → () #

NFData BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

Methods

rnf ∷ BuiltinByteString → () #

NFData BuiltinData 
Instance details

Defined in PlutusTx.Builtins.Internal

Methods

rnf ∷ BuiltinData → () #

NFData CovLoc 
Instance details

Defined in PlutusTx.Coverage

Methods

rnf ∷ CovLoc → () #

NFData CoverageAnnotation 
Instance details

Defined in PlutusTx.Coverage

Methods

rnf ∷ CoverageAnnotation → () #

NFData CoverageData 
Instance details

Defined in PlutusTx.Coverage

Methods

rnf ∷ CoverageData → () #

NFData CoverageIndex 
Instance details

Defined in PlutusTx.Coverage

Methods

rnf ∷ CoverageIndex → () #

NFData CoverageMetadata 
Instance details

Defined in PlutusTx.Coverage

Methods

rnf ∷ CoverageMetadata → () #

NFData CoverageReport 
Instance details

Defined in PlutusTx.Coverage

Methods

rnf ∷ CoverageReport → () #

NFData Metadata 
Instance details

Defined in PlutusTx.Coverage

Methods

rnf ∷ Metadata → () #

NFData TextDetails 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Methods

rnf ∷ TextDetails → () #

NFData Doc 
Instance details

Defined in Text.PrettyPrint.HughesPJ

Methods

rnf ∷ Doc → () #

NFData Bytes 
Instance details

Defined in Data.ByteArray.Bytes

Methods

rnf ∷ Bytes → () #

NFData StdGen 
Instance details

Defined in System.Random.Internal

Methods

rnf ∷ StdGen → () #

NFData Scientific 
Instance details

Defined in Data.Scientific

Methods

rnf ∷ Scientific → () #

NFData UnicodeException 
Instance details

Defined in Data.Text.Encoding.Error

Methods

rnf ∷ UnicodeException → () #

NFData Text 
Instance details

Defined in Data.Text

Methods

rnf ∷ Text → () #

NFData Text 
Instance details

Defined in Data.Text.Lazy

Methods

rnf ∷ Text → () #

NFData ShortText 
Instance details

Defined in Data.Text.Short.Internal

Methods

rnf ∷ ShortText → () #

NFData Month 
Instance details

Defined in Data.Time.Calendar.Month

Methods

rnf ∷ Month → () #

NFData Quarter 
Instance details

Defined in Data.Time.Calendar.Quarter

Methods

rnf ∷ Quarter → () #

NFData QuarterOfYear 
Instance details

Defined in Data.Time.Calendar.Quarter

Methods

rnf ∷ QuarterOfYear → () #

NFData NominalDiffTime 
Instance details

Defined in Data.Time.Clock.Internal.NominalDiffTime

Methods

rnf ∷ NominalDiffTime → () #

NFData UTCTime 
Instance details

Defined in Data.Time.Clock.Internal.UTCTime

Methods

rnf ∷ UTCTime → () #

NFData LocalTime 
Instance details

Defined in Data.Time.LocalTime.Internal.LocalTime

Methods

rnf ∷ LocalTime → () #

NFData ZonedTime 
Instance details

Defined in Data.Time.LocalTime.Internal.ZonedTime

Methods

rnf ∷ ZonedTime → () #

NFData EditExpr 
Instance details

Defined in Data.TreeDiff.Expr

Methods

rnf ∷ EditExpr → () #

NFData Expr 
Instance details

Defined in Data.TreeDiff.Expr

Methods

rnf ∷ Expr → () #

NFData UUID 
Instance details

Defined in Data.UUID.Types.Internal

Methods

rnf ∷ UUID → () #

NFData Integer 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Integer → () #

NFData Natural

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Natural → () #

NFData () 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ () → () #

NFData Bool 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Bool → () #

NFData Char 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Char → () #

NFData Double 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Double → () #

NFData Float 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Float → () #

NFData Int 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Int → () #

NFData Word 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Word → () #

NFData a ⇒ NFData (Only a) 
Instance details

Defined in Data.Tuple.Only

Methods

rnf ∷ Only a → () #

NFData v ⇒ NFData (KeyMap v) 
Instance details

Defined in Data.Aeson.KeyMap

Methods

rnf ∷ KeyMap v → () #

NFData a ⇒ NFData (IResult a) 
Instance details

Defined in Data.Aeson.Types.Internal

Methods

rnf ∷ IResult a → () #

NFData a ⇒ NFData (Result a) 
Instance details

Defined in Data.Aeson.Types.Internal

Methods

rnf ∷ Result a → () #

NFData a ⇒ NFData (Graph a) 
Instance details

Defined in Algebra.Graph

Methods

rnf ∷ Graph a → () #

NFData a ⇒ NFData (AdjacencyMap a) 
Instance details

Defined in Algebra.Graph.AdjacencyMap

Methods

rnf ∷ AdjacencyMap a → () #

NFData a ⇒ NFData (AdjacencyMap a) 
Instance details

Defined in Algebra.Graph.NonEmpty.AdjacencyMap

Methods

rnf ∷ AdjacencyMap a → () #

NFData a ⇒ NFData (Relation a) 
Instance details

Defined in Algebra.Graph.Relation

Methods

rnf ∷ Relation a → () #

NFData a ⇒ NFData (Relation a) 
Instance details

Defined in Algebra.Graph.Relation.Symmetric

Methods

rnf ∷ Relation a → () #

NFData a ⇒ NFData (Graph a) 
Instance details

Defined in Algebra.Graph.Undirected

Methods

rnf ∷ Graph a → () #

NFData (MutableByteArray s)

Since: deepseq-1.4.8.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ MutableByteArray s → () #

NFData a ⇒ NFData (Complex a) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Complex a → () #

NFData a ⇒ NFData (First a)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ First a → () #

NFData a ⇒ NFData (Last a)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Last a → () #

NFData a ⇒ NFData (Max a)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Max a → () #

NFData a ⇒ NFData (Min a)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Min a → () #

NFData m ⇒ NFData (WrappedMonoid m)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ WrappedMonoid m → () #

NFData (PossessionProofDSIGN (BLS12381DSIGN curve)) 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnf ∷ PossessionProofDSIGN (BLS12381DSIGN curve) → () #

NFData (SigDSIGN (BLS12381DSIGN curve)) 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnf ∷ SigDSIGN (BLS12381DSIGN curve) → () #

NFData (SigDSIGN EcdsaSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Methods

rnf ∷ SigDSIGN EcdsaSecp256k1DSIGN → () #

NFData (SigDSIGN Ed25519DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Methods

rnf ∷ SigDSIGN Ed25519DSIGN → () #

NFData (SigDSIGN MockDSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Methods

rnf ∷ SigDSIGN MockDSIGN → () #

NFData (SigDSIGN SchnorrSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

NFData (SignKeyDSIGN (BLS12381DSIGN curve)) 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnf ∷ SignKeyDSIGN (BLS12381DSIGN curve) → () #

NFData (SignKeyDSIGN EcdsaSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

NFData (SignKeyDSIGN Ed25519DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Methods

rnf ∷ SignKeyDSIGN Ed25519DSIGN → () #

NFData (SignKeyDSIGN Ed448DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Methods

rnf ∷ SignKeyDSIGN Ed448DSIGN → () #

NFData (SignKeyDSIGN MockDSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Methods

rnf ∷ SignKeyDSIGN MockDSIGN → () #

NFData (SignKeyDSIGN SchnorrSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

NFData (SignKeyDSIGNM Ed25519DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Methods

rnf ∷ SignKeyDSIGNM Ed25519DSIGN → () #

NFData (VerKeyDSIGN (BLS12381DSIGN curve)) 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnf ∷ VerKeyDSIGN (BLS12381DSIGN curve) → () #

NFData (VerKeyDSIGN EcdsaSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

NFData (VerKeyDSIGN Ed25519DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Methods

rnf ∷ VerKeyDSIGN Ed25519DSIGN → () #

NFData (VerKeyDSIGN Ed448DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Methods

rnf ∷ VerKeyDSIGN Ed448DSIGN → () #

NFData (VerKeyDSIGN MockDSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Methods

rnf ∷ VerKeyDSIGN MockDSIGN → () #

NFData (VerKeyDSIGN SchnorrSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

NFData (Point curve) 
Instance details

Defined in Cardano.Crypto.EllipticCurve.BLS12_381.Internal

Methods

rnf ∷ Point curve → () #

(NFData (SigDSIGN d), NFData (VerKeyDSIGN d)) ⇒ NFData (SigKES (CompactSingleKES d)) 
Instance details

Defined in Cardano.Crypto.KES.CompactSingle

Methods

rnf ∷ SigKES (CompactSingleKES d) → () #

(NFData (SigKES d), NFData (VerKeyKES d)) ⇒ NFData (SigKES (CompactSumKES h d)) 
Instance details

Defined in Cardano.Crypto.KES.CompactSum

Methods

rnf ∷ SigKES (CompactSumKES h d) → () #

NFData (SigDSIGN d) ⇒ NFData (SigKES (SingleKES d)) 
Instance details

Defined in Cardano.Crypto.KES.Single

Methods

rnf ∷ SigKES (SingleKES d) → () #

(NFData (SigKES d), NFData (VerKeyKES d)) ⇒ NFData (SigKES (SumKES h d)) 
Instance details

Defined in Cardano.Crypto.KES.Sum

Methods

rnf ∷ SigKES (SumKES h d) → () #

NFData (SignKeyDSIGNM d) ⇒ NFData (SignKeyKES (CompactSingleKES d)) 
Instance details

Defined in Cardano.Crypto.KES.CompactSingle

Methods

rnf ∷ SignKeyKES (CompactSingleKES d) → () #

(NFData (SignKeyKES d), NFData (VerKeyKES d)) ⇒ NFData (SignKeyKES (CompactSumKES h d)) 
Instance details

Defined in Cardano.Crypto.KES.CompactSum

Methods

rnf ∷ SignKeyKES (CompactSumKES h d) → () #

NFData (SignKeyDSIGNM d) ⇒ NFData (SignKeyKES (SingleKES d)) 
Instance details

Defined in Cardano.Crypto.KES.Single

Methods

rnf ∷ SignKeyKES (SingleKES d) → () #

(NFData (SignKeyKES d), NFData (VerKeyKES d)) ⇒ NFData (SignKeyKES (SumKES h d)) 
Instance details

Defined in Cardano.Crypto.KES.Sum

Methods

rnf ∷ SignKeyKES (SumKES h d) → () #

NFData (VerKeyDSIGN d) ⇒ NFData (VerKeyKES (CompactSingleKES d)) 
Instance details

Defined in Cardano.Crypto.KES.CompactSingle

Methods

rnf ∷ VerKeyKES (CompactSingleKES d) → () #

NFData (VerKeyKES (CompactSumKES h d)) 
Instance details

Defined in Cardano.Crypto.KES.CompactSum

Methods

rnf ∷ VerKeyKES (CompactSumKES h d) → () #

NFData (VerKeyKES (MockKES t)) 
Instance details

Defined in Cardano.Crypto.KES.Mock

Methods

rnf ∷ VerKeyKES (MockKES t) → () #

NFData (VerKeyDSIGN d) ⇒ NFData (VerKeyKES (SingleKES d)) 
Instance details

Defined in Cardano.Crypto.KES.Single

Methods

rnf ∷ VerKeyKES (SingleKES d) → () #

NFData (VerKeyKES (SumKES h d)) 
Instance details

Defined in Cardano.Crypto.KES.Sum

Methods

rnf ∷ VerKeyKES (SumKES h d) → () #

NFData (MLockedSizedBytes n) 
Instance details

Defined in Cardano.Crypto.Libsodium.MLockedBytes.Internal

Methods

rnf ∷ MLockedSizedBytes n → () #

NFData (MLockedSeed n) 
Instance details

Defined in Cardano.Crypto.Libsodium.MLockedSeed

Methods

rnf ∷ MLockedSeed n → () #

NFData (MLockedForeignPtr a) 
Instance details

Defined in Cardano.Crypto.Libsodium.Memory.Internal

Methods

rnf ∷ MLockedForeignPtr a → () #

NFData (PackedBytes n) 
Instance details

Defined in Cardano.Crypto.PackedBytes.Internal

Methods

rnf ∷ PackedBytes n → () #

NFData (PinnedSizedBytes n) 
Instance details

Defined in Cardano.Crypto.PinnedSizedBytes

Methods

rnf ∷ PinnedSizedBytes n → () #

NFData (CertVRF MockVRF) 
Instance details

Defined in Cardano.Crypto.VRF.Mock

Methods

rnf ∷ CertVRF MockVRF → () #

NFData (CertVRF NeverVRF) 
Instance details

Defined in Cardano.Crypto.VRF.NeverUsed

Methods

rnf ∷ CertVRF NeverVRF → () #

NFData (CertVRF SimpleVRF) 
Instance details

Defined in Cardano.Crypto.VRF.Simple

Methods

rnf ∷ CertVRF SimpleVRF → () #

NFData (CertVRF PraosVRF) 
Instance details

Defined in Cardano.Crypto.VRF.Praos

Methods

rnf ∷ CertVRF PraosVRF → () #

NFData (CertVRF PraosBatchCompatVRF) 
Instance details

Defined in Cardano.Crypto.VRF.PraosBatchCompat

Methods

rnf ∷ CertVRF PraosBatchCompatVRF → () #

NFData (OutputVRF v) 
Instance details

Defined in Cardano.Crypto.VRF.Class

Methods

rnf ∷ OutputVRF v → () #

NFData (SignKeyVRF MockVRF) 
Instance details

Defined in Cardano.Crypto.VRF.Mock

Methods

rnf ∷ SignKeyVRF MockVRF → () #

NFData (SignKeyVRF NeverVRF) 
Instance details

Defined in Cardano.Crypto.VRF.NeverUsed

Methods

rnf ∷ SignKeyVRF NeverVRF → () #

NFData (SignKeyVRF SimpleVRF) 
Instance details

Defined in Cardano.Crypto.VRF.Simple

Methods

rnf ∷ SignKeyVRF SimpleVRF → () #

NFData (SignKeyVRF PraosVRF) 
Instance details

Defined in Cardano.Crypto.VRF.Praos

Methods

rnf ∷ SignKeyVRF PraosVRF → () #

NFData (SignKeyVRF PraosBatchCompatVRF) 
Instance details

Defined in Cardano.Crypto.VRF.PraosBatchCompat

NFData (VerKeyVRF MockVRF) 
Instance details

Defined in Cardano.Crypto.VRF.Mock

Methods

rnf ∷ VerKeyVRF MockVRF → () #

NFData (VerKeyVRF NeverVRF) 
Instance details

Defined in Cardano.Crypto.VRF.NeverUsed

Methods

rnf ∷ VerKeyVRF NeverVRF → () #

NFData (VerKeyVRF SimpleVRF) 
Instance details

Defined in Cardano.Crypto.VRF.Simple

Methods

rnf ∷ VerKeyVRF SimpleVRF → () #

NFData (VerKeyVRF PraosVRF) 
Instance details

Defined in Cardano.Crypto.VRF.Praos

Methods

rnf ∷ VerKeyVRF PraosVRF → () #

NFData (VerKeyVRF PraosBatchCompatVRF) 
Instance details

Defined in Cardano.Crypto.VRF.PraosBatchCompat

NFData a ⇒ NFData (AProtocolMagic a) 
Instance details

Defined in Cardano.Crypto.ProtocolMagic

Methods

rnf ∷ AProtocolMagic a → () #

NFData (RedeemSignature a) 
Instance details

Defined in Cardano.Crypto.Signing.Redeem.Signature

Methods

rnf ∷ RedeemSignature a → () #

NFData (Signature a) 
Instance details

Defined in Cardano.Crypto.Signing.Signature

Methods

rnf ∷ Signature a → () #

NFData a ⇒ NFData (OSet a) 
Instance details

Defined in Data.OSet.Strict

Methods

rnf ∷ OSet a → () #

NFData a ⇒ NFData (Sized a) 
Instance details

Defined in Cardano.Ledger.Binary.Decoding.Sized

Methods

rnf ∷ Sized a → () #

NFData h ⇒ NFData (Attributes h) 
Instance details

Defined in Cardano.Chain.Common.Attributes

Methods

rnf ∷ Attributes h → () #

NFData a ⇒ NFData (MerkleNode a) 
Instance details

Defined in Cardano.Chain.Common.Merkle

Methods

rnf ∷ MerkleNode a → () #

NFData (MerkleRoot a) 
Instance details

Defined in Cardano.Chain.Common.Merkle

Methods

rnf ∷ MerkleRoot a → () #

NFData a ⇒ NFData (MerkleTree a) 
Instance details

Defined in Cardano.Chain.Common.Merkle

Methods

rnf ∷ MerkleTree a → () #

NFData a ⇒ NFData (AProposal a) 
Instance details

Defined in Cardano.Chain.Update.Proposal

Methods

rnf ∷ AProposal a → () #

NFData a ⇒ NFData (AVote a) 
Instance details

Defined in Cardano.Chain.Update.Vote

Methods

rnf ∷ AVote a → () #

NFData a ⇒ NFData (Exclusive a) 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Exclusive a → () #

NFData a ⇒ NFData (Inclusive a) 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Inclusive a → () #

NFData a ⇒ NFData (NonZero a) 
Instance details

Defined in Cardano.Ledger.BaseTypes.NonZero

Methods

rnf ∷ NonZero a → () #

NFData (CompactForm Coin) 
Instance details

Defined in Cardano.Ledger.Coin

Methods

rnf ∷ CompactForm Coin → () #

NFData (CompactForm DeltaCoin) 
Instance details

Defined in Cardano.Ledger.Coin

Methods

rnf ∷ CompactForm DeltaCoin → () #

NFData (PParamsHKD Identity era) ⇒ NFData (PParams era) 
Instance details

Defined in Cardano.Ledger.Core.PParams

Methods

rnf ∷ PParams era → () #

NFData (PParamsHKD StrictMaybe era) ⇒ NFData (PParamsUpdate era) 
Instance details

Defined in Cardano.Ledger.Core.PParams

Methods

rnf ∷ PParamsUpdate era → () #

NFData (PoolCert era) 
Instance details

Defined in Cardano.Ledger.Core.TxCert

Methods

rnf ∷ PoolCert era → () #

NFData (Credential r) 
Instance details

Defined in Cardano.Ledger.Credential

Methods

rnf ∷ Credential r → () #

NFData (NoUpdate a) 
Instance details

Defined in Cardano.Ledger.HKD

Methods

rnf ∷ NoUpdate a → () #

NFData (SafeHash i) 
Instance details

Defined in Cardano.Ledger.Hashes

Methods

rnf ∷ SafeHash i → () #

NFData (VRFVerKeyHash r) 
Instance details

Defined in Cardano.Ledger.Hashes

Methods

rnf ∷ VRFVerKeyHash r → () #

NFData (KeyHash r) 
Instance details

Defined in Cardano.Ledger.Keys.Internal

Methods

rnf ∷ KeyHash r → () #

NFData (VKey kd) 
Instance details

Defined in Cardano.Ledger.Keys.Internal

Methods

rnf ∷ VKey kd → () #

NFData (WitVKey kr) 
Instance details

Defined in Cardano.Ledger.Keys.WitVKey

Methods

rnf ∷ WitVKey kr → () #

NFData t ⇒ NFData (MemoBytes t) 
Instance details

Defined in Cardano.Ledger.MemoBytes.Internal

Methods

rnf ∷ MemoBytes t → () #

NFData (Data era) 
Instance details

Defined in Cardano.Ledger.Plutus.Data

Methods

rnf ∷ Data era → () #

NFData (PlutusData era) 
Instance details

Defined in Cardano.Ledger.Plutus.Data

Methods

rnf ∷ PlutusData era → () #

NFData a ⇒ NFData (ExUnits' a) 
Instance details

Defined in Cardano.Ledger.Plutus.ExUnits

Methods

rnf ∷ ExUnits' a → () #

NFData (PlutusScriptContext l) ⇒ NFData (LegacyPlutusArgs l) 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ LegacyPlutusArgs l → () #

NFData (Plutus l) 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ Plutus l → () #

NFData (PlutusArgs 'PlutusV1) 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ PlutusArgs 'PlutusV1 → () #

NFData (PlutusArgs 'PlutusV2) 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ PlutusArgs 'PlutusV2 → () #

NFData (PlutusArgs 'PlutusV3) 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ PlutusArgs 'PlutusV3 → () #

NFData (PlutusArgs 'PlutusV4) 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ PlutusArgs 'PlutusV4 → () #

NFData (PlutusRunnable l) 
Instance details

Defined in Cardano.Ledger.Plutus.Language

Methods

rnf ∷ PlutusRunnable l → () #

NFData (CommitteeState era) 
Instance details

Defined in Cardano.Ledger.State.CertState

Methods

rnf ∷ CommitteeState era → () #

NFData (Accounts era) ⇒ NFData (DState era) 
Instance details

Defined in Cardano.Ledger.State.CertState

Methods

rnf ∷ DState era → () #

NFData (PState era) 
Instance details

Defined in Cardano.Ledger.State.CertState

Methods

rnf ∷ PState era → () #

NFData (PParams era) ⇒ NFData (FuturePParams era) 
Instance details

Defined in Cardano.Ledger.State.Governance

Methods

rnf ∷ FuturePParams era → () #

NFData (SnapShots era) 
Instance details

Defined in Cardano.Ledger.State.SnapShots

Methods

rnf ∷ SnapShots era → () #

NFData (StakePoolParams era) 
Instance details

Defined in Cardano.Ledger.State.StakePool

Methods

rnf ∷ StakePoolParams era → () #

(Era era, NFData (Script era)) ⇒ NFData (ScriptsProvided era) 
Instance details

Defined in Cardano.Ledger.State.UTxO

Methods

rnf ∷ ScriptsProvided era → () #

(Era era, NFData (TxOut era)) ⇒ NFData (UTxO era) 
Instance details

Defined in Cardano.Ledger.State.UTxO

Methods

rnf ∷ UTxO era → () #

NFData (KeyPair kd) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.KeyPair

Methods

rnf ∷ KeyPair kd → () #

NFData a ⇒ NFData (WithOrigin a) 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnf ∷ WithOrigin a → () #

NFData a ⇒ NFData (StrictMaybe a) 
Instance details

Defined in Data.Maybe.Strict

Methods

rnf ∷ StrictMaybe a → () #

NFData a ⇒ NFData (StrictSeq a) 
Instance details

Defined in Data.Sequence.Strict

Methods

rnf ∷ StrictSeq a → () #

NFData a ⇒ NFData (SCC a) 
Instance details

Defined in Data.Graph

Methods

rnf ∷ SCC a → () #

NFData a ⇒ NFData (IntMap a) 
Instance details

Defined in Data.IntMap.Internal

Methods

rnf ∷ IntMap a → () #

NFData a ⇒ NFData (Digit a) 
Instance details

Defined in Data.Sequence.Internal

Methods

rnf ∷ Digit a → () #

NFData a ⇒ NFData (Elem a) 
Instance details

Defined in Data.Sequence.Internal

Methods

rnf ∷ Elem a → () #

NFData a ⇒ NFData (FingerTree a) 
Instance details

Defined in Data.Sequence.Internal

Methods

rnf ∷ FingerTree a → () #

NFData a ⇒ NFData (Node a) 
Instance details

Defined in Data.Sequence.Internal

Methods

rnf ∷ Node a → () #

NFData a ⇒ NFData (Seq a) 
Instance details

Defined in Data.Sequence.Internal

Methods

rnf ∷ Seq a → () #

NFData a ⇒ NFData (Set a) 
Instance details

Defined in Data.Set.Internal

Methods

rnf ∷ Set a → () #

NFData a ⇒ NFData (Tree a) 
Instance details

Defined in Data.Tree

Methods

rnf ∷ Tree a → () #

NFData (Context a) 
Instance details

Defined in Crypto.Hash.Types

Methods

rnf ∷ Context a → () #

NFData (Digest a) 
Instance details

Defined in Crypto.Hash.Types

Methods

rnf ∷ Digest a → () #

NFData1 f ⇒ NFData (Fix f) 
Instance details

Defined in Data.Fix

Methods

rnf ∷ Fix f → () #

NFData a ⇒ NFData (DNonEmpty a) 
Instance details

Defined in Data.DList.DNonEmpty.Internal

Methods

rnf ∷ DNonEmpty a → () #

NFData a ⇒ NFData (DList a) 
Instance details

Defined in Data.DList.Internal

Methods

rnf ∷ DList a → () #

NFData h ⇒ NFData (Handle h) 
Instance details

Defined in System.FS.API.Types

Methods

rnf ∷ Handle h → () #

NFData a ⇒ NFData (NonEmpty a)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ NonEmpty a → () #

NFData a ⇒ NFData (Identity a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Identity a → () #

NFData a ⇒ NFData (First a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ First a → () #

NFData a ⇒ NFData (Last a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Last a → () #

NFData a ⇒ NFData (Down a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Down a → () #

NFData a ⇒ NFData (Dual a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Dual a → () #

NFData a ⇒ NFData (Product a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Product a → () #

NFData a ⇒ NFData (Sum a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Sum a → () #

NFData a ⇒ NFData (ZipList a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ ZipList a → () #

NFData (IORef a)

NOTE: Only strict in the reference and not the referenced value.

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ IORef a → () #

NFData (MVar a)

NOTE: Only strict in the reference and not the referenced value.

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ MVar a → () #

NFData (FunPtr a)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ FunPtr a → () #

NFData (Ptr a)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Ptr a → () #

NFData a ⇒ NFData (Ratio a) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Ratio a → () #

NFData (StableName a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ StableName a → () #

NFData a ⇒ NFData (Hashed a) 
Instance details

Defined in Data.Hashable.Class

Methods

rnf ∷ Hashed a → () #

NFData a ⇒ NFData (ErrorFancy a) 
Instance details

Defined in Text.Megaparsec.Error

Methods

rnf ∷ ErrorFancy a → () #

NFData t ⇒ NFData (ErrorItem t) 
Instance details

Defined in Text.Megaparsec.Error

Methods

rnf ∷ ErrorItem t → () #

NFData s ⇒ NFData (PosState s) 
Instance details

Defined in Text.Megaparsec.State

Methods

rnf ∷ PosState s → () #

NFData (CaserBuiltin uni) 
Instance details

Defined in PlutusCore.Builtin.Case

Methods

rnf ∷ CaserBuiltin uni → () #

NFData (BuiltinSemanticsVariant DefaultFun) 
Instance details

Defined in PlutusCore.Default.Builtins

NFData (BuiltinRuntime val) 
Instance details

Defined in PlutusCore.Builtin.Runtime

Methods

rnf ∷ BuiltinRuntime val → () #

NFData ann ⇒ NFData (Kind ann) 
Instance details

Defined in PlutusCore.Core.Type

Methods

rnf ∷ Kind ann → () #

NFData a ⇒ NFData (Normalized a) 
Instance details

Defined in PlutusCore.Core.Type

Methods

rnf ∷ Normalized a → () #

NFData a ⇒ NFData (ExpectedShapeOr a) 
Instance details

Defined in PlutusCore.Error

Methods

rnf ∷ ExpectedShapeOr a → () #

NFData ann ⇒ NFData (UniqueError ann) 
Instance details

Defined in PlutusCore.Error

Methods

rnf ∷ UniqueError ann → () #

AllArgumentModels NFData f ⇒ NFData (BuiltinCostModelBase f) 
Instance details

Defined in PlutusCore.Evaluation.Machine.BuiltinCostModel

Methods

rnf ∷ BuiltinCostModelBase f → () #

NFData model ⇒ NFData (CostingFun model) 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Methods

rnf ∷ CostingFun model → () #

NFData (MachineError fun) 
Instance details

Defined in PlutusCore.Evaluation.Machine.Exception

Methods

rnf ∷ MachineError fun → () #

NFData a ⇒ NFData (EvaluationResult a) 
Instance details

Defined in PlutusCore.Evaluation.Result

Methods

rnf ∷ EvaluationResult a → () #

Closed uni ⇒ NFData (SomeTypeIn uni) 
Instance details

Defined in Universe.Core

Methods

rnf ∷ SomeTypeIn uni → () #

AllBF NFData f CekMachineCostsBase ⇒ NFData (CekMachineCostsBase f) 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.CekMachineCosts

Methods

rnf ∷ CekMachineCostsBase f → () #

NFData fun ⇒ NFData (CekExTally fun) 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.ExBudgetMode

Methods

rnf ∷ CekExTally fun → () #

NFData fun ⇒ NFData (TallyingSt fun) 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.ExBudgetMode

Methods

rnf ∷ TallyingSt fun → () #

NFData fun ⇒ NFData (ExBudgetCategory fun) 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.Internal

Methods

rnf ∷ ExBudgetCategory fun → () #

NFData term ⇒ NFData (Hints term) 
Instance details

Defined in UntypedPlutusCore.Transform.Certify.Hints

Methods

rnf ∷ Hints term → () #

NFData term ⇒ NFData (InlinePlus term) 
Instance details

Defined in UntypedPlutusCore.Transform.Certify.Hints

Methods

rnf ∷ InlinePlus term → () #

NFData a ⇒ NFData (PostAligned a) 
Instance details

Defined in PlutusCore.Flat.Filler

Methods

rnf ∷ PostAligned a → () #

NFData a ⇒ NFData (PreAligned a) 
Instance details

Defined in PlutusCore.Flat.Filler

Methods

rnf ∷ PreAligned a → () #

NFData (Extended a) 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

Methods

rnf ∷ Extended a → () #

NFData (Interval a) 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

Methods

rnf ∷ Interval a → () #

NFData (LowerBound a) 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

Methods

rnf ∷ LowerBound a → () #

NFData (UpperBound a) 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

Methods

rnf ∷ UpperBound a → () #

NFData a ⇒ NFData (Extended a) 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

rnf ∷ Extended a → () #

NFData a ⇒ NFData (Interval a) 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

rnf ∷ Interval a → () #

NFData a ⇒ NFData (LowerBound a) 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

rnf ∷ LowerBound a → () #

NFData a ⇒ NFData (UpperBound a) 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

rnf ∷ UpperBound a → () #

NFData a ⇒ NFData (AnnotDetails a) 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Methods

rnf ∷ AnnotDetails a → () #

NFData a ⇒ NFData (Doc a) 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Methods

rnf ∷ Doc a → () #

NFData a ⇒ NFData (Array a) 
Instance details

Defined in Data.Primitive.Array

Methods

rnf ∷ Array a → () #

NFData (PrimArray a) 
Instance details

Defined in Data.Primitive.PrimArray

Methods

rnf ∷ PrimArray a → () #

NFData a ⇒ NFData (SmallArray a) 
Instance details

Defined in Data.Primitive.SmallArray

Methods

rnf ∷ SmallArray a → () #

NFData a ⇒ NFData (Leaf a) 
Instance details

Defined in Data.RAList.Tree.Internal

Methods

rnf ∷ Leaf a → () #

NFData g ⇒ NFData (StateGen g) 
Instance details

Defined in System.Random.Internal

Methods

rnf ∷ StateGen g → () #

NFData g ⇒ NFData (AtomicGen g) 
Instance details

Defined in System.Random.Stateful

Methods

rnf ∷ AtomicGen g → () #

NFData g ⇒ NFData (IOGen g) 
Instance details

Defined in System.Random.Stateful

Methods

rnf ∷ IOGen g → () #

NFData g ⇒ NFData (STGen g) 
Instance details

Defined in System.Random.Stateful

Methods

rnf ∷ STGen g → () #

NFData g ⇒ NFData (TGen g) 
Instance details

Defined in System.Random.Stateful

Methods

rnf ∷ TGen g → () #

NFData a ⇒ NFData (Maybe a) 
Instance details

Defined in Data.Strict.Maybe

Methods

rnf ∷ Maybe a → () #

NFData a ⇒ NFData (Edit a) 
Instance details

Defined in Data.TreeDiff.List

Methods

rnf ∷ Edit a → () #

NFData v ⇒ NFData (Val v) 
Instance details

Defined in Data.TreeDiff.OMap

Methods

rnf ∷ Val v → () #

NFData a ⇒ NFData (HashSet a) 
Instance details

Defined in Data.HashSet.Internal

Methods

rnf ∷ HashSet a → () #

NFData a ⇒ NFData (Vector a) 
Instance details

Defined in Data.Vector

Methods

rnf ∷ Vector a → () #

NFData (Vector a) 
Instance details

Defined in Data.Vector.Primitive

Methods

rnf ∷ Vector a → () #

NFData (Vector a) 
Instance details

Defined in Data.Vector.Storable

Methods

rnf ∷ Vector a → () #

NFData a ⇒ NFData (Vector a) 
Instance details

Defined in Data.Vector.Strict

Methods

rnf ∷ Vector a → () #

NFData (Vector a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

rnf ∷ Vector a → () #

NFData a ⇒ NFData (Doc a) 
Instance details

Defined in Text.PrettyPrint.Annotated.WL

Methods

rnf ∷ Doc a → () #

NFData a ⇒ NFData (SimpleDoc a) 
Instance details

Defined in Text.PrettyPrint.Annotated.WL

Methods

rnf ∷ SimpleDoc a → () #

NFData a ⇒ NFData (Maybe a) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Maybe a → () #

NFData a ⇒ NFData (Solo a)

Since: deepseq-1.4.6.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Solo a → () #

NFData a ⇒ NFData [a] 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ [a] → () #

(NFData e, NFData a) ⇒ NFData (Graph e a) 
Instance details

Defined in Algebra.Graph.Labelled

Methods

rnf ∷ Graph e a → () #

(NFData a, NFData e) ⇒ NFData (AdjacencyMap e a) 
Instance details

Defined in Algebra.Graph.Labelled.AdjacencyMap

Methods

rnf ∷ AdjacencyMap e a → () #

(NFData i, NFData r) ⇒ NFData (IResult i r) 
Instance details

Defined in Data.Attoparsec.Internal.Types

Methods

rnf ∷ IResult i r → () #

NFData (Fixed a)

Since: deepseq-1.3.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Fixed a → () #

(NFData a, NFData b) ⇒ NFData (Arg a b)

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Arg a b → () #

(NFData a, NFData b) ⇒ NFData (Bimap a b) 
Instance details

Defined in Data.Bimap

Methods

rnf ∷ Bimap a b → () #

NFData (SigDSIGN v) ⇒ NFData (SignedDSIGN v a) 
Instance details

Defined in Cardano.Crypto.DSIGN.Class

Methods

rnf ∷ SignedDSIGN v a → () #

NFData (Hash h a) 
Instance details

Defined in Cardano.Crypto.Hash.Class

Methods

rnf ∷ Hash h a → () #

NFData (AbstractHash algo a) 
Instance details

Defined in Cardano.Crypto.Hashing

Methods

rnf ∷ AbstractHash algo a → () #

(NFData k, NFData v) ⇒ NFData (OMap k v) 
Instance details

Defined in Data.OMap.Strict

Methods

rnf ∷ OMap k v → () #

(NFData b, NFData a) ⇒ NFData (Annotated b a) 
Instance details

Defined in Cardano.Ledger.Binary.Decoding.Annotated

Methods

rnf ∷ Annotated b a → () #

NFData a ⇒ NFData (Mismatch r a) 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Mismatch r a → () #

(NFData h, NFData (BlockBody era)) ⇒ NFData (Block h era) 
Instance details

Defined in Cardano.Ledger.Block

Methods

rnf ∷ Block h era → () #

NFData (VoidEraRule rule era) 
Instance details

Defined in Cardano.Ledger.Core.Era

Methods

rnf ∷ VoidEraRule rule era → () #

(NFData k, NFData a) ⇒ NFData (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

rnf ∷ Map k a → () #

(NFData a, NFData b) ⇒ NFData (Array a b) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Array a b → () #

(NFData a, NFData b) ⇒ NFData (Either a b) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Either a b → () #

NFData (Proxy a)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Proxy a → () #

NFData (TypeRep a)

Since: deepseq-1.4.8.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ TypeRep a → () #

NFData (STRef s a)

NOTE: Only strict in the reference and not the referenced value.

Since: deepseq-1.4.2.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ STRef s a → () #

(NFData (Token s), NFData e) ⇒ NFData (ParseError s e) 
Instance details

Defined in Text.Megaparsec.Error

Methods

rnf ∷ ParseError s e → () #

(NFData s, NFData (Token s), NFData e) ⇒ NFData (ParseErrorBundle s e) 
Instance details

Defined in Text.Megaparsec.Error

Methods

rnf ∷ ParseErrorBundle s e → () #

(NFData s, NFData (ParseError s e)) ⇒ NFData (State s e) 
Instance details

Defined in Text.Megaparsec.State

Methods

rnf ∷ State s e → () #

(NFData k, NFData a) ⇒ NFData (MonoidalHashMap k a) 
Instance details

Defined in Data.HashMap.Monoidal

Methods

rnf ∷ MonoidalHashMap k a → () #

(NFData k, NFData a) ⇒ NFData (MonoidalMap k a) 
Instance details

Defined in Data.Map.Monoidal

Methods

rnf ∷ MonoidalMap k a → () #

(Bounded fun, Enum fun) ⇒ NFData (BuiltinsRuntime fun val) 
Instance details

Defined in PlutusCore.Builtin.Runtime

Methods

rnf ∷ BuiltinsRuntime fun val → () #

(NFData structural, NFData operational) ⇒ NFData (EvaluationError structural operational) 
Instance details

Defined in PlutusCore.Evaluation.Error

Methods

rnf ∷ EvaluationError structural operational → () #

(NFData err, NFData cause) ⇒ NFData (ErrorWithCause err cause) 
Instance details

Defined in PlutusCore.Evaluation.ErrorWithCause

Methods

rnf ∷ ErrorWithCause err cause → () #

(Closed uni, Everywhere uni NFData) ⇒ NFData (ValueOf uni a) 
Instance details

Defined in Universe.Core

Methods

rnf ∷ ValueOf uni a → () #

(NFData ann, Closed uni) ⇒ NFData (TypeErrorExt uni ann) 
Instance details

Defined in PlutusIR.Error

Methods

rnf ∷ TypeErrorExt uni ann → () #

(NFData k, NFData v) ⇒ NFData (Map k v) 
Instance details

Defined in PlutusTx.AssocMap

Methods

rnf ∷ Map k v → () #

NFData (MutablePrimArray s a) 
Instance details

Defined in Data.Primitive.PrimArray

Methods

rnf ∷ MutablePrimArray s a → () #

NFData (f a) ⇒ NFData (Node f a) 
Instance details

Defined in Data.RAList.Tree.Internal

Methods

rnf ∷ Node f a → () #

GNFData tag ⇒ NFData (Some tag) 
Instance details

Defined in Data.Some.Newtype

Methods

rnf ∷ Some tag → () #

(NFData a, NFData b) ⇒ NFData (Either a b) 
Instance details

Defined in Data.Strict.Either

Methods

rnf ∷ Either a b → () #

(NFData a, NFData b) ⇒ NFData (These a b) 
Instance details

Defined in Data.Strict.These

Methods

rnf ∷ These a b → () #

(NFData a, NFData b) ⇒ NFData (Pair a b) 
Instance details

Defined in Data.Strict.Tuple

Methods

rnf ∷ Pair a b → () #

(NFData a, NFData b) ⇒ NFData (These a b)

Since: these-0.7.1

Instance details

Defined in Data.These

Methods

rnf ∷ These a b → () #

(NFData k, NFData v) ⇒ NFData (OMap k v) 
Instance details

Defined in Data.TreeDiff.OMap

Methods

rnf ∷ OMap k v → () #

(NFData k, NFData v) ⇒ NFData (HashMap k v) 
Instance details

Defined in Data.HashMap.Internal

Methods

rnf ∷ HashMap k v → () #

(NFData k, NFData v) ⇒ NFData (Leaf k v) 
Instance details

Defined in Data.HashMap.Internal

Methods

rnf ∷ Leaf k v → () #

(NFData e, NFData a) ⇒ NFData (Validation e a) 
Instance details

Defined in Validation

Methods

rnf ∷ Validation e a → () #

NFData (MVector s a) 
Instance details

Defined in Data.Vector.Primitive.Mutable

Methods

rnf ∷ MVector s a → () #

NFData (MVector s a) 
Instance details

Defined in Data.Vector.Storable.Mutable

Methods

rnf ∷ MVector s a → () #

NFData (MVector s a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Methods

rnf ∷ MVector s a → () #

(NFData a, NFData b) ⇒ NFData (a, b) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a, b) → () #

NFData (a → b)

This instance is for convenience and consistency with seq. This assumes that WHNF is equivalent to NF for functions.

Since: deepseq-1.3.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a → b) → () #

NFData a ⇒ NFData (BoundedRatio b a) 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ BoundedRatio b a → () #

NFData a ⇒ NFData (Const a b)

Since: deepseq-1.4.0.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Const a b → () #

NFData (a :~: b)

Since: deepseq-1.4.3.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a :~: b) → () #

(NFData ann, NFData tyname, Closed uni) ⇒ NFData (Type tyname uni ann) 
Instance details

Defined in PlutusCore.Core.Type

Methods

rnf ∷ Type tyname uni ann → () #

(NFData fun, NFData ann, Closed uni, Everywhere uni NFData, NFData ParserError) ⇒ NFData (Error uni fun ann) 
Instance details

Defined in PlutusCore.Error

Methods

rnf ∷ Error uni fun ann → () #

(NFData machineCosts, Bounded fun, Enum fun) ⇒ NFData (MachineParameters machineCosts fun val) 
Instance details

Defined in PlutusCore.Evaluation.Machine.MachineParameters

Methods

rnf ∷ MachineParameters machineCosts fun val → () #

(NFData machineCosts, Bounded fun, Enum fun) ⇒ NFData (MachineVariantParameters machineCosts fun val) 
Instance details

Defined in PlutusCore.Evaluation.Machine.MachineParameters

Methods

rnf ∷ MachineVariantParameters machineCosts fun val → () #

NFData b ⇒ NFData (Tagged s b) 
Instance details

Defined in Data.Tagged

Methods

rnf ∷ Tagged s b → () #

(NFData (f a), NFData (g a), NFData a) ⇒ NFData (These1 f g a)

Available always

Since: these-1.2

Instance details

Defined in Data.Functor.These

Methods

rnf ∷ These1 f g a → () #

(NFData (kv k), NFData (vv v)) ⇒ NFData (KVVector kv vv (k, v)) 
Instance details

Defined in Data.VMap.KVVector

Methods

rnf ∷ KVVector kv vv (k, v) → () #

(NFData a1, NFData a2, NFData a3) ⇒ NFData (a1, a2, a3) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a1, a2, a3) → () #

(NFData (f a), NFData (g a)) ⇒ NFData (Product f g a)

Note: in deepseq-1.5.0.0 this instance's superclasses were changed.

Since: deepseq-1.4.3.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Product f g a → () #

(NFData (f a), NFData (g a)) ⇒ NFData (Sum f g a)

Note: in deepseq-1.5.0.0 this instance's superclasses were changed.

Since: deepseq-1.4.3.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Sum f g a → () #

NFData (a :~~: b)

Since: deepseq-1.4.3.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a :~~: b) → () #

(Closed uni, NFData ann, NFData term, NFData fun) ⇒ NFData (TypeError term uni fun ann) 
Instance details

Defined in PlutusCore.Error

Methods

rnf ∷ TypeError term uni fun ann → () #

(NFData name, Everywhere uni NFData, NFData fun, NFData ann, Closed uni) ⇒ NFData (Program name uni fun ann) 
Instance details

Defined in UntypedPlutusCore.Core.Type

Methods

rnf ∷ Program name uni fun ann → () #

(NFData name, NFData fun, NFData ann, Everywhere uni NFData, Closed uni) ⇒ NFData (Term name uni fun ann) 
Instance details

Defined in UntypedPlutusCore.Core.Type

Methods

rnf ∷ Term name uni fun ann → () #

(NFData (kv k), NFData (vv v)) ⇒ NFData (VMap kv vv k v) 
Instance details

Defined in Data.VMap

Methods

rnf ∷ VMap kv vv k v → () #

(NFData a1, NFData a2, NFData a3, NFData a4) ⇒ NFData (a1, a2, a3, a4) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a1, a2, a3, a4) → () #

NFData (f (g a)) ⇒ NFData (Compose f g a)

Note: in deepseq-1.5.0.0 this instance's superclasses were changed.

Since: deepseq-1.4.3.0

Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ Compose f g a → () #

(NFData tyname, NFData name, Everywhere uni NFData, NFData fun, NFData ann, Closed uni) ⇒ NFData (Program tyname name uni fun ann) 
Instance details

Defined in PlutusCore.Core.Type

Methods

rnf ∷ Program tyname name uni fun ann → () #

(NFData tyname, NFData name, NFData fun, NFData ann, Everywhere uni NFData, Closed uni) ⇒ NFData (Term tyname name uni fun ann) 
Instance details

Defined in PlutusCore.Core.Type

Methods

rnf ∷ Term tyname name uni fun ann → () #

(NFData tyname, NFData name, Closed uni, Everywhere uni NFData, NFData fun, NFData ann) ⇒ NFData (NormCheckError tyname name uni fun ann) 
Instance details

Defined in PlutusCore.Error

Methods

rnf ∷ NormCheckError tyname name uni fun ann → () #

(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5) ⇒ NFData (a1, a2, a3, a4, a5) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a1, a2, a3, a4, a5) → () #

(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6) ⇒ NFData (a1, a2, a3, a4, a5, a6) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a1, a2, a3, a4, a5, a6) → () #

(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7) ⇒ NFData (a1, a2, a3, a4, a5, a6, a7) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a1, a2, a3, a4, a5, a6, a7) → () #

(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7, NFData a8) ⇒ NFData (a1, a2, a3, a4, a5, a6, a7, a8) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a1, a2, a3, a4, a5, a6, a7, a8) → () #

(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7, NFData a8, NFData a9) ⇒ NFData (a1, a2, a3, a4, a5, a6, a7, a8, a9) 
Instance details

Defined in Control.DeepSeq

Methods

rnf ∷ (a1, a2, a3, a4, a5, a6, a7, a8, a9) → () #

runGen Source #

Arguments

∷ Int

Seed

→ Int

Size

→ Gen a

Generator to run.

→ a 

Expr

class ToExpr a where Source #

toExpr converts a Haskell value into untyped Haskell-like syntax tree, Expr.

>>> toExpr ((1, Just 2) :: (Int, Maybe Int))
App "_\215_" [App "1" [],App "Just" [App "2" []]]

Minimal complete definition

Nothing

Methods

toExpr ∷ a → Expr Source #

default toExpr ∷ (Generic a, GToExpr (Rep a)) ⇒ a → Expr Source #

listToExpr ∷ [a] → Expr Source #

Instances

Instances details
ToExpr Key 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Key → Expr Source #

listToExpr ∷ [Key] → Expr Source #

ToExpr Value 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Value → Expr Source #

listToExpr ∷ [Value] → Expr Source #

ToExpr ByteArray

Since: tree-diff-0.2.2

Instance details

Defined in Data.TreeDiff.Class

ToExpr ByteString
>>> traverse_ (print . prettyExpr . toExpr . BS8.pack) ["", "\n", "foo", "foo\n", "foo\nbar", "foo\nbar\n"]
""
"\n"
"foo"
"foo\n"
BS.concat ["foo\n", "bar"]
BS.concat ["foo\n", "bar\n"]
Instance details

Defined in Data.TreeDiff.Class

ToExpr ByteString
>>> traverse_ (print . prettyExpr . toExpr . LBS8.pack) ["", "\n", "foo", "foo\n", "foo\nbar", "foo\nbar\n"]
""
"\n"
"foo"
"foo\n"
LBS.concat ["foo\n", "bar"]
LBS.concat ["foo\n", "bar\n"]
Instance details

Defined in Data.TreeDiff.Class

ToExpr ShortByteString
>>> traverse_ (print . prettyExpr . toExpr . SBS.toShort . BS8.pack) ["", "\n", "foo", "foo\n", "foo\nbar", "foo\nbar\n"]
""
"\n"
"foo"
"foo\n"
mconcat ["foo\n", "bar"]
mconcat ["foo\n", "bar\n"]
Instance details

Defined in Data.TreeDiff.Class

ToExpr IPv4 
Instance details

Defined in Test.Cardano.Base.TreeDiff

Methods

toExpr ∷ IPv4 → Expr Source #

listToExpr ∷ [IPv4] → Expr Source #

ToExpr IPv6 
Instance details

Defined in Test.Cardano.Base.TreeDiff

Methods

toExpr ∷ IPv6 → Expr Source #

listToExpr ∷ [IPv6] → Expr Source #

ToExpr DecoderError 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

ToExpr LeiosCommittee Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr LeiosSeat Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Version 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

ToExpr CBORBytes 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

ToExpr HexBytes 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

ToExpr AccountAddress Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr AccountId Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Addr Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Addr → Expr Source #

listToExpr ∷ [Addr] → Expr Source #

ToExpr BootstrapAddress Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr CompactAddr Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr DirectDeposits Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Withdrawals Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Anchor Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr BlocksMade Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr CertIx Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr DnsName Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Milliseconds32 Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Network Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr NonNegativeInterval Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Nonce Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Nonce → Expr Source #

listToExpr ∷ [Nonce] → Expr Source #

ToExpr Port Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Port → Expr Source #

listToExpr ∷ [Port] → Expr Source #

ToExpr PositiveInterval Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr ProtVer Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr TxIx Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ TxIx → Expr Source #

listToExpr ∷ [TxIx] → Expr Source #

ToExpr UnitInterval Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Url Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Url → Expr Source #

listToExpr ∷ [Url] → Expr Source #

ToExpr BlockHeaderVersionInfo Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr EbReferencesAnnouncement Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Coin Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Coin → Expr Source #

listToExpr ∷ [Coin] → Expr Source #

ToExpr CoinPerByte Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr DeltaCoin Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr MaxPledgeLeverage Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Ptr Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Ptr → Expr Source #

listToExpr ∷ [Ptr] → Expr Source #

ToExpr SlotNo32 Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr StakeReference Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr DRep Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ DRep → Expr Source #

listToExpr ∷ [DRep] → Expr Source #

ToExpr DRepState Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr GenDelegPair Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr GenDelegs Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr ScriptHash Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr TxAuxDataHash Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr BootstrapWitness Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr ChainCode Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr CostModel Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr CostModels Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr ScriptHash ⇒ ToExpr PlutusWithContext Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr ExUnits Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Prices Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Language Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr PlutusBinary Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr TxOutSource Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr CommitteeAuthorization Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr FutureGenDeleg Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr InstantaneousRewards Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr ChainAccountState Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr IndividualPoolStake Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr PoolDistr Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr GoSnapShot Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr MarkSnapShot Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr SetSnapShot Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr SnapShot Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr StakePoolSnapShot Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr ActiveStake Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr Stake Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Stake → Expr Source #

listToExpr ∷ [Stake] → Expr Source #

ToExpr StakeWithDelegation Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr BlsKey Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr BlsKeyState Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr PoolMetadata Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr StakePoolRelay Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr StakePoolState Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr TxId Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ TxId → Expr Source #

listToExpr ∷ [TxId] → Expr Source #

ToExpr TxIn Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ TxIn → Expr Source #

listToExpr ∷ [TxIn] → Expr Source #

ToExpr TestBlockHeader Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr BlockNo 
Instance details

Defined in Test.Cardano.Slotting.TreeDiff

ToExpr EpochInterval Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr EpochNo 
Instance details

Defined in Test.Cardano.Slotting.TreeDiff

ToExpr EpochSize 
Instance details

Defined in Test.Cardano.Slotting.TreeDiff

ToExpr SlotInterval Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr SlotNo 
Instance details

Defined in Test.Cardano.Slotting.TreeDiff

ToExpr DeserialiseFailure 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

ToExpr Term 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

Methods

toExpr ∷ Term → Expr Source #

listToExpr ∷ [Term] → Expr Source #

ToExpr IntSet 
Instance details

Defined in Data.TreeDiff.Class

ToExpr Void 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Void → Expr Source #

listToExpr ∷ [Void] → Expr Source #

ToExpr Int16 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Int16 → Expr Source #

listToExpr ∷ [Int16] → Expr Source #

ToExpr Int32 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Int32 → Expr Source #

listToExpr ∷ [Int32] → Expr Source #

ToExpr Int64 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Int64 → Expr Source #

listToExpr ∷ [Int64] → Expr Source #

ToExpr Int8 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Int8 → Expr Source #

listToExpr ∷ [Int8] → Expr Source #

ToExpr Word16 
Instance details

Defined in Data.TreeDiff.Class

ToExpr Word32 
Instance details

Defined in Data.TreeDiff.Class

ToExpr Word64 
Instance details

Defined in Data.TreeDiff.Class

ToExpr Word8 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Word8 → Expr Source #

listToExpr ∷ [Word8] → Expr Source #

ToExpr Ordering 
Instance details

Defined in Data.TreeDiff.Class

ToExpr Scientific
>>> prettyExpr $ toExpr (123.456 :: Scientific)
scientific 123456 `-3`
Instance details

Defined in Data.TreeDiff.Class

ToExpr Text
>>> traverse_ (print . prettyExpr . toExpr . T.pack) ["", "\n", "foo", "foo\n", "foo\nbar", "foo\nbar\n"]
""
"\n"
"foo"
"foo\n"
T.concat ["foo\n", "bar"]
T.concat ["foo\n", "bar\n"]
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Text → Expr Source #

listToExpr ∷ [Text] → Expr Source #

ToExpr Text
>>> traverse_ (print . prettyExpr . toExpr . LT.pack) ["", "\n", "foo", "foo\n", "foo\nbar", "foo\nbar\n"]
""
"\n"
"foo"
"foo\n"
LT.concat ["foo\n", "bar"]
LT.concat ["foo\n", "bar\n"]
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Text → Expr Source #

listToExpr ∷ [Text] → Expr Source #

ToExpr Day
>>> prettyExpr $ toExpr $ ModifiedJulianDay 58014
Day "2017-09-18"
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Day → Expr Source #

listToExpr ∷ [Day] → Expr Source #

ToExpr UTCTime 
Instance details

Defined in Data.TreeDiff.Class

ToExpr Expr 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Expr → Expr Source #

listToExpr ∷ [Expr] → Expr Source #

ToExpr UUID
>>> prettyExpr $ toExpr UUID.nil
UUID "00000000-0000-0000-0000-000000000000"
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ UUID → Expr Source #

listToExpr ∷ [UUID] → Expr Source #

ToExpr Integer 
Instance details

Defined in Data.TreeDiff.Class

ToExpr Natural 
Instance details

Defined in Data.TreeDiff.Class

ToExpr () 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ () → Expr Source #

listToExpr ∷ [()] → Expr Source #

ToExpr Bool 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Bool → Expr Source #

listToExpr ∷ [Bool] → Expr Source #

ToExpr Char
>>> prettyExpr $ toExpr 'a'
'a'
>>> prettyExpr $ toExpr "Hello world"
"Hello world"
>>> prettyExpr $ toExpr "Hello\nworld"
concat ["Hello\n", "world"]
>>> traverse_ (print . prettyExpr . toExpr) ["", "\n", "foo", "foo\n", "foo\nbar", "foo\nbar\n"]
""
"\n"
"foo"
"foo\n"
concat ["foo\n", "bar"]
concat ["foo\n", "bar\n"]
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Char → Expr Source #

listToExpr ∷ [Char] → Expr Source #

ToExpr Double 
Instance details

Defined in Data.TreeDiff.Class

ToExpr Float 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Float → Expr Source #

listToExpr ∷ [Float] → Expr Source #

ToExpr Int 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Int → Expr Source #

listToExpr ∷ [Int] → Expr Source #

ToExpr Word 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Word → Expr Source #

listToExpr ∷ [Word] → Expr Source #

ToExpr a ⇒ ToExpr (KeyMap a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ KeyMap a → Expr Source #

listToExpr ∷ [KeyMap a] → Expr Source #

ToExpr a ⇒ ToExpr (First a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ First a → Expr Source #

listToExpr ∷ [First a] → Expr Source #

ToExpr a ⇒ ToExpr (Last a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Last a → Expr Source #

listToExpr ∷ [Last a] → Expr Source #

ToExpr a ⇒ ToExpr (Max a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Max a → Expr Source #

listToExpr ∷ [Max a] → Expr Source #

ToExpr a ⇒ ToExpr (Min a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Min a → Expr Source #

listToExpr ∷ [Min a] → Expr Source #

DSIGNAggregatable r ⇒ ToExpr (PossessionProofDSIGN r) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

DSIGNAlgorithm r ⇒ ToExpr (VerKeyDSIGN r) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr a ⇒ ToExpr (OSet a) 
Instance details

Defined in Test.Cardano.Data.TreeDiff

Methods

toExpr ∷ OSet a → Expr Source #

listToExpr ∷ [OSet a] → Expr Source #

ToExpr a ⇒ ToExpr (NonEmptySet a) 
Instance details

Defined in Test.Cardano.Data.TreeDiff

ToExpr a ⇒ ToExpr (Sized a) 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

Methods

toExpr ∷ Sized a → Expr Source #

listToExpr ∷ [Sized a] → Expr Source #

ToExpr a ⇒ ToExpr (Exclusive a) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr a ⇒ ToExpr (Inclusive a) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr a ⇒ ToExpr (NonZero a) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ NonZero a → Expr Source #

listToExpr ∷ [NonZero a] → Expr Source #

ToExpr (CompactForm Coin) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr (CompactForm DeltaCoin) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr (PParamsHKD Identity era) ⇒ ToExpr (PParams era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ PParams era → Expr Source #

listToExpr ∷ [PParams era] → Expr Source #

ToExpr (PParamsHKD StrictMaybe era) ⇒ ToExpr (PParamsUpdate era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr (PoolCert era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ PoolCert era → Expr Source #

listToExpr ∷ [PoolCert era] → Expr Source #

ToExpr (Credential keyrole) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Credential keyrole → Expr Source #

listToExpr ∷ [Credential keyrole] → Expr Source #

ToExpr (NoUpdate a) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ NoUpdate a → Expr Source #

listToExpr ∷ [NoUpdate a] → Expr Source #

ToExpr (SafeHash i) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ SafeHash i → Expr Source #

listToExpr ∷ [SafeHash i] → Expr Source #

ToExpr (VRFVerKeyHash keyrole) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ VRFVerKeyHash keyrole → Expr Source #

listToExpr ∷ [VRFVerKeyHash keyrole] → Expr Source #

ToExpr (KeyHash keyrole) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ KeyHash keyrole → Expr Source #

listToExpr ∷ [KeyHash keyrole] → Expr Source #

ToExpr (VKey r) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ VKey r → Expr Source #

listToExpr ∷ [VKey r] → Expr Source #

ToExpr (WitVKey kr) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ WitVKey kr → Expr Source #

listToExpr ∷ [WitVKey kr] → Expr Source #

ToExpr t ⇒ ToExpr (MemoBytes t) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr (BinaryData era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ BinaryData era → Expr Source #

listToExpr ∷ [BinaryData era] → Expr Source #

ToExpr (Data era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Data era → Expr Source #

listToExpr ∷ [Data era] → Expr Source #

ToExpr (Datum era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Datum era → Expr Source #

listToExpr ∷ [Datum era] → Expr Source #

ToExpr (PlutusData era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ PlutusData era → Expr Source #

listToExpr ∷ [PlutusData era] → Expr Source #

ToExpr (Plutus l) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Plutus l → Expr Source #

listToExpr ∷ [Plutus l] → Expr Source #

ToExpr (PlutusRunnable l) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr (CommitteeState era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr (Accounts era) ⇒ ToExpr (DState era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ DState era → Expr Source #

listToExpr ∷ [DState era] → Expr Source #

ToExpr (PState era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ PState era → Expr Source #

listToExpr ∷ [PState era] → Expr Source #

ToExpr (SnapShots era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ SnapShots era → Expr Source #

listToExpr ∷ [SnapShots era] → Expr Source #

ToExpr (StakePoolParams era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

(Era era, ToExpr (Script era)) ⇒ ToExpr (ScriptsProvided era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

ToExpr (TxOut era) ⇒ ToExpr (UTxO era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ UTxO era → Expr Source #

listToExpr ∷ [UTxO era] → Expr Source #

ToExpr (KeyPair r) Source # 
Instance details

Defined in Test.Cardano.Ledger.Core.KeyPair

Methods

toExpr ∷ KeyPair r → Expr Source #

listToExpr ∷ [KeyPair r] → Expr Source #

ToExpr x ⇒ ToExpr (WithOrigin x) 
Instance details

Defined in Test.Cardano.Slotting.TreeDiff

ToExpr a ⇒ ToExpr (StrictMaybe a) 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

ToExpr a ⇒ ToExpr (StrictSeq a) 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

ToExpr v ⇒ ToExpr (IntMap v) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ IntMap v → Expr Source #

listToExpr ∷ [IntMap v] → Expr Source #

ToExpr v ⇒ ToExpr (Seq v) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Seq v → Expr Source #

listToExpr ∷ [Seq v] → Expr Source #

ToExpr k ⇒ ToExpr (Set k) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Set k → Expr Source #

listToExpr ∷ [Set k] → Expr Source #

ToExpr a ⇒ ToExpr (Tree a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Tree a → Expr Source #

listToExpr ∷ [Tree a] → Expr Source #

ToExpr a ⇒ ToExpr (NonEmpty a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ NonEmpty a → Expr Source #

listToExpr ∷ [NonEmpty a] → Expr Source #

ToExpr a ⇒ ToExpr (Identity a)
>>> prettyExpr $ toExpr $ Identity 'a'
Identity 'a'
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Identity a → Expr Source #

listToExpr ∷ [Identity a] → Expr Source #

ToExpr a ⇒ ToExpr (First a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ First a → Expr Source #

listToExpr ∷ [First a] → Expr Source #

ToExpr a ⇒ ToExpr (Last a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Last a → Expr Source #

listToExpr ∷ [Last a] → Expr Source #

ToExpr a ⇒ ToExpr (Dual a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Dual a → Expr Source #

listToExpr ∷ [Dual a] → Expr Source #

ToExpr a ⇒ ToExpr (Product a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Product a → Expr Source #

listToExpr ∷ [Product a] → Expr Source #

ToExpr a ⇒ ToExpr (Sum a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Sum a → Expr Source #

listToExpr ∷ [Sum a] → Expr Source #

ToExpr a ⇒ ToExpr (ZipList a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ ZipList a → Expr Source #

listToExpr ∷ [ZipList a] → Expr Source #

(ToExpr a, Integral a) ⇒ ToExpr (Ratio a)
>>> prettyExpr $ toExpr (3 % 12 :: Rational)
_%_ 1 4
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Ratio a → Expr Source #

listToExpr ∷ [Ratio a] → Expr Source #

ToExpr a ⇒ ToExpr (Hashed a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Hashed a → Expr Source #

listToExpr ∷ [Hashed a] → Expr Source #

ToExpr a ⇒ ToExpr (Maybe a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Maybe a → Expr Source #

listToExpr ∷ [Maybe a] → Expr Source #

ToExpr k ⇒ ToExpr (HashSet k) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ HashSet k → Expr Source #

listToExpr ∷ [HashSet k] → Expr Source #

ToExpr a ⇒ ToExpr (Vector a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Vector a → Expr Source #

listToExpr ∷ [Vector a] → Expr Source #

(ToExpr a, Prim a) ⇒ ToExpr (Vector a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Vector a → Expr Source #

listToExpr ∷ [Vector a] → Expr Source #

(ToExpr a, Storable a) ⇒ ToExpr (Vector a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Vector a → Expr Source #

listToExpr ∷ [Vector a] → Expr Source #

(ToExpr a, Unbox a) ⇒ ToExpr (Vector a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Vector a → Expr Source #

listToExpr ∷ [Vector a] → Expr Source #

ToExpr a ⇒ ToExpr (Maybe a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Maybe a → Expr Source #

listToExpr ∷ [Maybe a] → Expr Source #

ToExpr a ⇒ ToExpr [a] 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ [a] → Expr Source #

listToExpr ∷ [[a]] → Expr Source #

HasResolution a ⇒ ToExpr (Fixed a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Fixed a → Expr Source #

listToExpr ∷ [Fixed a] → Expr Source #

DSIGNAlgorithm c ⇒ ToExpr (SignedDSIGN c index) 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

Methods

toExpr ∷ SignedDSIGN c index → Expr Source #

listToExpr ∷ [SignedDSIGN c index] → Expr Source #

ToExpr (Hash c index) 
Instance details

Defined in Test.Cardano.Ledger.Binary.TreeDiff

Methods

toExpr ∷ Hash c index → Expr Source #

listToExpr ∷ [Hash c index] → Expr Source #

(Ord k, ToExpr k, ToExpr v) ⇒ ToExpr (NonEmptyMap k v) 
Instance details

Defined in Test.Cardano.Data.TreeDiff

Methods

toExpr ∷ NonEmptyMap k v → Expr Source #

listToExpr ∷ [NonEmptyMap k v] → Expr Source #

(HasOKey k v, ToExpr v) ⇒ ToExpr (OMap k v) 
Instance details

Defined in Test.Cardano.Data.TreeDiff

Methods

toExpr ∷ OMap k v → Expr Source #

listToExpr ∷ [OMap k v] → Expr Source #

(Typeable r, ToExpr a) ⇒ ToExpr (Mismatch r a) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Mismatch r a → Expr Source #

listToExpr ∷ [Mismatch r a] → Expr Source #

(ToExpr h, ToExpr (BlockBody era)) ⇒ ToExpr (Block h era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ Block h era → Expr Source #

listToExpr ∷ [Block h era] → Expr Source #

ToExpr (VoidEraRule rule era) Source # 
Instance details

Defined in Test.Cardano.Ledger.TreeDiff

Methods

toExpr ∷ VoidEraRule rule era → Expr Source #

listToExpr ∷ [VoidEraRule rule era] → Expr Source #

(ToExpr k, ToExpr v) ⇒ ToExpr (Map k v) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Map k v → Expr Source #

listToExpr ∷ [Map k v] → Expr Source #

(ToExpr a, ToExpr b) ⇒ ToExpr (Either a b) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Either a b → Expr Source #

listToExpr ∷ [Either a b] → Expr Source #

ToExpr (Proxy a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Proxy a → Expr Source #

listToExpr ∷ [Proxy a] → Expr Source #

(ToExpr a, ToExpr b) ⇒ ToExpr (Either a b) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Either a b → Expr Source #

listToExpr ∷ [Either a b] → Expr Source #

(ToExpr a, ToExpr b) ⇒ ToExpr (These a b) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ These a b → Expr Source #

listToExpr ∷ [These a b] → Expr Source #

(ToExpr a, ToExpr b) ⇒ ToExpr (Pair a b) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Pair a b → Expr Source #

listToExpr ∷ [Pair a b] → Expr Source #

(ToExpr a, ToExpr b) ⇒ ToExpr (These a b) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ These a b → Expr Source #

listToExpr ∷ [These a b] → Expr Source #

(ToExpr k, ToExpr v) ⇒ ToExpr (HashMap k v) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ HashMap k v → Expr Source #

listToExpr ∷ [HashMap k v] → Expr Source #

(ToExpr a, ToExpr b) ⇒ ToExpr (a, b) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ (a, b) → Expr Source #

listToExpr ∷ [(a, b)] → Expr Source #

ToExpr a ⇒ ToExpr (Const a b) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Const a b → Expr Source #

listToExpr ∷ [Const a b] → Expr Source #

ToExpr a ⇒ ToExpr (Tagged t a) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ Tagged t a → Expr Source #

listToExpr ∷ [Tagged t a] → Expr Source #

(ToExpr a, ToExpr b, ToExpr c) ⇒ ToExpr (a, b, c) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ (a, b, c) → Expr Source #

listToExpr ∷ [(a, b, c)] → Expr Source #

(Vector kv k, Vector vv v, ToExpr k, ToExpr v) ⇒ ToExpr (VMap kv vv k v) 
Instance details

Defined in Test.Data.VMap.TreeDiff

Methods

toExpr ∷ VMap kv vv k v → Expr Source #

listToExpr ∷ [VMap kv vv k v] → Expr Source #

(ToExpr a, ToExpr b, ToExpr c, ToExpr d) ⇒ ToExpr (a, b, c, d) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ (a, b, c, d) → Expr Source #

listToExpr ∷ [(a, b, c, d)] → Expr Source #

(ToExpr a, ToExpr b, ToExpr c, ToExpr d, ToExpr e) ⇒ ToExpr (a, b, c, d, e) 
Instance details

Defined in Data.TreeDiff.Class

Methods

toExpr ∷ (a, b, c, d, e) → Expr Source #

listToExpr ∷ [(a, b, c, d, e)] → Expr Source #

showExpr ∷ ToExpr a ⇒ a → String Source #

diffExpr ∷ ToExpr a ⇒ a → a → Doc AnsiStyle Source #

diffExprString ∷ ToExpr a ⇒ a → a → String Source #

diffExprCompact ∷ ToExpr a ⇒ a → a → Doc AnsiStyle Source #

Expectations

assertBool Source #

Arguments

∷ HasCallStack 
⇒ String

The message that is displayed if the assertion fails

→ Bool

The condition

→ Assertion 

Asserts that the specified condition holds.

assertFailure Source #

Arguments

∷ HasCallStack 
⇒ String

A message that is displayed with the assertion failure

→ IO a 

Unconditionally signals that a failure has occurred.

assertColorFailure ∷ HasCallStack ⇒ String → IO a Source #

Similar to assertFailure, except hspec will not interfer with any escape sequences that indicate color output.

Non-standard expectations

shouldBeExpr ∷ (HasCallStack, ToExpr a, Eq a) ⇒ a → a → IO () infix 1 Source #

shouldBeRight ∷ (HasCallStack, Show a, Show b, Eq b) ⇒ Either a b → b → Expectation infix 1 Source #

Same as shouldBe, except it checks that the value is Right

shouldBeLeft ∷ (HasCallStack, Show a, Eq a, Show b) ⇒ Either a b → a → Expectation infix 1 Source #

Same as shouldBe, except it checks that the value is Left

shouldBeRightExpr ∷ (HasCallStack, ToExpr a, Eq b, ToExpr b) ⇒ Either a b → b → Expectation infix 1 Source #

Same as shouldBeExpr, except it checks that the value is Right

shouldBeLeftExpr ∷ (HasCallStack, ToExpr a, ToExpr b, Eq a) ⇒ Either a b → a → Expectation infix 1 Source #

Same as shouldBeExpr, except it checks that the value is Left

expectRight ∷ (HasCallStack, Show a) ⇒ Either a b → IO b Source #

Return value on the Right and fail otherwise.

Difference from shouldSatisfy action isRight in that expectRight will force the content of the Right to WHNF and return it. This expectation will also show the content of the Left when expectation fails.

expectRightDeep ∷ (HasCallStack, Show a, NFData b) ⇒ Either a b → IO b Source #

Same as expectRight, but also evaluate the returned value to NF

expectRightDeep_ ∷ (HasCallStack, Show a, NFData b) ⇒ Either a b → IO () Source #

Same as expectRightDeep, but discards the result

expectRightExpr ∷ (HasCallStack, ToExpr a) ⇒ Either a b → IO b Source #

Same as expectRight, but use ToExpr instead of Show

expectRightDeepExpr ∷ (HasCallStack, ToExpr a, NFData b) ⇒ Either a b → IO b Source #

Same as expectRightDeep, but use ToExpr instead of Show

expectRightDeepExpr_ ∷ (HasCallStack, ToExpr a, NFData b) ⇒ Either a b → IO () Source #

Same as expectRightDeepExpr, but discard the contents of Right

expectLeft ∷ (HasCallStack, Show b) ⇒ Either a b → IO a Source #

Return value on the Left an fail otherwise

Difference from shouldSatisfy action isLeft in that expectLeft will force the content of the Left to WHNF and and return it. This expectation will also show the content of the Right when expectation fails.

expectLeftExpr ∷ (HasCallStack, ToExpr b) ⇒ Either a b → IO a Source #

Same as expectLeft, but use ToExpr instead of Show

expectLeftDeep ∷ (HasCallStack, NFData a, Show b) ⇒ Either a b → IO a Source #

Same as expectLeft, but also evaluate the returned value to NF

expectLeftDeep_ ∷ (HasCallStack, NFData a, Show b) ⇒ Either a b → IO () Source #

Same as expectLeftDeep, but discards the result

expectLeftDeepExpr ∷ (HasCallStack, ToExpr b, NFData a) ⇒ Either a b → IO a Source #

Same as expectLeftDeep, but use ToExpr instead of Show

expectLeftDeepExpr_ ∷ (HasCallStack, ToExpr b, NFData a) ⇒ Either a b → IO () Source #

Same as expectLeftDeepExpr, but discard the contents of Left

expectJust ∷ HasCallStack ⇒ Maybe a → IO a Source #

Return value from the Just an fail otherwise

Difference from shouldSatisfy action isJust in that expectJust will force the content of the Just to WHNF and it will also return it.

expectJustDeep ∷ (HasCallStack, NFData a) ⇒ Maybe a → IO a Source #

Same as expectJust, but will force the value to NF

expectJustDeep_ ∷ (HasCallStack, NFData a) ⇒ Maybe a → IO () Source #

Same as expectJustDeep, but will discard the forced contents of Just

expectNothing ∷ (HasCallStack, Show a) ⇒ Maybe a → IO () Source #

Same as shouldSatisfy action isNothing

Golden testing

data Golden str Source #

Golden tests parameters

import           Data.Text (Text)
import qualified Data.Text.IO as T

goldenText :: String -> Text -> Golden Text
goldenText name actualOutput =
  Golden {
    output = actualOutput,
    encodePretty = prettyText,
    writeToFile = T.writeFile,
    readFromFile = T.readFile,
    goldenFile = ".specific-golden-dir" / name / "golden",
    actualFile = Just (".specific-golden-dir" / name / "actual"),
    failFirstTime = False
  }

describe "myTextFunc" $
  it "generates the right output with the right params" $
    goldenText "myTextFunc" (myTextFunc params)

Instances

Instances details
Eq str ⇒ Example (IO (Golden str)) 
Instance details

Defined in Test.Hspec.Golden

Associated Types

type Arg (IO (Golden str)) 
Instance details

Defined in Test.Hspec.Golden

type Arg (IO (Golden str)) = ()

Methods

evaluateExample ∷ IO (Golden str) → Params → (ActionWith (Arg (IO (Golden str))) → IO ()) → ProgressCallback → IO Result Source #

Eq str ⇒ Example (Golden str) 
Instance details

Defined in Test.Hspec.Golden

Associated Types

type Arg (Golden str) 
Instance details

Defined in Test.Hspec.Golden

type Arg (Golden str) = ()

Methods

evaluateExample ∷ Golden str → Params → (ActionWith (Arg (Golden str)) → IO ()) → ProgressCallback → IO Result Source #

Eq str ⇒ Example (arg → IO (Golden str)) 
Instance details

Defined in Test.Hspec.Golden

Associated Types

type Arg (arg → IO (Golden str)) 
Instance details

Defined in Test.Hspec.Golden

type Arg (arg → IO (Golden str)) = arg

Methods

evaluateExample ∷ (arg → IO (Golden str)) → Params → (ActionWith (Arg (arg → IO (Golden str))) → IO ()) → ProgressCallback → IO Result Source #

Eq str ⇒ Example (arg → Golden str) 
Instance details

Defined in Test.Hspec.Golden

Associated Types

type Arg (arg → Golden str) 
Instance details

Defined in Test.Hspec.Golden

type Arg (arg → Golden str) = arg

Methods

evaluateExample ∷ (arg → Golden str) → Params → (ActionWith (Arg (arg → Golden str)) → IO ()) → ProgressCallback → IO Result Source #

type Arg (IO (Golden str)) 
Instance details

Defined in Test.Hspec.Golden

type Arg (IO (Golden str)) = ()
type Arg (Golden str) 
Instance details

Defined in Test.Hspec.Golden

type Arg (Golden str) = ()
type Arg (arg → IO (Golden str)) 
Instance details

Defined in Test.Hspec.Golden

type Arg (arg → IO (Golden str)) = arg
type Arg (arg → Golden str) 
Instance details

Defined in Test.Hspec.Golden

type Arg (arg → Golden str) = arg

itGolden Source #

Arguments

∷ (Eq g, HasCallStack) 
⇒ String

Test name

→ (FilePath → IO FilePath)

Action to get the full path, usually will be Paths_package_name.getDataFileName

→ Golden g

Golden specification

→ Spec 

Create a Spec for testing the Golden specification

Aeson testing

itGoldenToJSON Source #

Arguments

∷ (ToJSON a, Typeable a) 
⇒ (FilePath → IO FilePath)

Action to get the full path, usually will be Paths_package_name.getDataFileName

→ FilePath

File path to the golden file relative to the root of the package

→ a 
→ Spec 

Check ToJSON golden spec. in case when type also has FromJSON use aesonGoldenSpec instead.

aesonGoldenSpec Source #

Arguments

∷ (Eq a, ToExpr a, NFData a, Typeable a, ToJSON a, FromJSON a, HasCallStack) 
⇒ (FilePath → IO FilePath)

Action to get the full path, usually will be Paths_package_name.getDataFileName

→ FilePath

File path to the golden file relative to the root of the package

→ a

Value, which in an encoded form will be expected to produce the same contents as in the golden file.

→ Spec 

Same as itGoldenToJSON, but also test FromJSON through roundtripping

goldenForToJSON Source #

Arguments

∷ ToJSON a 
⇒ FilePath

Path to the golden file relative to the package

→ a

Value, which in an encoded form will be expected to produce the same contents as in the golden file.

→ Golden ByteString 

Golden specification for ToJSON.

roundTripAesonProperty ∷ (Eq a, NFData a, ToExpr a, ToJSON a, FromJSON a, HasCallStack) ⇒ a → Property Source #

Test Aeson roundtripping

Miscellanous helpers

tracedDiscard ∷ String → a Source #

Same as discard but outputs a debug trace message