| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Cooked.Tweak.Inputs
Description
This module provides some Tweaks that add or remove inputs and outputs
from transactions. Some also operate on the minted value.
Synopsis
- ensureInputTweak :: Member Tweak effs => TxOutRef -> TxSkelRedeemer -> Sem effs (Maybe (TxOutRef, TxSkelRedeemer))
- addInputTweak :: Members '[Tweak, NonDet] effs => TxOutRef -> TxSkelRedeemer -> Sem effs ()
- removeInputTweak :: Member Tweak effs => (TxOutRef -> TxSkelRedeemer -> Bool) -> Sem effs [(TxOutRef, TxSkelRedeemer)]
- modifySpendRedeemersOfTypeTweak :: forall a b effs. (RedeemerConstrs a, RedeemerConstrs b, Member Tweak effs) => (a -> Maybe b) -> Sem effs [TxSkelRedeemer]
Documentation
ensureInputTweak :: Member Tweak effs => TxOutRef -> TxSkelRedeemer -> Sem effs (Maybe (TxOutRef, TxSkelRedeemer)) Source #
Ensure that a given TxOutRef is being spent with a given
TxSkelRedeemer. The return value will be Just the added data, if anything
changed.
addInputTweak :: Members '[Tweak, NonDet] effs => TxOutRef -> TxSkelRedeemer -> Sem effs () Source #
Add an input to a transaction. If the given TxOutRef is already being
consumed by the transaction, fail.
removeInputTweak :: Member Tweak effs => (TxOutRef -> TxSkelRedeemer -> Bool) -> Sem effs [(TxOutRef, TxSkelRedeemer)] Source #
Remove transaction inputs according to a given predicate. The returned list contains all removed inputs.
modifySpendRedeemersOfTypeTweak :: forall a b effs. (RedeemerConstrs a, RedeemerConstrs b, Member Tweak effs) => (a -> Maybe b) -> Sem effs [TxSkelRedeemer] Source #
Applies an optional modification to all spend redeemers of type a. Returns the list of modified spending redemeers, as they were before being modified.