{-# LANGUAGE DataKinds #-} module Cardano.CLI.EraBased.Script.Vote.Type ( createSimpleOrPlutusScriptFromCliArgs , createPlutusReferenceScriptFromCliArgs ) where import Cardano.Api ( ExecutionUnits , File , FileDirection (In) , ScriptInAnyLang , TxIn ) import Cardano.CLI.EraBased.Script.Type import Cardano.CLI.Type.Common (AnySLanguage, ScriptDataOrFile) createSimpleOrPlutusScriptFromCliArgs :: File ScriptInAnyLang In -> Maybe (ScriptDataOrFile, ExecutionUnits) -> AnyNonAssetScript createSimpleOrPlutusScriptFromCliArgs :: File ScriptInAnyLang 'In -> Maybe (ScriptDataOrFile, ExecutionUnits) -> AnyNonAssetScript createSimpleOrPlutusScriptFromCliArgs File ScriptInAnyLang 'In scriptFp (Just (ScriptDataOrFile redeemer, ExecutionUnits execUnits)) = PlutusNonAssetScriptRequirements -> AnyNonAssetScript AnyNonAssetScriptPlutus (PlutusNonAssetScriptRequirements -> AnyNonAssetScript) -> PlutusNonAssetScriptRequirements -> AnyNonAssetScript forall a b. (a -> b) -> a -> b $ File ScriptInAnyLang 'In -> ScriptDataOrFile -> ExecutionUnits -> PlutusNonAssetScriptRequirements OnDiskPlutusNonAssetScript File ScriptInAnyLang 'In scriptFp ScriptDataOrFile redeemer ExecutionUnits execUnits createSimpleOrPlutusScriptFromCliArgs File ScriptInAnyLang 'In scriptFp Maybe (ScriptDataOrFile, ExecutionUnits) Nothing = SimpleScriptRequirements -> AnyNonAssetScript AnyNonAssetScriptSimple (SimpleScriptRequirements -> AnyNonAssetScript) -> SimpleScriptRequirements -> AnyNonAssetScript forall a b. (a -> b) -> a -> b $ File ScriptInAnyLang 'In -> SimpleScriptRequirements OnDiskSimpleScript File ScriptInAnyLang 'In scriptFp createPlutusReferenceScriptFromCliArgs :: TxIn -> AnySLanguage -> ScriptDataOrFile -> ExecutionUnits -> AnyNonAssetScript createPlutusReferenceScriptFromCliArgs :: TxIn -> AnySLanguage -> ScriptDataOrFile -> ExecutionUnits -> AnyNonAssetScript createPlutusReferenceScriptFromCliArgs TxIn txIn AnySLanguage anySLang ScriptDataOrFile redeemer ExecutionUnits execUnits = PlutusNonAssetScriptRequirements -> AnyNonAssetScript AnyNonAssetScriptPlutus (PlutusNonAssetScriptRequirements -> AnyNonAssetScript) -> PlutusNonAssetScriptRequirements -> AnyNonAssetScript forall a b. (a -> b) -> a -> b $ TxIn -> AnySLanguage -> ScriptDataOrFile -> ExecutionUnits -> PlutusNonAssetScriptRequirements ReferencePlutusNonAssetScript TxIn txIn AnySLanguage anySLang ScriptDataOrFile redeemer ExecutionUnits execUnits