Data.Functor.Variant
#VariantF
data VariantF :: Row (Type -> Type) -> Type -> Type
data VariantF f a
Instances
Functor (VariantF r)
(RowToList row rl, FoldableVFRL rl row) => Foldable (VariantF row)
(RowToList row rl, TraversableVFRL rl row) => Traversable (VariantF row)
(RowToList r rl, VariantTags rl, VariantFShows rl a, Show a) => Show (VariantF r a)
#inj
#prj
#on
#onMatch
onMatch :: forall rl r r1 r2 r3 a b. RowToList r rl => VariantFMatchCases rl r1 a b => Union r1 r2 r3 => Record r -> (VariantF r2 a -> b) -> VariantF r3 a -> b
Match a VariantF
with a Record
containing functions for handling cases.
This is similar to on
, except instead of providing a single label and
handler, you can provide a record where each field maps to a particular
VariantF
case.
onMatch
{ foo: \foo -> "Foo: " <> maybe "nothing" id foo
, bar: \bar -> "Bar: " <> snd bar
}
Polymorphic functions in records (such as show
or id
) can lead
to inference issues if not all polymorphic variables are specified
in usage. When in doubt, label methods with specific types, such as
show :: Int -> String
, or give the whole record an appropriate type.
#over
over :: forall r rl rlo ri ro r1 r2 r3 a b. RowToList r rl => VariantFMapCases rl ri ro a b => RowToList ro rlo => VariantTags rlo => VariantFMaps rlo => Union ri r2 r1 => Union ro r2 r3 => Record r -> (a -> b) -> VariantF r1 a -> VariantF r3 b
Map over some labels (with access to the containers) and use map f
for
the rest (just changing the index type). For example:
over { label: \(Identity a) -> Just (show (a - 5)) } show
:: forall r.
VariantF ( label :: Identity | r ) Int ->
VariantF ( label :: Maybe | r ) String
over r f
is like (map f >>> expand) # overSome r
but with
a more easily solved constraint (i.e. it can be solved once the type of
r
is known).
#overOne
overOne :: forall sym f g a b r1 r2 r3 r4. Cons sym f r1 r2 => Cons sym g r4 r3 => IsSymbol sym => Functor g => Proxy sym -> (f a -> g b) -> (VariantF r1 a -> VariantF r3 b) -> VariantF r2 a -> VariantF r3 b
Map over one case of a variant, putting the result back at the same label, with a fallback function to handle the remaining cases.
#overSome
overSome :: forall r rl rlo ri ro r1 r2 r3 r4 a b. RowToList r rl => VariantFMapCases rl ri ro a b => RowToList ro rlo => VariantTags rlo => VariantFMaps rlo => Union ri r2 r1 => Union ro r4 r3 => Record r -> (VariantF r2 a -> VariantF r3 b) -> VariantF r1 a -> VariantF r3 b
Map over several cases of a variant using a Record
containing functions
for each case. Each case gets put back at the same label it was matched
at, i.e. its label in the record. Labels not found in the record are
handled using the fallback function.
#case_
case_ :: forall a b. VariantF () a -> b
Combinator for exhaustive pattern matching.
caseFn :: VariantF (foo :: Maybe, bar :: Tuple String, baz :: Either String) Int -> String
caseFn = case_
# on (Proxy :: Proxy "foo") (\foo -> "Foo: " <> maybe "nothing" show foo)
# on (Proxy :: Proxy "bar") (\bar -> "Bar: " <> show (snd bar))
# on (Proxy :: Proxy "baz") (\baz -> "Baz: " <> either id show baz)
#match
match :: forall rl r r1 r2 a b. RowToList r rl => VariantFMatchCases rl r1 a b => Union r1 () r2 => Record r -> VariantF r2 a -> b
Combinator for exhaustive pattern matching using an onMatch
case record.
matchFn :: VariantF (foo :: Maybe, bar :: Tuple String, baz :: Either String) Int -> String
matchFn = match
{ foo: \foo -> "Foo: " <> maybe "nothing" show foo
, bar: \bar -> "Bar: " <> show (snd bar)
, baz: \baz -> "Baz: " <> either id show baz
}
#default
default :: forall a b r. a -> VariantF r b -> a
Combinator for partial matching with a default value in case of failure.
caseFn :: forall r. VariantF (foo :: Maybe, bar :: Tuple String | r) Int -> String
caseFn = default "No match"
# on (Proxy :: Proxy "foo") (\foo -> "Foo: " <> maybe "nothing" show foo)
# on (Proxy :: Proxy "bar") (\bar -> "Bar: " <> show (snd bar))
#traverse
traverse :: forall r rl rlo ri ro r1 r2 r3 a b m. RowToList r rl => VariantFTraverseCases m rl ri ro a b => RowToList ro rlo => VariantTags rlo => VariantFMaps rlo => Union ri r2 r1 => Union ro r2 r3 => Applicative m => Traversable (VariantF r2) => Record r -> (a -> m b) -> VariantF r1 a -> m (VariantF r3 b)
Traverse over some labels (with access to the containers) and use
traverse f
for the rest (just changing the index type).
traverse r f
is like (traverse f >>> expand) # traverseSome r
but with
a more easily solved constraint (i.e. it can be solved once the type of
r
is known).
#traverseOne
traverseOne :: forall sym f g a b r1 r2 r3 r4 m. Cons sym f r1 r2 => Cons sym g r4 r3 => IsSymbol sym => Functor g => Functor m => Proxy sym -> (f a -> m (g b)) -> (VariantF r1 a -> m (VariantF r3 b)) -> VariantF r2 a -> m (VariantF r3 b)
Traverse over one case of a variant (in a functorial/monadic context m
),
putting the result back at the same label, with a fallback function.
#traverseSome
traverseSome :: forall r rl rlo ri ro r1 r2 r3 r4 a b m. RowToList r rl => VariantFTraverseCases m rl ri ro a b => RowToList ro rlo => VariantTags rlo => VariantFMaps rlo => Union ri r2 r1 => Union ro r4 r3 => Functor m => Record r -> (VariantF r2 a -> m (VariantF r3 b)) -> VariantF r1 a -> m (VariantF r3 b)
Traverse over several cases of a variant using a Record
containing
traversals. Each case gets put back at the same label it was matched
at, i.e. its label in the record. Labels not found in the record are
handled using the fallback function.
#expand
#contract
contract :: forall lt gt f a. Alternative f => Contractable gt lt => VariantF gt a -> f (VariantF lt a)
A VariantF gt a
can be cast to some VariantF lt a
, where lt
is is a subset
of gt
, as long as there is proof that the VariantF
's runtime tag is
within the subset of lt
.
#UnvariantF
newtype UnvariantF :: Row (Type -> Type) -> Type -> Type
newtype UnvariantF r a
Constructors
UnvariantF (forall x. UnvariantF' r a x -> x)
#UnvariantF'
#unvariantF
unvariantF :: forall r a. VariantF r a -> UnvariantF r a
A low-level eliminator which reifies the IsSymbol
, Cons
and
Functor
constraints require to reconstruct the Variant. This
lets you work generically with some VariantF at runtime.
#revariantF
revariantF :: forall r a. UnvariantF r a -> VariantF r a
Reconstructs a VariantF given an UnvariantF eliminator.
#VariantFShows
class VariantFShows :: RowList (Type -> Type) -> Type -> Constraint
class VariantFShows rl x where
Members
variantFShows :: forall proxy1 proxy2. proxy1 rl -> proxy2 x -> List (VariantCase -> String)
Instances
VariantFShows Nil x
(VariantFShows rs x, Show (f x), Show x) => VariantFShows (Cons sym f rs) x
#VariantFMaps
class VariantFMaps :: RowList (Type -> Type) -> Constraint
class VariantFMaps (rl :: RowList (Type -> Type)) where
Members
variantFMaps :: Proxy rl -> List (Mapper VariantFCase)
Instances
VariantFMaps Nil
(VariantFMaps rs, Functor f) => VariantFMaps (Cons sym f rs)
#TraversableVFRL
class TraversableVFRL :: RowList (Type -> Type) -> Row (Type -> Type) -> Constraint
class (FoldableVFRL rl row) <= TraversableVFRL rl row | rl -> row where
Members
traverseVFRL :: forall f a b. Applicative f => Proxy rl -> (a -> f b) -> VariantF row a -> f (VariantF row b)
Instances
TraversableVFRL Nil ()
(IsSymbol k, Traversable f, TraversableVFRL rl r, Cons k f r r', Union r rx r') => TraversableVFRL (Cons k f rl) r'
#FoldableVFRL
class FoldableVFRL :: RowList (Type -> Type) -> Row (Type -> Type) -> Constraint
class FoldableVFRL rl row | rl -> row where
Members
foldrVFRL :: forall a b. Proxy rl -> (a -> b -> b) -> b -> VariantF row a -> b
foldlVFRL :: forall a b. Proxy rl -> (b -> a -> b) -> b -> VariantF row a -> b
foldMapVFRL :: forall a m. Monoid m => Proxy rl -> (a -> m) -> VariantF row a -> m
Instances
FoldableVFRL Nil ()
(IsSymbol k, Foldable f, FoldableVFRL rl r, Cons k f r r') => FoldableVFRL (Cons k f rl) r'
Re-exports from Data.Variant.Internal
#Contractable
class Contractable :: forall k. Row k -> Row k -> Constraint
class Contractable gt lt
Instances
(RowToList lt ltl, Union lt a gt, VariantTags ltl) => Contractable gt lt
#VariantFMapCases
class VariantFMapCases :: RowList Type -> Row (Type -> Type) -> Row (Type -> Type) -> Type -> Type -> Constraint
class VariantFMapCases (rl :: RowList Type) (ri :: Row (Type -> Type)) (ro :: Row (Type -> Type)) (a :: Type) (b :: Type) | rl -> ri ro
Instances
(Cons sym f ri' ri, Cons sym g ro' ro, VariantFMapCases rl ri' ro' a b, TypeEquals k (f a -> g b)) => VariantFMapCases (Cons sym k rl) ri ro a b
VariantFMapCases Nil () () a b
#VariantFMatchCases
class VariantFMatchCases :: RowList Type -> Row (Type -> Type) -> Type -> Type -> Constraint
class VariantFMatchCases rl vo a b | rl -> vo a b
Instances
(VariantFMatchCases rl vo' a b, Cons sym f vo' vo, TypeEquals k (f a -> b)) => VariantFMatchCases (Cons sym k rl) vo a b
VariantFMatchCases Nil () a b
Packages
cardano-transaction-lib
- Contract.Address
- Contract.AuxiliaryData
- Contract.Backend.Ogmios
- Contract.CborBytes
- Contract.Chain
- Contract.Config
- Contract.Crypto.Secp256k1
- Contract.Crypto.Secp256k1.ECDSA
- Contract.Crypto.Secp256k1.Schnorr
- Contract.Crypto.Secp256k1.Utils
- Contract.Hashing
- Contract.JsSdk
- Contract.Keys
- Contract.Log
- Contract.Monad
- Contract.Plutarch.Types
- Contract.PlutusData
- Contract.Prelude
- Contract.Prim.ByteArray
- Contract.ProtocolParameters
- Contract.Scripts
- Contract.Staking
- Contract.Test.Assert
- Contract.Test.Blockfrost
- Contract.Test.Testnet
- Contract.Test.Utils
- Contract.Time
- Contract.Transaction
- Contract.UnbalancedTx
- Contract.Utxos
- Contract.Value
- Contract.Wallet
- Contract.Wallet.Key
- Contract.Wallet.KeyFile
- Ctl.Examples.AdditionalUtxos
- Ctl.Examples.AlwaysMints
- Ctl.Examples.AlwaysSucceeds
- Ctl.Examples.AwaitTxConfirmedWithTimeout
- Ctl.Examples.BalanceTxConstraints
- Ctl.Examples.ByUrl
- Ctl.Examples.ChangeGeneration
- Ctl.Examples.Cip30
- Ctl.Examples.ContractTestUtils
- Ctl.Examples.Datums
- Ctl.Examples.DropTokens
- Ctl.Examples.ECDSA
- Ctl.Examples.ExUnits
- Ctl.Examples.Gov.DelegateVoteAbstain
- Ctl.Examples.Gov.Internal.Common
- Ctl.Examples.Gov.ManageDrep
- Ctl.Examples.Gov.ManageDrepScript
- Ctl.Examples.Gov.SubmitVote
- Ctl.Examples.Gov.SubmitVoteScript
- Ctl.Examples.Helpers
- Ctl.Examples.IncludeDatum
- Ctl.Examples.KeyWallet.Cip30
- Ctl.Examples.KeyWallet.DelegateVoteAbstain
- Ctl.Examples.KeyWallet.Internal.Cip30Contract
- Ctl.Examples.KeyWallet.Internal.Cip30HtmlForm
- Ctl.Examples.KeyWallet.Internal.Contract
- Ctl.Examples.KeyWallet.Internal.HtmlForm
- Ctl.Examples.KeyWallet.Internal.Pkh2PkhContract
- Ctl.Examples.KeyWallet.Internal.Pkh2PkhHtmlForm
- Ctl.Examples.KeyWallet.ManageDrep
- Ctl.Examples.KeyWallet.MintsAndSendsToken
- Ctl.Examples.KeyWallet.Pkh2Pkh
- Ctl.Examples.KeyWallet.SignMultiple
- Ctl.Examples.KeyWallet.SubmitVote
- Ctl.Examples.Lose7Ada
- Ctl.Examples.ManyAssets
- Ctl.Examples.MintsMultipleTokens
- Ctl.Examples.MultipleRedeemers
- Ctl.Examples.NativeScriptMints
- Ctl.Examples.OneShotMinting
- Ctl.Examples.PaysWithDatum
- Ctl.Examples.Pkh2Pkh
- Ctl.Examples.PlutusV2.AlwaysSucceeds
- Ctl.Examples.PlutusV2.InlineDatum
- Ctl.Examples.PlutusV2.OneShotMinting
- Ctl.Examples.PlutusV2.ReferenceInputsAndScripts
- Ctl.Examples.PlutusV2.Scripts.AlwaysMints
- Ctl.Examples.PlutusV2.Scripts.AlwaysSucceeds
- Ctl.Examples.PlutusV3.Scripts.AlwaysMints
- Ctl.Examples.Schnorr
- Ctl.Examples.SendsToken
- Ctl.Examples.SignData
- Ctl.Examples.SignMultiple
- Ctl.Examples.TxChaining
- Ctl.Examples.Utxos
- Ctl.Examples.Wallet
- Ctl.Internal.BalanceTx
- Ctl.Internal.BalanceTx.CoinSelection
- Ctl.Internal.BalanceTx.Collateral
- Ctl.Internal.BalanceTx.Collateral.Select
- Ctl.Internal.BalanceTx.Constraints
- Ctl.Internal.BalanceTx.Error
- Ctl.Internal.BalanceTx.ExUnitsAndMinFee
- Ctl.Internal.BalanceTx.FakeOutput
- Ctl.Internal.BalanceTx.Sync
- Ctl.Internal.BalanceTx.Types
- Ctl.Internal.BalanceTx.UtxoMinAda
- Ctl.Internal.Cardano.TextEnvelope
- Ctl.Internal.CardanoCli
- Ctl.Internal.CoinSelection.UtxoIndex
- Ctl.Internal.Contract
- Ctl.Internal.Contract.AwaitTxConfirmed
- Ctl.Internal.Contract.Hooks
- Ctl.Internal.Contract.LogParams
- Ctl.Internal.Contract.MinFee
- Ctl.Internal.Contract.Monad
- Ctl.Internal.Contract.Provider
- Ctl.Internal.Contract.ProviderBackend
- Ctl.Internal.Contract.Sign
- Ctl.Internal.Contract.WaitUntilSlot
- Ctl.Internal.Contract.Wallet
- Ctl.Internal.FfiHelpers
- Ctl.Internal.Helpers
- Ctl.Internal.Helpers.Formatter
- Ctl.Internal.Helpers.UniqueId
- Ctl.Internal.IsData
- Ctl.Internal.Logging
- Ctl.Internal.Metadata.MetadataType
- Ctl.Internal.MinFee
- Ctl.Internal.NativeScripts
- Ctl.Internal.Partition
- Ctl.Internal.ProcessConstraints
- Ctl.Internal.ProcessConstraints.Error
- Ctl.Internal.ProcessConstraints.State
- Ctl.Internal.ServerConfig
- Ctl.Internal.Spawn
- Ctl.Internal.Test.ConsoleReporter
- Ctl.Internal.Test.ContractTest
- Ctl.Internal.Test.E2E.Browser
- Ctl.Internal.Test.E2E.Feedback
- Ctl.Internal.Test.E2E.Feedback.Browser
- Ctl.Internal.Test.E2E.Feedback.Hooks
- Ctl.Internal.Test.E2E.Feedback.Node
- Ctl.Internal.Test.E2E.Options
- Ctl.Internal.Test.E2E.Route
- Ctl.Internal.Test.E2E.Runner
- Ctl.Internal.Test.E2E.Types
- Ctl.Internal.Test.E2E.Wallets
- Ctl.Internal.Test.KeyDir
- Ctl.Internal.Test.UtxoDistribution
- Ctl.Internal.Testnet.Contract
- Ctl.Internal.Testnet.DistributeFunds
- Ctl.Internal.Testnet.Server
- Ctl.Internal.Testnet.Types
- Ctl.Internal.Testnet.Utils
- Ctl.Internal.Transaction
- Ctl.Internal.TxOutput
- Ctl.Internal.Types.Cbor
- Ctl.Internal.Types.Interval
- Ctl.Internal.Types.MetadataLabel
- Ctl.Internal.Types.ScriptLookups
- Ctl.Internal.Types.TxConstraints
- Ctl.Internal.Types.UsedTxOuts
- Ctl.Internal.Types.Val
- Ctl.Internal.Wallet
- Ctl.Internal.Wallet.Cip30
- Ctl.Internal.Wallet.Cip30Mock
- Ctl.Internal.Wallet.KeyFile
- Ctl.Internal.Wallet.Spec
- Internal.CardanoCli.Provider
- Scaffold
- Scaffold.Main
- Scaffold.Test.Blockfrost
- Scaffold.Test.E2E
- Scaffold.Test.E2E.Serve
- Test.Ctl.ApplyArgs
- Test.Ctl.BalanceTx.ChangeGeneration
- Test.Ctl.BalanceTx.Collateral
- Test.Ctl.BalanceTx.Time
- Test.Ctl.Blockfrost
- Test.Ctl.Blockfrost.Aeson.Suite
- Test.Ctl.Blockfrost.Contract
- Test.Ctl.Blockfrost.GenerateFixtures.ChainTip
- Test.Ctl.Blockfrost.GenerateFixtures.EraSummaries
- Test.Ctl.Blockfrost.GenerateFixtures.Helpers
- Test.Ctl.Blockfrost.GenerateFixtures.NativeScript
- Test.Ctl.Blockfrost.GenerateFixtures.ProtocolParameters
- Test.Ctl.Blockfrost.GenerateFixtures.ScriptInfo
- Test.Ctl.Blockfrost.GenerateFixtures.SystemStart
- Test.Ctl.CoinSelection
- Test.Ctl.CoinSelection.Arbitrary
- Test.Ctl.CoinSelection.RoundRobin
- Test.Ctl.CoinSelection.SelectionState
- Test.Ctl.CoinSelection.UtxoIndex
- Test.Ctl.CslGc
- Test.Ctl.Data
- Test.Ctl.Data.Interval
- Test.Ctl.E2E
- Test.Ctl.E2E.Route
- Test.Ctl.Fixtures
- Test.Ctl.Fixtures.CostModels
- Test.Ctl.Hashing
- Test.Ctl.Integration
- Test.Ctl.Internal.Hashing
- Test.Ctl.Internal.Plutus.Credential
- Test.Ctl.Internal.Plutus.Time
- Test.Ctl.KupmiosM.AffInterface
- Test.Ctl.Logging
- Test.Ctl.Main
- Test.Ctl.NativeScript
- Test.Ctl.Ogmios.Aeson
- Test.Ctl.Ogmios.EvaluateTx
- Test.Ctl.Ogmios.GenerateFixtures
- Test.Ctl.Partition
- Test.Ctl.PrivateKey
- Test.Ctl.ProtocolParameters
- Test.Ctl.Serialization
- Test.Ctl.Serialization.Hash
- Test.Ctl.Testnet
- Test.Ctl.Testnet.Common
- Test.Ctl.Testnet.Contract
- Test.Ctl.Testnet.Contract.Assert
- Test.Ctl.Testnet.Contract.Mnemonics
- Test.Ctl.Testnet.Contract.OgmiosMempool
- Test.Ctl.Testnet.DistributeFunds
- Test.Ctl.Testnet.ExUnits
- Test.Ctl.Testnet.Gov
- Test.Ctl.Testnet.Logging
- Test.Ctl.Testnet.SameWallets
- Test.Ctl.Testnet.Staking
- Test.Ctl.Testnet.Utils
- Test.Ctl.Testnet.UtxoDistribution
- Test.Ctl.Types.Interval
- Test.Ctl.Types.Ipv6
- Test.Ctl.Types.TokenName
- Test.Ctl.Types.Transaction
- Test.Ctl.Unit
- Test.Ctl.UsedTxOuts
- Test.Ctl.Utils
- Test.Ctl.Utils.DrainWallets
- Test.Ctl.Wallet.Bip32
- Test.Scaffold.Main
aeson
aff-promise
aff-retry
arraybuffer-types
assert
bignumber
bytearrays
cardano-collateral-select
cardano-data-lite
cardano-hd-wallet
cardano-key-wallet
cardano-kupmios-provider
- Cardano.Kupmios.Helpers
- Cardano.Kupmios.KupmiosM
- Cardano.Kupmios.KupmiosM.HttpUtils
- Cardano.Kupmios.Kupo
- Cardano.Kupmios.Logging
- Cardano.Kupmios.Ogmios
- Cardano.Kupmios.Ogmios.CurrentEpoch
- Cardano.Kupmios.Ogmios.EraSummaries
- Cardano.Kupmios.Ogmios.Helpers
- Cardano.Kupmios.Ogmios.Pools
- Cardano.Kupmios.Ogmios.Types
- Cardano.Kupmios.Provider
cardano-message-signing
cardano-transaction-builder
cardano-types
- Cardano.AsCbor
- Cardano.FromData
- Cardano.FromMetadata
- Cardano.ToData
- Cardano.ToMetadata
- Cardano.Types.Address
- Cardano.Types.Anchor
- Cardano.Types.AnchorDataHash
- Cardano.Types.Asset
- Cardano.Types.AssetClass
- Cardano.Types.AssetName
- Cardano.Types.AuxiliaryData
- Cardano.Types.AuxiliaryDataHash
- Cardano.Types.Base58String
- Cardano.Types.BaseAddress
- Cardano.Types.Bech32String
- Cardano.Types.BigInt
- Cardano.Types.BigNum
- Cardano.Types.BootstrapWitness
- Cardano.Types.ByronAddress
- Cardano.Types.CborBytes
- Cardano.Types.Certificate
- Cardano.Types.Chain
- Cardano.Types.Coin
- Cardano.Types.Committee
- Cardano.Types.Constitution
- Cardano.Types.CostModel
- Cardano.Types.Credential
- Cardano.Types.DRep
- Cardano.Types.DRepVotingThresholds
- Cardano.Types.DataHash
- Cardano.Types.DelegationsAndRewards
- Cardano.Types.Ed25519KeyHash
- Cardano.Types.Ed25519Signature
- Cardano.Types.EnterpriseAddress
- Cardano.Types.Epoch
- Cardano.Types.EraSummaries
- Cardano.Types.ExUnitPrices
- Cardano.Types.ExUnits
- Cardano.Types.GeneralTransactionMetadata
- Cardano.Types.GenesisHash
- Cardano.Types.GovernanceAction
- Cardano.Types.GovernanceActionId
- Cardano.Types.HardForkInitiationAction
- Cardano.Types.Int
- Cardano.Types.Internal.Helpers
- Cardano.Types.Ipv4
- Cardano.Types.Ipv6
- Cardano.Types.Language
- Cardano.Types.Mint
- Cardano.Types.MultiAsset
- Cardano.Types.NativeScript
- Cardano.Types.NetworkId
- Cardano.Types.NewConstitutionAction
- Cardano.Types.NoConfidenceAction
- Cardano.Types.OutputDatum
- Cardano.Types.ParameterChangeAction
- Cardano.Types.PaymentCredential
- Cardano.Types.PaymentPubKeyHash
- Cardano.Types.PlutusData
- Cardano.Types.PlutusScript
- Cardano.Types.PoolMetadata
- Cardano.Types.PoolMetadataHash
- Cardano.Types.PoolParams
- Cardano.Types.PoolPubKeyHash
- Cardano.Types.PoolVotingThresholds
- Cardano.Types.PrivateKey
- Cardano.Types.ProtocolParamUpdate
- Cardano.Types.ProtocolParameters
- Cardano.Types.ProtocolVersion
- Cardano.Types.PublicKey
- Cardano.Types.Rational
- Cardano.Types.RawBytes
- Cardano.Types.Redeemer
- Cardano.Types.RedeemerDatum
- Cardano.Types.RedeemerTag
- Cardano.Types.Relay
- Cardano.Types.RewardAddress
- Cardano.Types.ScriptDataHash
- Cardano.Types.ScriptHash
- Cardano.Types.ScriptRef
- Cardano.Types.Slot
- Cardano.Types.StakeCredential
- Cardano.Types.StakePubKeyHash
- Cardano.Types.StakeValidatorHash
- Cardano.Types.SystemStart
- Cardano.Types.Transaction
- Cardano.Types.TransactionBody
- Cardano.Types.TransactionHash
- Cardano.Types.TransactionInput
- Cardano.Types.TransactionMetadatum
- Cardano.Types.TransactionOutput
- Cardano.Types.TransactionUnspentOutput
- Cardano.Types.TransactionWitnessSet
- Cardano.Types.TreasuryWithdrawalsAction
- Cardano.Types.URL
- Cardano.Types.UnitInterval
- Cardano.Types.UpdateCommitteeAction
- Cardano.Types.UtxoMap
- Cardano.Types.VRFKeyHash
- Cardano.Types.Value
- Cardano.Types.Vkey
- Cardano.Types.Vkeywitness
- Cardano.Types.Vote
- Cardano.Types.Voter
- Cardano.Types.VotingProcedure
- Cardano.Types.VotingProcedures
- Cardano.Types.VotingProposal
catenable-lists
checked-exceptions
cip30
cip30-mock
cip30-typesafe
cip95
cip95-typesafe
const
debug
distributive
encoding
exceptions
exists
exitcodes
fixed-points
form-urlencoded
functions
heterogeneous
http-methods
identity
integers
invariant
js-bigints
js-date
js-uri
lazy
lcg
media-types
mmorph
mote-testplan
newtype
node-child-process
node-fs-aff
node-path
node-process
node-readline
node-streams
node-streams-aff
node-url
nonempty
now
nullable
open-memoize
options
optparse
- Options.Applicative.BashCompletion
- Options.Applicative.Builder
- Options.Applicative.Builder.Completer
- Options.Applicative.Builder.Internal
- Options.Applicative.Common
- Options.Applicative.Extra
- Options.Applicative.Help.Chunk
- Options.Applicative.Help.Core
- Options.Applicative.Help.Levenshtein
- Options.Applicative.Help.Pretty
- Options.Applicative.Help.Types
- Options.Applicative.Internal
- Options.Applicative.Internal.Utils
- Options.Applicative.Types
- Text.PrettyPrint.Leijen
ordered-collections
partial
plutus-types
- Cardano.Plutus.Types.Address
- Cardano.Plutus.Types.Credential
- Cardano.Plutus.Types.CurrencySymbol
- Cardano.Plutus.Types.Map
- Cardano.Plutus.Types.MintingPolicyHash
- Cardano.Plutus.Types.OutputDatum
- Cardano.Plutus.Types.PaymentPubKeyHash
- Cardano.Plutus.Types.PubKeyHash
- Cardano.Plutus.Types.StakePubKeyHash
- Cardano.Plutus.Types.StakingCredential
- Cardano.Plutus.Types.TokenName
- Cardano.Plutus.Types.TransactionOutput
- Cardano.Plutus.Types.TransactionOutputWithRefScript
- Cardano.Plutus.Types.TransactionUnspentOutput
- Cardano.Plutus.Types.UtxoMap
- Cardano.Plutus.Types.Validator
- Cardano.Plutus.Types.ValidatorHash
- Cardano.Plutus.Types.Value
posix-types
prelude
- Control.Applicative
- Control.Apply
- Control.Bind
- Control.Category
- Control.Monad
- Control.Semigroupoid
- Data.Boolean
- Data.BooleanAlgebra
- Data.Bounded
- Data.Bounded.Generic
- Data.CommutativeRing
- Data.DivisionRing
- Data.Eq
- Data.Eq.Generic
- Data.EuclideanRing
- Data.Field
- Data.Function
- Data.Functor
- Data.Generic.Rep
- Data.HeytingAlgebra
- Data.HeytingAlgebra.Generic
- Data.Monoid
- Data.Monoid.Additive
- Data.Monoid.Conj
- Data.Monoid.Disj
- Data.Monoid.Dual
- Data.Monoid.Endo
- Data.Monoid.Generic
- Data.Monoid.Multiplicative
- Data.NaturalTransformation
- Data.Ord
- Data.Ord.Generic
- Data.Ordering
- Data.Reflectable
- Data.Ring
- Data.Ring.Generic
- Data.Semigroup
- Data.Semigroup.First
- Data.Semigroup.Generic
- Data.Semigroup.Last
- Data.Semiring
- Data.Semiring.Generic
- Data.Show
- Data.Show.Generic
- Data.Symbol
- Data.Unit
- Data.Void
- Record.Unsafe
- Type.Proxy
profunctor-lenses
- Data.Lens.AffineTraversal
- Data.Lens.At
- Data.Lens.Common
- Data.Lens.Fold
- Data.Lens.Fold.Partial
- Data.Lens.Getter
- Data.Lens.Grate
- Data.Lens.Index
- Data.Lens.Indexed
- Data.Lens.Internal.Bazaar
- Data.Lens.Internal.Exchange
- Data.Lens.Internal.Focusing
- Data.Lens.Internal.Forget
- Data.Lens.Internal.Grating
- Data.Lens.Internal.Indexed
- Data.Lens.Internal.Market
- Data.Lens.Internal.Re
- Data.Lens.Internal.Shop
- Data.Lens.Internal.Stall
- Data.Lens.Internal.Tagged
- Data.Lens.Internal.Wander
- Data.Lens.Internal.Zipping
- Data.Lens.Iso
- Data.Lens.Iso.Newtype
- Data.Lens.Lens
- Data.Lens.Lens.Product
- Data.Lens.Lens.Tuple
- Data.Lens.Lens.Unit
- Data.Lens.Lens.Void
- Data.Lens.Prism
- Data.Lens.Prism.Coproduct
- Data.Lens.Prism.Either
- Data.Lens.Prism.Maybe
- Data.Lens.Record
- Data.Lens.Setter
- Data.Lens.Traversal
- Data.Lens.Types
- Data.Lens.Zoom
properties
psci-support
quickcheck-combinators
quickcheck-laws
- Test.QuickCheck.Laws
- Test.QuickCheck.Laws.Control.Alt
- Test.QuickCheck.Laws.Control.Alternative
- Test.QuickCheck.Laws.Control.Applicative
- Test.QuickCheck.Laws.Control.Apply
- Test.QuickCheck.Laws.Control.Bind
- Test.QuickCheck.Laws.Control.Category
- Test.QuickCheck.Laws.Control.Comonad
- Test.QuickCheck.Laws.Control.Extend
- Test.QuickCheck.Laws.Control.Monad
- Test.QuickCheck.Laws.Control.MonadPlus
- Test.QuickCheck.Laws.Control.Plus
- Test.QuickCheck.Laws.Control.Semigroupoid
- Test.QuickCheck.Laws.Data.BooleanAlgebra
- Test.QuickCheck.Laws.Data.Bounded
- Test.QuickCheck.Laws.Data.BoundedEnum
- Test.QuickCheck.Laws.Data.CommutativeRing
- Test.QuickCheck.Laws.Data.DivisionRing
- Test.QuickCheck.Laws.Data.Enum
- Test.QuickCheck.Laws.Data.Eq
- Test.QuickCheck.Laws.Data.EuclideanRing
- Test.QuickCheck.Laws.Data.Field
- Test.QuickCheck.Laws.Data.Foldable
- Test.QuickCheck.Laws.Data.Functor
- Test.QuickCheck.Laws.Data.FunctorWithIndex
- Test.QuickCheck.Laws.Data.HeytingAlgebra
- Test.QuickCheck.Laws.Data.Monoid
- Test.QuickCheck.Laws.Data.Ord
- Test.QuickCheck.Laws.Data.Ring
- Test.QuickCheck.Laws.Data.Semigroup
- Test.QuickCheck.Laws.Data.Semiring
random
rationals
refs
safe-coerce
safely
spec
- Test.Spec
- Test.Spec.Assertions
- Test.Spec.Assertions.String
- Test.Spec.Console
- Test.Spec.Reporter.Base
- Test.Spec.Reporter.Console
- Test.Spec.Reporter.Dot
- Test.Spec.Reporter.Spec
- Test.Spec.Reporter.Tap
- Test.Spec.Reporter.TeamCity
- Test.Spec.Result
- Test.Spec.Runner
- Test.Spec.Runner.Event
- Test.Spec.Speed
- Test.Spec.Style
- Test.Spec.Summary
- Test.Spec.Tree
spec-quickcheck
strings
- Data.Char
- Data.Char.Gen
- Data.String.CaseInsensitive
- Data.String.CodePoints
- Data.String.CodeUnits
- Data.String.Common
- Data.String.Gen
- Data.String.NonEmpty.CaseInsensitive
- Data.String.NonEmpty.CodePoints
- Data.String.NonEmpty.CodeUnits
- Data.String.NonEmpty.Internal
- Data.String.Pattern
- Data.String.Regex
- Data.String.Regex.Flags
- Data.String.Regex.Unsafe
- Data.String.Unsafe
stringutils
tailrec
toppokki
transformers
- Control.Comonad.Env
- Control.Comonad.Env.Class
- Control.Comonad.Env.Trans
- Control.Comonad.Store
- Control.Comonad.Store.Class
- Control.Comonad.Store.Trans
- Control.Comonad.Traced
- Control.Comonad.Traced.Class
- Control.Comonad.Traced.Trans
- Control.Comonad.Trans.Class
- Control.Monad.Cont
- Control.Monad.Cont.Class
- Control.Monad.Cont.Trans
- Control.Monad.Error.Class
- Control.Monad.Except
- Control.Monad.Except.Trans
- Control.Monad.Identity.Trans
- Control.Monad.List.Trans
- Control.Monad.Maybe.Trans
- Control.Monad.RWS
- Control.Monad.RWS.Trans
- Control.Monad.Reader
- Control.Monad.Reader.Class
- Control.Monad.Reader.Trans
- Control.Monad.State
- Control.Monad.State.Class
- Control.Monad.State.Trans
- Control.Monad.Trans.Class
- Control.Monad.Writer
- Control.Monad.Writer.Class
- Control.Monad.Writer.Trans
type-equality
unfoldable
unsafe-coerce
untagged-union
uplc-apply-args
web-dom
- Web.DOM.CharacterData
- Web.DOM.ChildNode
- Web.DOM.Comment
- Web.DOM.DOMTokenList
- Web.DOM.Document
- Web.DOM.DocumentFragment
- Web.DOM.DocumentType
- Web.DOM.Element
- Web.DOM.HTMLCollection
- Web.DOM.Internal.Types
- Web.DOM.MutationObserver
- Web.DOM.MutationRecord
- Web.DOM.Node
- Web.DOM.NodeList
- Web.DOM.NodeType
- Web.DOM.NonDocumentTypeChildNode
- Web.DOM.NonElementParentNode
- Web.DOM.ParentNode
- Web.DOM.ProcessingInstruction
- Web.DOM.ShadowRoot
- Web.DOM.Text
web-html
- Web.HTML
- Web.HTML.Common
- Web.HTML.Event.BeforeUnloadEvent
- Web.HTML.Event.BeforeUnloadEvent.EventTypes
- Web.HTML.Event.DataTransfer
- Web.HTML.Event.DataTransfer.DataTransferItem
- Web.HTML.Event.DragEvent
- Web.HTML.Event.DragEvent.EventTypes
- Web.HTML.Event.ErrorEvent
- Web.HTML.Event.EventTypes
- Web.HTML.Event.HashChangeEvent
- Web.HTML.Event.HashChangeEvent.EventTypes
- Web.HTML.Event.PageTransitionEvent
- Web.HTML.Event.PageTransitionEvent.EventTypes
- Web.HTML.Event.PopStateEvent
- Web.HTML.Event.PopStateEvent.EventTypes
- Web.HTML.Event.TrackEvent
- Web.HTML.Event.TrackEvent.EventTypes
- Web.HTML.HTMLAnchorElement
- Web.HTML.HTMLAreaElement
- Web.HTML.HTMLAudioElement
- Web.HTML.HTMLBRElement
- Web.HTML.HTMLBaseElement
- Web.HTML.HTMLBodyElement
- Web.HTML.HTMLButtonElement
- Web.HTML.HTMLCanvasElement
- Web.HTML.HTMLDListElement
- Web.HTML.HTMLDataElement
- Web.HTML.HTMLDataListElement
- Web.HTML.HTMLDivElement
- Web.HTML.HTMLDocument
- Web.HTML.HTMLDocument.ReadyState
- Web.HTML.HTMLDocument.VisibilityState
- Web.HTML.HTMLElement
- Web.HTML.HTMLEmbedElement
- Web.HTML.HTMLFieldSetElement
- Web.HTML.HTMLFormElement
- Web.HTML.HTMLHRElement
- Web.HTML.HTMLHeadElement
- Web.HTML.HTMLHeadingElement
- Web.HTML.HTMLHtmlElement
- Web.HTML.HTMLHyperlinkElementUtils
- Web.HTML.HTMLIFrameElement
- Web.HTML.HTMLImageElement
- Web.HTML.HTMLImageElement.CORSMode
- Web.HTML.HTMLImageElement.DecodingHint
- Web.HTML.HTMLImageElement.Laziness
- Web.HTML.HTMLInputElement
- Web.HTML.HTMLKeygenElement
- Web.HTML.HTMLLIElement
- Web.HTML.HTMLLabelElement
- Web.HTML.HTMLLegendElement
- Web.HTML.HTMLLinkElement
- Web.HTML.HTMLMapElement
- Web.HTML.HTMLMediaElement
- Web.HTML.HTMLMediaElement.CanPlayType
- Web.HTML.HTMLMediaElement.NetworkState
- Web.HTML.HTMLMediaElement.ReadyState
- Web.HTML.HTMLMetaElement
- Web.HTML.HTMLMeterElement
- Web.HTML.HTMLModElement
- Web.HTML.HTMLOListElement
- Web.HTML.HTMLObjectElement
- Web.HTML.HTMLOptGroupElement
- Web.HTML.HTMLOptionElement
- Web.HTML.HTMLOutputElement
- Web.HTML.HTMLParagraphElement
- Web.HTML.HTMLParamElement
- Web.HTML.HTMLPreElement
- Web.HTML.HTMLProgressElement
- Web.HTML.HTMLQuoteElement
- Web.HTML.HTMLScriptElement
- Web.HTML.HTMLSelectElement
- Web.HTML.HTMLSourceElement
- Web.HTML.HTMLSpanElement
- Web.HTML.HTMLStyleElement
- Web.HTML.HTMLTableCaptionElement
- Web.HTML.HTMLTableCellElement
- Web.HTML.HTMLTableColElement
- Web.HTML.HTMLTableDataCellElement
- Web.HTML.HTMLTableElement
- Web.HTML.HTMLTableHeaderCellElement
- Web.HTML.HTMLTableRowElement
- Web.HTML.HTMLTableSectionElement
- Web.HTML.HTMLTemplateElement
- Web.HTML.HTMLTextAreaElement
- Web.HTML.HTMLTimeElement
- Web.HTML.HTMLTitleElement
- Web.HTML.HTMLTrackElement
- Web.HTML.HTMLTrackElement.ReadyState
- Web.HTML.HTMLUListElement
- Web.HTML.HTMLVideoElement
- Web.HTML.History
- Web.HTML.Location
- Web.HTML.Navigator
- Web.HTML.SelectionMode
- Web.HTML.ValidityState
- Web.HTML.Window