Ledger
module Ledger.Dijkstra.Foreign.Ledger where open import Foreign.Convertible open import Foreign.Convertible.Deriving open import Foreign.HaskellTypes open import Foreign.HaskellTypes.Deriving open import Ledger.Prelude open import Ledger.Prelude.Foreign.HSTypes open import Ledger.Core.Foreign.Address open import Ledger.Dijkstra.Foreign.HSStructures open import Ledger.Dijkstra.Foreign.PParams open import Ledger.Dijkstra.Foreign.Cert open import Ledger.Dijkstra.Foreign.Enact open import Ledger.Dijkstra.Foreign.Gov open import Ledger.Dijkstra.Foreign.Utxo open import Ledger.Dijkstra.Foreign.Transaction open import Ledger.Dijkstra.Specification.Ledger it DummyAbstractFunctions open import Ledger.Dijkstra.Specification.Ledger.Properties.Computational it DummyAbstractFunctions open Computational instance HsTy-SubLedgerEnv = autoHsType SubLedgerEnv ⊣ withConstructor "MkSubLedgerEnv" • fieldPrefix "sle" Conv-SubLedgerEnv = autoConvert SubLedgerEnv HsTy-LedgerEnv = autoHsType LedgerEnv ⊣ withConstructor "MkLedgerEnv" • fieldPrefix "le" Conv-LedgerEnv = autoConvert LedgerEnv HsTy-LedgerState = autoHsType LedgerState ⊣ withConstructor "MkLedgerState" • fieldPrefix "ls" Conv-LedgerState = autoConvert LedgerState ledger-step : HsType (LedgerEnv → LedgerState → Tx TxLevelTop → ComputationResult String LedgerState) ledger-step = to (compute Computational-LEDGER) {-# COMPILE GHC ledger-step as ledgerStep #-} ledgers-step : HsType (LedgerEnv → LedgerState → List (Tx TxLevelTop) → ComputationResult String LedgerState) ledgers-step = to (compute Computational-LEDGERS) {-# COMPILE GHC ledgers-step as ledgersStep #-}