shelley-spec-ledger-0.1.0.0
Safe HaskellNone
LanguageHaskell98

Shelley.Spec.Ledger.Slot

Synopsis

Documentation

newtype SlotNo Source #

The 0-based index for the Ourboros time slot.

Constructors

SlotNo 

Fields

Instances

Instances details
Bounded SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Enum SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Eq SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Methods

(==) :: SlotNo -> SlotNo -> Bool #

(/=) :: SlotNo -> SlotNo -> Bool #

Num SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Ord SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Show SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Generic SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Associated Types

type Rep SlotNo :: Type -> Type #

Methods

from :: SlotNo -> Rep SlotNo x #

to :: Rep SlotNo x -> SlotNo #

NFData SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Methods

rnf :: SlotNo -> () #

ToJSON SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

FromJSON SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

ToCBOR SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Methods

toCBOR :: SlotNo -> Encoding Source #

encodedSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy SlotNo -> Size Source #

encodedListSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy [SlotNo] -> Size Source #

FromCBOR SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

NoThunks SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

Serialise SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

HasField "ttl" (TxBody era) SlotNo Source # 
Instance details

Defined in Shelley.Spec.Ledger.TxBody

Methods

getField :: TxBody era -> SlotNo #

Embed (StakeCreds era) (Map (Credential 'Staking era) SlotNo) Source # 
Instance details

Defined in Shelley.Spec.Ledger.TxBody

HasExp (StakeCreds era) (Map (Credential 'Staking era) SlotNo) Source # 
Instance details

Defined in Shelley.Spec.Ledger.TxBody

Methods

toExp :: StakeCreds era -> Exp (Map (Credential 'Staking era) SlotNo) Source #

type Rep SlotNo 
Instance details

Defined in Cardano.Slotting.Slot

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

newtype Duration Source #

Constructors

Duration 

Fields

Instances

Instances details
Enum Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

Eq Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

Integral Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

Num Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

Ord Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

Real Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

Show Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

Generic Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

Associated Types

type Rep Duration :: Type -> Type #

Methods

from :: Duration -> Rep Duration x #

to :: Rep Duration x -> Duration #

Semigroup Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

Monoid Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

NoThunks Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

type Rep Duration Source # 
Instance details

Defined in Shelley.Spec.Ledger.Slot

type Rep Duration = D1 ('MetaData "Duration" "Shelley.Spec.Ledger.Slot" "shelley-spec-ledger-0.1.0.0-Is3EknyvW92LxCl96jGQVW" 'True) (C1 ('MetaCons "Duration" 'PrefixI 'True) (S1 ('MetaSel ('Just "unDuration") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))

(*-) :: SlotNo -> Duration -> SlotNo Source #

Subtract a duration from a slot

newtype EpochNo Source #

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

Constructors

EpochNo 

Fields

Instances

Instances details
Enum EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

Eq EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

Methods

(==) :: EpochNo -> EpochNo -> Bool #

(/=) :: EpochNo -> EpochNo -> Bool #

Num EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

Ord EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

Show EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

Generic EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

Associated Types

type Rep EpochNo :: Type -> Type #

Methods

from :: EpochNo -> Rep EpochNo x #

to :: Rep EpochNo x -> EpochNo #

NFData EpochNo Source # 
Instance details

Defined in Shelley.Spec.Ledger.Orphans

Methods

rnf :: EpochNo -> () #

ToJSON EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

FromJSON EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

ToCBOR EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

Methods

toCBOR :: EpochNo -> Encoding Source #

encodedSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy EpochNo -> Size Source #

encodedListSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy [EpochNo] -> Size Source #

FromCBOR EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

NoThunks EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

Serialise EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

type Rep EpochNo 
Instance details

Defined in Cardano.Slotting.Slot

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

newtype EpochSize Source #

Constructors

EpochSize 

Fields

Instances

Instances details
Enum EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

Eq EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

Integral EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

Num EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

Ord EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

Real EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

Show EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

Generic EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

Associated Types

type Rep EpochSize :: Type -> Type #

ToJSON EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

FromJSON EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

NoThunks EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

type Rep EpochSize 
Instance details

Defined in Cardano.Slotting.Slot

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

data EpochInfo (m :: Type -> Type) Source #

Information about epochs

Epochs may have different sizes at different times during the lifetime of the blockchain. This information is encapsulated by EpochInfo; it is parameterized over a monad m because the information about how long each epoch is may depend on information derived from the blockchain itself, and hence requires access to state.

The other functions provide some derived information from epoch sizes. In the default implementation all of these functions query and update an internal cache maintaining cumulative epoch sizes; for that reason, all of these functions live in a monad m.

Instances

Instances details
Show (EpochInfo Identity)

Show instance only for non-stateful instances

Instance details

Defined in Cardano.Slotting.EpochInfo.API

NoThunks (EpochInfo m) 
Instance details

Defined in Cardano.Slotting.EpochInfo.API

newtype BlockNo Source #

The 0-based index of the block in the blockchain. BlockNo is <= SlotNo and is only equal at slot N if there is a block for every slot where N <= SlotNo.

Constructors

BlockNo 

Fields

Instances

Instances details
Bounded BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Enum BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Eq BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Methods

(==) :: BlockNo -> BlockNo -> Bool #

(/=) :: BlockNo -> BlockNo -> Bool #

Num BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Ord BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Show BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Generic BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Associated Types

type Rep BlockNo :: Type -> Type #

Methods

from :: BlockNo -> Rep BlockNo x #

to :: Rep BlockNo x -> BlockNo #

NFData BlockNo Source # 
Instance details

Defined in Shelley.Spec.Ledger.Orphans

Methods

rnf :: BlockNo -> () #

ToCBOR BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Methods

toCBOR :: BlockNo -> Encoding Source #

encodedSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy BlockNo -> Size Source #

encodedListSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy [BlockNo] -> Size Source #

FromCBOR BlockNo 
Instance details

Defined in Cardano.Slotting.Block

NoThunks BlockNo 
Instance details

Defined in Cardano.Slotting.Block

Serialise BlockNo 
Instance details

Defined in Cardano.Slotting.Block

type Rep BlockNo 
Instance details

Defined in Cardano.Slotting.Block

type Rep BlockNo = D1 ('MetaData "BlockNo" "Cardano.Slotting.Block" "cardano-slotting-0.1.0.0-FF4Y2O1UhukGzkqFYkcZSv" 'True) (C1 ('MetaCons "BlockNo" 'PrefixI 'True) (S1 ('MetaSel ('Just "unBlockNo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))