44-- FIXME: move all lib functions (`LiftPlutarch`s) to another module
55module Cardano.CEM where
66
7- import Prelude
8-
97import Data.Map qualified as Map
108import Data.Maybe (fromJust )
9+ import Data.Singletons.TH
10+ import Data.Spine (HasPlutusSpine , HasSpine (.. ), derivePlutusSpine , spineFieldsNum )
11+ import Data.Text (Text )
1112import GHC.OverloadedLabels (IsLabel (.. ))
1213import GHC.Records (HasField (.. ))
1314import GHC.TypeLits (KnownSymbol , Symbol , symbolVal )
14- import Unsafe.Coerce (unsafeCoerce )
15-
16- -- Plutus imports
17- import PlutusLedgerApi.V1.Crypto (PubKeyHash )
18- import PlutusLedgerApi.V2 (ToData (.. ), Value )
19- import PlutusTx qualified
20- import PlutusTx.Builtins qualified as PlutusTx
21-
22- import Data.Singletons.TH
23- import Data.Text (Text )
2415import Plutarch (Config (.. ), (#) )
2516import Plutarch.Builtin (PIsData )
2617import Plutarch.Evaluate (evalTerm )
18+ import Plutarch.Extras
2719import Plutarch.LedgerApi (KeyGuarantees (.. ))
2820import Plutarch.LedgerApi.Value
2921import Plutarch.Lift (PUnsafeLiftDecl (.. ), pconstant , plift )
@@ -37,11 +29,13 @@ import Plutarch.Prelude (
3729 (#&&) ,
3830 (:-->) ,
3931 )
32+ import PlutusLedgerApi.V1.Crypto (PubKeyHash )
33+ import PlutusLedgerApi.V2 (ToData (.. ), Value )
4034import PlutusLedgerApi.V2.Contexts (TxInfo )
41-
42- -- Project imports
43- import Data.Spine ( HasPlutusSpine , HasSpine ( .. ), derivePlutusSpine , spineFieldsNum )
44- import Plutarch.Extras
35+ import PlutusTx qualified
36+ import PlutusTx.Builtins qualified as PlutusTx
37+ import Unsafe.Coerce ( unsafeCoerce )
38+ import Prelude
4539
4640data CVar = CParams | CState | CTransition | CComp | CTxInfo
4741 deriving stock (Show )
@@ -60,18 +54,18 @@ type family DSLPattern (resolved :: Bool) script value where
6054data TxFanKind = In | InRef | Out
6155 deriving stock (Prelude.Eq , Prelude.Show )
6256
63- data TxFanFilterNew (resolved :: Bool ) script
57+ data TxFanFilter (resolved :: Bool ) script
6458 = UserAddress (DSLValue resolved script PubKeyHash )
6559 | -- FIXME: should have spine been specified known statically
6660 SameScript (DSLValue resolved script (State script ))
6761
68- deriving stock instance (CEMScript script ) => (Show (TxFanFilterNew True script ))
69- deriving stock instance (Show (TxFanFilterNew False script ))
62+ deriving stock instance (CEMScript script ) => (Show (TxFanFilter True script ))
63+ deriving stock instance (Show (TxFanFilter False script ))
7064
7165data TxConstraint (resolved :: Bool ) script
7266 = TxFan
7367 { kind :: TxFanKind
74- , cFilter :: TxFanFilterNew resolved script
68+ , cFilter :: TxFanFilter resolved script
7569 , value :: DSLValue resolved script Value
7670 }
7771 | MainSignerCoinSelect
@@ -479,7 +473,7 @@ type CEMScriptSpec resolved script =
479473 [TxConstraint resolved script ]
480474 )
481475
482- data CompilationConfig = MkCompilationConfig
476+ newtype CompilationConfig = MkCompilationConfig
483477 { errorCodesPrefix :: String
484478 }
485479
0 commit comments