cooked-validators
Safe HaskellSafe-Inferred
LanguageHaskell2010

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

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