Skip to content

Commit deb5ece

Browse files
committed
Implement plutusScriptInEraLanguage
1 parent 7f5ec42 commit deb5ece

File tree

4 files changed

+19
-8
lines changed

4 files changed

+19
-8
lines changed

cardano-api/gen/Test/Gen/Cardano/Api/Experimental.hs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,15 +40,15 @@ genAnyPlutusScriptWitnessV1 =
4040

4141
genAnyPlutusScriptWitnessV2 :: Gen (AnyWitness era)
4242
genAnyPlutusScriptWitnessV2 =
43-
AnyPlutusScriptWitness <$> fmap AnyPlutusMintingScriptWitness (genPlutusScriptWitness L.SPlutusV2)
43+
AnyPlutusScriptWitness <$> error "TODO" -- genPlutusScriptWitness L.SPlutusV2
4444

4545
genAnyPlutusScriptWitnessV3 :: Gen (AnyWitness era)
4646
genAnyPlutusScriptWitnessV3 =
47-
AnyPlutusScriptWitness <$> fmap AnyPlutusMintingScriptWitness (genPlutusScriptWitness L.SPlutusV3)
47+
AnyPlutusScriptWitness <$> error "TODO" -- genPlutusScriptWitness L.SPlutusV3
4848

4949
genAnyPlutusScriptWitnessV4 :: Gen (AnyWitness era)
5050
genAnyPlutusScriptWitnessV4 =
51-
AnyPlutusScriptWitness <$> fmap AnyPlutusMintingScriptWitness (genPlutusScriptWitness L.SPlutusV4)
51+
AnyPlutusScriptWitness <$> error "TODO" -- genPlutusScriptWitness L.SPlutusV4
5252

5353
genAnySimpleScriptWitness :: Gen (SimpleScriptOrReferenceInput era)
5454
genAnySimpleScriptWitness = SReferenceScript <$> genTxIn

cardano-api/src/Cardano/Api/Experimental/Plutus.hs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
module Cardano.Api.Experimental.Plutus
22
( -- * Plutus Script
33
PlutusScriptInEra (..)
4+
, plutusScriptInEraLanguage
45

56
-- * Legacy Scripts
67
, convertToNewScriptWitness

cardano-api/src/Cardano/Api/Experimental/Plutus/Internal/Script.hs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,15 @@
22
{-# LANGUAGE FlexibleContexts #-}
33
{-# LANGUAGE GADTs #-}
44
{-# LANGUAGE KindSignatures #-}
5+
{-# LANGUAGE RankNTypes #-}
6+
{-# LANGUAGE ScopedTypeVariables #-}
57
{-# LANGUAGE StandaloneDeriving #-}
8+
{-# LANGUAGE TypeApplications #-}
69

710
module Cardano.Api.Experimental.Plutus.Internal.Script
811
( PlutusScriptInEra (..)
912
, PlutusScriptOrReferenceInput (..)
13+
, plutusScriptInEraLanguage
1014
)
1115
where
1216

@@ -15,6 +19,8 @@ import Cardano.Api.Tx.Internal.TxIn (TxIn)
1519
import Cardano.Ledger.Plutus.Language (PlutusRunnable)
1620
import Cardano.Ledger.Plutus.Language qualified as L
1721

22+
import Data.Proxy
23+
1824
-- | A Plutus script in a particular era.
1925
-- Why PlutusRunnable? Mainly for deserialization benefits.
2026
-- The deserialization of this type looks at the
@@ -38,6 +44,11 @@ deriving instance Show (PlutusScriptInEra lang era)
3844

3945
deriving instance Eq (PlutusScriptInEra lang era)
4046

47+
plutusScriptInEraLanguage
48+
:: forall lang era. L.PlutusLanguage lang => PlutusScriptInEra lang era -> L.Language
49+
plutusScriptInEraLanguage (PlutusScriptInEra _) =
50+
L.plutusLanguage (Proxy @lang)
51+
4152
-- | You can provide the plutus script directly in the transaction
4253
-- or a reference input that points to the script in the UTxO.
4354
-- Using a reference script saves space in your transaction.

cardano-api/src/Cardano/Api/Experimental/Tx/Internal/Fee.hs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
{-# LANGUAGE TypeApplications #-}
1212

1313
module Cardano.Api.Experimental.Tx.Internal.Fee
14-
( estimateBalancedTxBody
14+
( collectTxBodyScriptWitnesses
15+
, estimateBalancedTxBody
1516
, evaluateTransactionFee
1617
)
1718
where
@@ -22,7 +23,6 @@ import Cardano.Api.Era.Internal.Eon.Convert
2223
import Cardano.Api.Experimental.AnyScriptWitness
2324
import Cardano.Api.Experimental.AnyScriptWitness qualified as Exp
2425
import Cardano.Api.Experimental.Era
25-
import Cardano.Api.Experimental.Plutus.Internal.ScriptWitness
2626
import Cardano.Api.Experimental.Tx.Internal.AnyWitness
2727
import Cardano.Api.Experimental.Tx.Internal.BodyContent.New
2828
import Cardano.Api.Experimental.Tx.Internal.Certificate qualified as Exp
@@ -31,8 +31,7 @@ import Cardano.Api.Key.Internal qualified as Api
3131
import Cardano.Api.Ledger.Internal.Reexport qualified as L
3232
import Cardano.Api.ProtocolParameters
3333
import Cardano.Api.Tx.Internal.Body
34-
( AnyScriptWitness (AnyScriptWitness)
35-
, CtxTx
34+
( CtxTx
3635
, ScriptWitnessIndex (..)
3736
, toScriptIndex
3837
)
@@ -778,7 +777,7 @@ collectTxBodyScriptWitnesses
778777
, scriptWitnessesCertificates txCertificates
779778
, scriptWitnessesMinting txMintValue
780779
, maybe [] scriptWitnessesVoting txVotingProcedures
781-
-- , maybe [] scriptWitnessesProposing txProposalProcedures
780+
, maybe [] scriptWitnessesProposing txProposalProcedures
782781
]
783782
where
784783
scriptWitnessesTxIns

0 commit comments

Comments
 (0)