cardano-slotting-0.2.0.0: Key slotting types for cardano libraries
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cardano.Slotting.Slot

Synopsis

Documentation

newtype SlotNo Source #

The 0-based index for the Ourboros time slot.

Constructors

SlotNo 

Fields

Instances

Instances details
FromJSON SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

ToJSON SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Bounded SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Enum SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

succSlotNoSlotNo

predSlotNoSlotNo

toEnum ∷ Int → SlotNo

fromEnumSlotNo → Int

enumFromSlotNo → [SlotNo]

enumFromThenSlotNoSlotNo → [SlotNo]

enumFromToSlotNoSlotNo → [SlotNo]

enumFromThenToSlotNoSlotNoSlotNo → [SlotNo]

Generic SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Associated Types

type Rep SlotNo ∷ Type → Type

Methods

fromSlotNo → Rep SlotNo x

to ∷ Rep SlotNo x → SlotNo

Num SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

(+)SlotNoSlotNoSlotNo

(-)SlotNoSlotNoSlotNo

(*)SlotNoSlotNoSlotNo

negateSlotNoSlotNo

absSlotNoSlotNo

signumSlotNoSlotNo

fromInteger ∷ Integer → SlotNo

Show SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

showsPrec ∷ Int → SlotNo → ShowS

showSlotNo → String

showList ∷ [SlotNo] → ShowS

FromCBOR SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

fromCBORDecoder s SlotNo Source #

label ∷ Proxy SlotNo → Text Source #

ToCBOR SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

toCBORSlotNoEncoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy SlotNoSize Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [SlotNo] → Size Source #

NFData SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnfSlotNo → ()

Eq SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

(==)SlotNoSlotNo → Bool

(/=)SlotNoSlotNo → Bool

Ord SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

compareSlotNoSlotNo → Ordering

(<)SlotNoSlotNo → Bool

(<=)SlotNoSlotNo → Bool

(>)SlotNoSlotNo → Bool

(>=)SlotNoSlotNo → Bool

maxSlotNoSlotNoSlotNo

minSlotNoSlotNoSlotNo

NoThunks SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

noThunksContextSlotNo → IO (Maybe ThunkInfo) Source #

wNoThunksContextSlotNo → IO (Maybe ThunkInfo) Source #

showTypeOf ∷ Proxy SlotNo → String Source #

Serialise SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

type Rep SlotNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

type Rep SlotNo = D1 ('MetaData "SlotNo" "Cardano.Slotting.Slot" "cardano-slotting-0.2.0.0-inplace" 'True) (C1 ('MetaCons "SlotNo" 'PrefixI 'True) (S1 ('MetaSel ('Just "unSlotNo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))

data WithOrigin t Source #

Constructors

Origin 
At !t 

Instances

Instances details
Foldable WithOrigin Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

fold ∷ Monoid m ⇒ WithOrigin m → m

foldMap ∷ Monoid m ⇒ (a → m) → WithOrigin a → m

foldMap' ∷ Monoid m ⇒ (a → m) → WithOrigin a → m

foldr ∷ (a → b → b) → b → WithOrigin a → b

foldr' ∷ (a → b → b) → b → WithOrigin a → b

foldl ∷ (b → a → b) → b → WithOrigin a → b

foldl' ∷ (b → a → b) → b → WithOrigin a → b

foldr1 ∷ (a → a → a) → WithOrigin a → a

foldl1 ∷ (a → a → a) → WithOrigin a → a

toListWithOrigin a → [a]

nullWithOrigin a → Bool

lengthWithOrigin a → Int

elem ∷ Eq a ⇒ a → WithOrigin a → Bool

maximum ∷ Ord a ⇒ WithOrigin a → a

minimum ∷ Ord a ⇒ WithOrigin a → a

sum ∷ Num a ⇒ WithOrigin a → a

product ∷ Num a ⇒ WithOrigin a → a

Traversable WithOrigin Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

traverse ∷ Applicative f ⇒ (a → f b) → WithOrigin a → f (WithOrigin b)

sequenceA ∷ Applicative f ⇒ WithOrigin (f a) → f (WithOrigin a)

mapM ∷ Monad m ⇒ (a → m b) → WithOrigin a → m (WithOrigin b)

sequence ∷ Monad m ⇒ WithOrigin (m a) → m (WithOrigin a)

Functor WithOrigin Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

fmap ∷ (a → b) → WithOrigin a → WithOrigin b #

(<$) ∷ a → WithOrigin b → WithOrigin a #

FromJSON a ⇒ FromJSON (WithOrigin a) Source # 
Instance details

Defined in Cardano.Slotting.Slot

ToJSON a ⇒ ToJSON (WithOrigin a) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Bounded t ⇒ Bounded (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Generic (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Associated Types

type Rep (WithOrigin t) ∷ Type → Type

Methods

fromWithOrigin t → Rep (WithOrigin t) x

to ∷ Rep (WithOrigin t) x → WithOrigin t

Show t ⇒ Show (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

showsPrec ∷ Int → WithOrigin t → ShowS

showWithOrigin t → String

showList ∷ [WithOrigin t] → ShowS

(Serialise t, Typeable t) ⇒ FromCBOR (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

fromCBORDecoder s (WithOrigin t) Source #

label ∷ Proxy (WithOrigin t) → Text Source #

(Serialise t, Typeable t) ⇒ ToCBOR (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

toCBORWithOrigin t → Encoding Source #

encodedSizeExpr ∷ (∀ t0. ToCBOR t0 ⇒ Proxy t0 → Size) → Proxy (WithOrigin t) → Size Source #

encodedListSizeExpr ∷ (∀ t0. ToCBOR t0 ⇒ Proxy t0 → Size) → Proxy [WithOrigin t] → Size Source #

NFData a ⇒ NFData (WithOrigin a) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnfWithOrigin a → ()

Eq t ⇒ Eq (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

(==)WithOrigin t → WithOrigin t → Bool

(/=)WithOrigin t → WithOrigin t → Bool

Ord t ⇒ Ord (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

compareWithOrigin t → WithOrigin t → Ordering

(<)WithOrigin t → WithOrigin t → Bool

(<=)WithOrigin t → WithOrigin t → Bool

(>)WithOrigin t → WithOrigin t → Bool

(>=)WithOrigin t → WithOrigin t → Bool

maxWithOrigin t → WithOrigin t → WithOrigin t

minWithOrigin t → WithOrigin t → WithOrigin t

NoThunks t ⇒ NoThunks (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

noThunksContextWithOrigin t → IO (Maybe ThunkInfo) Source #

wNoThunksContextWithOrigin t → IO (Maybe ThunkInfo) Source #

showTypeOf ∷ Proxy (WithOrigin t) → String Source #

Serialise t ⇒ Serialise (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

type Rep (WithOrigin t) Source # 
Instance details

Defined in Cardano.Slotting.Slot

type Rep (WithOrigin t) = D1 ('MetaData "WithOrigin" "Cardano.Slotting.Slot" "cardano-slotting-0.2.0.0-inplace" 'False) (C1 ('MetaCons "Origin" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "At" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 t)))

at ∷ t → WithOrigin t Source #

fromWithOrigin ∷ t → WithOrigin t → t Source #

withOrigin ∷ b → (t → b) → WithOrigin t → b Source #

newtype EpochNo Source #

An epoch, i.e. the number of the epoch.

Constructors

EpochNo 

Fields

Instances

Instances details
FromJSON EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

ToJSON EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Enum EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Generic EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Associated Types

type Rep EpochNo ∷ Type → Type

Methods

fromEpochNo → Rep EpochNo x

to ∷ Rep EpochNo x → EpochNo

Show EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

showsPrec ∷ Int → EpochNo → ShowS

showEpochNo → String

showList ∷ [EpochNo] → ShowS

FromCBOR EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

fromCBORDecoder s EpochNo Source #

label ∷ Proxy EpochNo → Text Source #

ToCBOR EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

toCBOREpochNoEncoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy EpochNoSize Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [EpochNo] → Size Source #

NFData EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnfEpochNo → ()

Eq EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

(==)EpochNoEpochNo → Bool

(/=)EpochNoEpochNo → Bool

Ord EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

compareEpochNoEpochNo → Ordering

(<)EpochNoEpochNo → Bool

(<=)EpochNoEpochNo → Bool

(>)EpochNoEpochNo → Bool

(>=)EpochNoEpochNo → Bool

maxEpochNoEpochNoEpochNo

minEpochNoEpochNoEpochNo

NoThunks EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

noThunksContextEpochNo → IO (Maybe ThunkInfo) Source #

wNoThunksContextEpochNo → IO (Maybe ThunkInfo) Source #

showTypeOf ∷ Proxy EpochNo → String Source #

Serialise EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

type Rep EpochNo Source # 
Instance details

Defined in Cardano.Slotting.Slot

type Rep EpochNo = D1 ('MetaData "EpochNo" "Cardano.Slotting.Slot" "cardano-slotting-0.2.0.0-inplace" 'True) (C1 ('MetaCons "EpochNo" 'PrefixI 'True) (S1 ('MetaSel ('Just "unEpochNo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))

newtype EpochSize Source #

Constructors

EpochSize 

Fields

Instances

Instances details
FromJSON EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

ToJSON EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Enum EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Generic EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Associated Types

type Rep EpochSize ∷ Type → Type

Methods

fromEpochSize → Rep EpochSize x

to ∷ Rep EpochSize x → EpochSize

Show EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

showsPrec ∷ Int → EpochSize → ShowS

showEpochSize → String

showList ∷ [EpochSize] → ShowS

FromCBOR EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

fromCBORDecoder s EpochSize Source #

label ∷ Proxy EpochSize → Text Source #

ToCBOR EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

toCBOREpochSizeEncoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy EpochSizeSize Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [EpochSize] → Size Source #

NFData EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnfEpochSize → ()

Eq EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

(==)EpochSizeEpochSize → Bool

(/=)EpochSizeEpochSize → Bool

Ord EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

compareEpochSizeEpochSize → Ordering

(<)EpochSizeEpochSize → Bool

(<=)EpochSizeEpochSize → Bool

(>)EpochSizeEpochSize → Bool

(>=)EpochSizeEpochSize → Bool

maxEpochSizeEpochSizeEpochSize

minEpochSizeEpochSizeEpochSize

NoThunks EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

noThunksContextEpochSize → IO (Maybe ThunkInfo) Source #

wNoThunksContextEpochSize → IO (Maybe ThunkInfo) Source #

showTypeOf ∷ Proxy EpochSize → String Source #

type Rep EpochSize Source # 
Instance details

Defined in Cardano.Slotting.Slot

type Rep EpochSize = D1 ('MetaData "EpochSize" "Cardano.Slotting.Slot" "cardano-slotting-0.2.0.0-inplace" 'True) (C1 ('MetaCons "EpochSize" 'PrefixI 'True) (S1 ('MetaSel ('Just "unEpochSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))

newtype EpochInterval Source #

Constructors

EpochInterval 

Fields

Instances

Instances details
FromJSON EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

ToJSON EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

Generic EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

Associated Types

type Rep EpochInterval ∷ Type → Type

Methods

fromEpochInterval → Rep EpochInterval x

to ∷ Rep EpochInterval x → EpochInterval

Show EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

showsPrec ∷ Int → EpochInterval → ShowS

showEpochInterval → String

showList ∷ [EpochInterval] → ShowS

FromCBOR EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

ToCBOR EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

toCBOREpochIntervalEncoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy EpochIntervalSize Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [EpochInterval] → Size Source #

NFData EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnfEpochInterval → ()

Eq EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

(==)EpochIntervalEpochInterval → Bool

(/=)EpochIntervalEpochInterval → Bool

Ord EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

NoThunks EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

Methods

noThunksContextEpochInterval → IO (Maybe ThunkInfo) Source #

wNoThunksContextEpochInterval → IO (Maybe ThunkInfo) Source #

showTypeOf ∷ Proxy EpochInterval → String Source #

type Rep EpochInterval Source # 
Instance details

Defined in Cardano.Slotting.Slot

type Rep EpochInterval = D1 ('MetaData "EpochInterval" "Cardano.Slotting.Slot" "cardano-slotting-0.2.0.0-inplace" 'True) (C1 ('MetaCons "EpochInterval" 'PrefixI 'True) (S1 ('MetaSel ('Just "unEpochInterval") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))

binOpEpochNo ∷ (Word64 → Word64 → Word64) → EpochNoEpochNoEpochNo Source #

Convenience function for doing binary operations on two EpochNos

addEpochIntervalEpochNoEpochIntervalEpochNo Source #

Add a EpochInterval (a positive change) to an EpochNo to get a new EpochNo