@@ -46,8 +46,7 @@ module Cardano.Ledger.Allegra.Scripts (
4646 decodeVI ,
4747 -- translate,
4848 translateTimelock ,
49- )
50- where
49+ ) where
5150
5251import Cardano.Ledger.Allegra.Era (AllegraEra )
5352import Cardano.Ledger.BaseTypes (StrictMaybe (SJust , SNothing ))
@@ -209,7 +208,9 @@ newtype Timelock era = MkTimelock (MemoBytes (TimelockRaw era))
209208
210209pattern TimelockConstr :: MemoBytes (TimelockRaw era ) -> Timelock era
211210pattern TimelockConstr timelockRaw = MkTimelock timelockRaw
211+
212212{-# COMPLETE TimelockConstr #-}
213+
213214{-# DEPRECATED TimelockConstr "In favor of more consistently name `MkTimelock`" #-}
214215
215216instance Era era => MemPack (Timelock era ) where
@@ -218,6 +219,7 @@ instance Era era => MemPack (Timelock era) where
218219 unpackM = MkTimelock <$> unpackMemoBytesM (eraProtVerLow @ era )
219220
220221instance Era era => NoThunks (Timelock era )
222+
221223instance Era era => EncCBOR (Timelock era )
222224
223225instance Era era => DecCBOR (Timelock era ) where
@@ -292,36 +294,42 @@ pattern RequireTimeStart mslot <- (getTimeStart -> Just mslot)
292294
293295mkRequireSignatureTimelock :: forall era . Era era => KeyHash 'Witness -> Timelock era
294296mkRequireSignatureTimelock = mkMemoizedEra @ era . TimelockSignature
297+
295298getRequireSignatureTimelock :: Timelock era -> Maybe (KeyHash 'Witness)
296299getRequireSignatureTimelock (MkTimelock (Memo (TimelockSignature kh) _)) = Just kh
297300getRequireSignatureTimelock _ = Nothing
298301
299302mkRequireAllOfTimelock :: forall era . Era era => StrictSeq (Timelock era ) -> Timelock era
300303mkRequireAllOfTimelock = mkMemoizedEra @ era . TimelockAllOf
304+
301305getRequireAllOfTimelock :: Timelock era -> Maybe (StrictSeq (Timelock era ))
302306getRequireAllOfTimelock (MkTimelock (Memo (TimelockAllOf ms) _)) = Just ms
303307getRequireAllOfTimelock _ = Nothing
304308
305309mkRequireAnyOfTimelock :: forall era . Era era => StrictSeq (Timelock era ) -> Timelock era
306310mkRequireAnyOfTimelock = mkMemoizedEra @ era . TimelockAnyOf
311+
307312getRequireAnyOfTimelock :: Timelock era -> Maybe (StrictSeq (Timelock era ))
308313getRequireAnyOfTimelock (MkTimelock (Memo (TimelockAnyOf ms) _)) = Just ms
309314getRequireAnyOfTimelock _ = Nothing
310315
311316mkRequireMOfTimelock :: forall era . Era era => Int -> StrictSeq (Timelock era ) -> Timelock era
312317mkRequireMOfTimelock n = mkMemoizedEra @ era . TimelockMOf n
318+
313319getRequireMOfTimelock :: Timelock era -> Maybe (Int , StrictSeq (Timelock era ))
314320getRequireMOfTimelock (MkTimelock (Memo (TimelockMOf n ms) _)) = Just (n, ms)
315321getRequireMOfTimelock _ = Nothing
316322
317323mkTimeStartTimelock :: forall era . Era era => SlotNo -> Timelock era
318324mkTimeStartTimelock = mkMemoizedEra @ era . TimelockTimeStart
325+
319326getTimeStartTimelock :: Timelock era -> Maybe SlotNo
320327getTimeStartTimelock (MkTimelock (Memo (TimelockTimeStart mslot) _)) = Just mslot
321328getTimeStartTimelock _ = Nothing
322329
323330mkTimeExpireTimelock :: forall era . Era era => SlotNo -> Timelock era
324331mkTimeExpireTimelock = mkMemoizedEra @ era . TimelockTimeExpire
332+
325333getTimeExpireTimelock :: Timelock era -> Maybe SlotNo
326334getTimeExpireTimelock (MkTimelock (Memo (TimelockTimeExpire mslot) _)) = Just mslot
327335getTimeExpireTimelock _ = Nothing
0 commit comments