Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Cooked.Tweak.Inputs
Description
This module provides some Tweak
s that add or remove inputs and outputs
from transactions. Some also operate on the minted value.
Synopsis
- ensureInputTweak :: MonadTweak m => TxOutRef -> TxSkelRedeemer -> m (Maybe (TxOutRef, TxSkelRedeemer))
- addInputTweak :: MonadTweak m => TxOutRef -> TxSkelRedeemer -> m ()
- removeInputTweak :: MonadTweak m => (TxOutRef -> TxSkelRedeemer -> Bool) -> m [(TxOutRef, TxSkelRedeemer)]
- modifySpendRedeemersOfTypeTweak :: forall a b m. (Typeable a, RedeemerConstrs b, MonadTweak m) => (a -> Maybe b) -> m ()
Documentation
ensureInputTweak :: MonadTweak m => TxOutRef -> TxSkelRedeemer -> m (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 :: MonadTweak m => TxOutRef -> TxSkelRedeemer -> m () Source #
Add an input to a transaction. If the given TxOutRef
is already being
consumed by the transaction, fail.
removeInputTweak :: MonadTweak m => (TxOutRef -> TxSkelRedeemer -> Bool) -> m [(TxOutRef, TxSkelRedeemer)] Source #
Remove transaction inputs according to a given predicate. The returned list contains all removed inputs.
modifySpendRedeemersOfTypeTweak :: forall a b m. (Typeable a, RedeemerConstrs b, MonadTweak m) => (a -> Maybe b) -> m () Source #
Applies an optional modification to all spend redeemers of type a