11{-# LANGUAGE AllowAmbiguousTypes #-}
22{-# LANGUAGE DataKinds #-}
33{-# LANGUAGE DeriveGeneric #-}
4+ {-# LANGUAGE DerivingVia #-}
45{-# LANGUAGE FlexibleInstances #-}
56{-# LANGUAGE InstanceSigs #-}
67{-# LANGUAGE OverloadedStrings #-}
@@ -32,6 +33,7 @@ import Cardano.Ledger.Alonzo.PParams
3233import Cardano.Ledger.Babbage.PParams
3334import Cardano.Ledger.BaseTypes (
3435 EpochInterval (.. ),
36+ KeyValuePairs (.. ),
3537 NonNegativeInterval ,
3638 NonZero ,
3739 PositiveInterval ,
@@ -59,7 +61,7 @@ import Cardano.Ledger.Plutus (
5961import Cardano.Ledger.Shelley.PParams
6062import Cardano.Ledger.Val (Val (.. ))
6163import Control.DeepSeq (NFData )
62- import Data.Aeson (FromJSON , Key , ToJSON (.. ), withObject , (.:) , (.=) )
64+ import Data.Aeson (FromJSON , ToJSON (.. ), withObject , (.:) , (.=) )
6365import qualified Data.Aeson as Aeson
6466import Data.Data (Proxy (.. ))
6567import Data.Default (Default (.. ))
@@ -240,12 +242,27 @@ deriving instance Eq (UpgradeDijkstraPParams Identity era)
240242deriving instance Show (UpgradeDijkstraPParams Identity era )
241243
242244instance FromJSON (UpgradeDijkstraPParams Identity era ) where
243- parseJSON = withObject " UpgradeDijkstraPParams" $ \ o ->
244- UpgradeDijkstraPParams
245- <$> o .: " maxRefScriptSizePerBlock"
246- <*> o .: " maxRefScriptSizePerTx"
247- <*> o .: " refScriptCostStride"
248- <*> o .: " refScriptCostMultiplier"
245+ parseJSON = withObject " UpgradeDijkstraPParams" $ \ o -> do
246+ udppMaxRefScriptSizePerBlock <- o .: " maxRefScriptSizePerBlock"
247+ udppMaxRefScriptSizePerTx <- o .: " maxRefScriptSizePerTx"
248+ udppRefScriptCostStride <- o .: " refScriptCostStride"
249+ udppRefScriptCostMultiplier <- o .: " refScriptCostMultiplier"
250+ pure UpgradeDijkstraPParams {.. }
251+
252+ instance ToKeyValuePairs (UpgradeDijkstraPParams Identity era ) where
253+ toKeyValuePairs udpp =
254+ [ " maxRefScriptSizePerBlock" .= udppMaxRefScriptSizePerBlock udpp
255+ , " maxRefScriptSizePerTx" .= udppMaxRefScriptSizePerTx udpp
256+ , " refScriptCostStride" .= udppRefScriptCostStride udpp
257+ , " refScriptCostMultiplier" .= udppRefScriptCostMultiplier udpp
258+ ]
259+
260+ deriving via
261+ KeyValuePairs (UpgradeDijkstraPParams Identity era)
262+ instance
263+ ToJSON (UpgradeDijkstraPParams Identity era )
264+
265+ instance NFData (UpgradeDijkstraPParams Identity era )
249266
250267instance NoThunks (UpgradeDijkstraPParams Identity era )
251268
@@ -267,17 +284,6 @@ instance Era era => EncCBOR (UpgradeDijkstraPParams Identity era) where
267284 !> To udppRefScriptCostStride
268285 !> To udppRefScriptCostMultiplier
269286
270- upgradeDijkstraPParamsHKDPairs :: UpgradeDijkstraPParams Identity era -> [(Key , Aeson. Value )]
271- upgradeDijkstraPParamsHKDPairs UpgradeDijkstraPParams {.. } =
272- [ (" maxRefScriptSizePerBlock" , toJSON udppMaxRefScriptSizePerBlock)
273- , (" maxRefScriptSizePerTx" , toJSON udppMaxRefScriptSizePerTx)
274- , (" refScriptCostStride" , toJSON udppRefScriptCostStride)
275- , (" refScriptCostMultiplier" , toJSON udppRefScriptCostMultiplier)
276- ]
277-
278- instance ToKeyValuePairs (UpgradeDijkstraPParams Identity era ) where
279- toKeyValuePairs upp = uncurry (.=) <$> upgradeDijkstraPParamsHKDPairs upp
280-
281287emptyDijkstraUpgradePParamsUpdate :: UpgradeDijkstraPParams StrictMaybe era
282288emptyDijkstraUpgradePParamsUpdate = UpgradeDijkstraPParams SNothing SNothing SNothing SNothing
283289
0 commit comments