module Hydra.Cardano.Api.ReferenceScript where

import Hydra.Cardano.Api.Prelude

-- | Construct a 'ReferenceScript' from any given Plutus script.
mkScriptRef :: IsPlutusScriptLanguage lang => PlutusScript lang -> ReferenceScript Era
mkScriptRef :: forall lang.
IsPlutusScriptLanguage lang =>
PlutusScript lang -> ReferenceScript Era
mkScriptRef =
  BabbageEraOnwards Era -> ScriptInAnyLang -> ReferenceScript Era
forall era.
BabbageEraOnwards era -> ScriptInAnyLang -> ReferenceScript era
ReferenceScript BabbageEraOnwards Era
forall era. IsBabbageBasedEra era => BabbageEraOnwards era
babbageBasedEra
    (ScriptInAnyLang -> ReferenceScript Era)
-> (PlutusScript lang -> ScriptInAnyLang)
-> PlutusScript lang
-> ReferenceScript Era
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Script lang -> ScriptInAnyLang
forall lang. Script lang -> ScriptInAnyLang
toScriptInAnyLang
    (Script lang -> ScriptInAnyLang)
-> (PlutusScript lang -> Script lang)
-> PlutusScript lang
-> ScriptInAnyLang
forall b c a. (b -> c) -> (a -> b) -> a -> c
. PlutusScriptVersion lang -> PlutusScript lang -> Script lang
forall lang.
IsPlutusScriptLanguage lang =>
PlutusScriptVersion lang -> PlutusScript lang -> Script lang
PlutusScript PlutusScriptVersion lang
forall lang.
IsPlutusScriptLanguage lang =>
PlutusScriptVersion lang
plutusScriptVersion