module Ledger.Dijkstra.Foreign.NewEpoch where
open import Class.Convertible
open import Tactic.Derive.Convertible
open import Class.HasHsType
open import Tactic.Derive.HsType
open import Ledger.Prelude
open import Ledger.Prelude.Foreign.HSTypes
open import Ledger.Dijkstra.Foreign.HSStructures
open import Ledger.Dijkstra.Foreign.Epoch
open import Ledger.Dijkstra.Foreign.Rewards
open import Ledger.Dijkstra.Specification.Epoch it DummyAbstractFunctions
open import Ledger.Dijkstra.Specification.Epoch.Properties.Computational it DummyAbstractFunctions
open Computational
instance
HsTy-NewEpochState = autoHsType NewEpochState ⊣ withConstructor "MkNewEpochState"
• fieldPrefix "nes"
Conv-NewEpochState = autoConvert NewEpochState
newepoch-step : HsType (⊤ → NewEpochState → Epoch → ComputationResult ⊥ NewEpochState)
newepoch-step = to (compute Computational-NEWEPOCH)
{-# COMPILE GHC newepoch-step as newEpochStep #-}