{-# LANGUAGE DataKinds #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE GADTs #-} module Cardano.CLI.EraBased.Script.Spend.Type ( PlutusRefScriptCliArgs (..) , SimpleRefScriptCliArgs (..) , SpendScriptWitness (..) , createSimpleOrPlutusScriptFromCliArgs , createPlutusReferenceScriptFromCliArgs , createSimpleReferenceScriptFromCliArgs ) where import Cardano.Api import Cardano.Api.Experimental import Cardano.CLI.EraBased.Script.Type import Cardano.CLI.Type.Common (ScriptDataOrFile) newtype SpendScriptWitness era = SpendScriptWitness {forall era. SpendScriptWitness era -> ScriptWitness WitCtxTxIn era sswScriptWitness :: ScriptWitness WitCtxTxIn era} deriving Int -> SpendScriptWitness era -> ShowS [SpendScriptWitness era] -> ShowS SpendScriptWitness era -> String (Int -> SpendScriptWitness era -> ShowS) -> (SpendScriptWitness era -> String) -> ([SpendScriptWitness era] -> ShowS) -> Show (SpendScriptWitness era) forall era. Int -> SpendScriptWitness era -> ShowS forall era. [SpendScriptWitness era] -> ShowS forall era. SpendScriptWitness era -> String forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: forall era. Int -> SpendScriptWitness era -> ShowS showsPrec :: Int -> SpendScriptWitness era -> ShowS $cshow :: forall era. SpendScriptWitness era -> String show :: SpendScriptWitness era -> String $cshowList :: forall era. [SpendScriptWitness era] -> ShowS showList :: [SpendScriptWitness era] -> ShowS Show createSimpleOrPlutusScriptFromCliArgs :: File ScriptInAnyLang In -> Maybe (ScriptDatumOrFileSpending, ScriptDataOrFile, ExecutionUnits) -> ScriptRequirements TxInItem createSimpleOrPlutusScriptFromCliArgs :: File ScriptInAnyLang 'In -> Maybe (ScriptDatumOrFileSpending, ScriptDataOrFile, ExecutionUnits) -> ScriptRequirements 'TxInItem createSimpleOrPlutusScriptFromCliArgs File ScriptInAnyLang 'In scriptFp (Just (ScriptDatumOrFileSpending datumFile, ScriptDataOrFile redeemerFile, ExecutionUnits execUnits)) = OnDiskPlutusScriptCliArgs 'TxInItem -> ScriptRequirements 'TxInItem forall (witnessable :: WitnessableItem). OnDiskPlutusScriptCliArgs witnessable -> ScriptRequirements witnessable OnDiskPlutusScript (OnDiskPlutusScriptCliArgs 'TxInItem -> ScriptRequirements 'TxInItem) -> OnDiskPlutusScriptCliArgs 'TxInItem -> ScriptRequirements 'TxInItem forall a b. (a -> b) -> a -> b $ File ScriptInAnyLang 'In -> OptionalDatum 'TxInItem -> ScriptDataOrFile -> ExecutionUnits -> OnDiskPlutusScriptCliArgs 'TxInItem forall (witnessable :: WitnessableItem). File ScriptInAnyLang 'In -> OptionalDatum witnessable -> ScriptDataOrFile -> ExecutionUnits -> OnDiskPlutusScriptCliArgs witnessable OnDiskPlutusScriptCliArgs File ScriptInAnyLang 'In scriptFp ScriptDatumOrFileSpending OptionalDatum 'TxInItem datumFile ScriptDataOrFile redeemerFile ExecutionUnits execUnits createSimpleOrPlutusScriptFromCliArgs File ScriptInAnyLang 'In scriptFp Maybe (ScriptDatumOrFileSpending, ScriptDataOrFile, ExecutionUnits) Nothing = File ScriptInAnyLang 'In -> ScriptRequirements 'TxInItem forall (witnessable :: WitnessableItem). File ScriptInAnyLang 'In -> ScriptRequirements witnessable OnDiskSimpleScript File ScriptInAnyLang 'In scriptFp createSimpleReferenceScriptFromCliArgs :: TxIn -> ScriptRequirements TxInItem createSimpleReferenceScriptFromCliArgs :: TxIn -> ScriptRequirements 'TxInItem createSimpleReferenceScriptFromCliArgs = SimpleRefScriptCliArgs 'TxInItem -> ScriptRequirements 'TxInItem forall (witnessable :: WitnessableItem). SimpleRefScriptCliArgs witnessable -> ScriptRequirements witnessable SimpleReferenceScript (SimpleRefScriptCliArgs 'TxInItem -> ScriptRequirements 'TxInItem) -> (TxIn -> SimpleRefScriptCliArgs 'TxInItem) -> TxIn -> ScriptRequirements 'TxInItem forall b c a. (b -> c) -> (a -> b) -> a -> c . (TxIn -> NoPolicyId -> SimpleRefScriptCliArgs 'TxInItem) -> NoPolicyId -> TxIn -> SimpleRefScriptCliArgs 'TxInItem forall a b c. (a -> b -> c) -> b -> a -> c flip TxIn -> NoPolicyId -> SimpleRefScriptCliArgs 'TxInItem TxIn -> MintPolicyId 'TxInItem -> SimpleRefScriptCliArgs 'TxInItem forall (witnessable :: WitnessableItem). TxIn -> MintPolicyId witnessable -> SimpleRefScriptCliArgs witnessable SimpleRefScriptArgs NoPolicyId NoPolicyId createPlutusReferenceScriptFromCliArgs :: TxIn -> AnyPlutusScriptVersion -> ScriptDatumOrFileSpending -> ScriptDataOrFile -> ExecutionUnits -> ScriptRequirements TxInItem createPlutusReferenceScriptFromCliArgs :: TxIn -> AnyPlutusScriptVersion -> ScriptDatumOrFileSpending -> ScriptDataOrFile -> ExecutionUnits -> ScriptRequirements 'TxInItem createPlutusReferenceScriptFromCliArgs TxIn txin AnyPlutusScriptVersion v ScriptDatumOrFileSpending mDatum ScriptDataOrFile redeemer ExecutionUnits execUnits = PlutusRefScriptCliArgs 'TxInItem -> ScriptRequirements 'TxInItem forall (witnessable :: WitnessableItem). PlutusRefScriptCliArgs witnessable -> ScriptRequirements witnessable PlutusReferenceScript (PlutusRefScriptCliArgs 'TxInItem -> ScriptRequirements 'TxInItem) -> PlutusRefScriptCliArgs 'TxInItem -> ScriptRequirements 'TxInItem forall a b. (a -> b) -> a -> b $ TxIn -> AnyPlutusScriptVersion -> OptionalDatum 'TxInItem -> MintPolicyId 'TxInItem -> ScriptDataOrFile -> ExecutionUnits -> PlutusRefScriptCliArgs 'TxInItem forall (witnessable :: WitnessableItem). TxIn -> AnyPlutusScriptVersion -> OptionalDatum witnessable -> MintPolicyId witnessable -> ScriptDataOrFile -> ExecutionUnits -> PlutusRefScriptCliArgs witnessable PlutusRefScriptCliArgs TxIn txin AnyPlutusScriptVersion v ScriptDatumOrFileSpending OptionalDatum 'TxInItem mDatum NoPolicyId MintPolicyId 'TxInItem NoPolicyId ScriptDataOrFile redeemer ExecutionUnits execUnits