Ratify
module Ledger.Dijkstra.Foreign.Ratify 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.Core open import Ledger.Dijkstra.Foreign.Gov open import Ledger.Dijkstra.Specification.Ratify DummyGovStructure open import Ledger.Dijkstra.Specification.Ratify.Properties.Computational it open Computational instance HsTy-StakeDistrs = autoHsType StakeDistrs ⊣ withConstructor "MkStakeDistrs" • fieldPrefix "sd" Conv-StakeDistrs = autoConvert StakeDistrs HsTy-RatifyEnv = autoHsType RatifyEnv ⊣ withConstructor "MkRatifyEnv" • fieldPrefix "re" Conv-RatifyEnv = autoConvert RatifyEnv HsTy-RatifyState = autoHsType RatifyState ⊣ withConstructor "MkRatifyState" • fieldPrefix "rs" Conv-RatifyState = autoConvert RatifyState ratify-step : HsType (RatifyEnv → RatifyState → GovActionID × GovActionState → ComputationResult ⊥ RatifyState) ratify-step = to (compute Computational-RATIFY) {-# COMPILE GHC ratify-step as ratifyStep #-} ratifies-step : HsType (RatifyEnv → RatifyState → List (GovActionID × GovActionState) → ComputationResult ⊥ RatifyState) ratifies-step = to (compute Computational-RATIFIES) {-# COMPILE GHC ratifies-step as ratifiesStep #-}