| Safe Haskell | Safe-Inferred | 
|---|---|
| Language | Haskell2010 | 
Byron.Spec.Chain.STS.Block
Synopsis
- data BlockHeader = BlockHeader {
- _bhPrevHash ∷ !Hash
 - _bhSlot ∷ !Slot
 - _bhIssuer ∷ !VKey
 - _bhSig ∷ !(Sig Hash)
 - _bhUtxoHash ∷ !Hash
 - _bhDlgHash ∷ !Hash
 - _bhUpdHash ∷ !Hash
 
 - bhUtxoHash ∷ Lens' BlockHeader Hash
 - bhUpdHash ∷ Lens' BlockHeader Hash
 - bhSlot ∷ Lens' BlockHeader Slot
 - bhSig ∷ Lens' BlockHeader (Sig Hash)
 - bhPrevHash ∷ Lens' BlockHeader Hash
 - bhIssuer ∷ Lens' BlockHeader VKey
 - bhDlgHash ∷ Lens' BlockHeader Hash
 - data BlockBody = BlockBody {}
 - bUtxo ∷ Lens' BlockBody [Tx]
 - bUpdVotes ∷ Lens' BlockBody [Vote]
 - bUpdProp ∷ Lens' BlockBody (Maybe UProp)
 - bProtVer ∷ Lens' BlockBody ProtVer
 - bDCerts ∷ Lens' BlockBody [DCert]
 - data Block = Block {}
 - bHeader ∷ Lens' Block BlockHeader
 - bBody ∷ Lens' Block BlockBody
 - mkBlock ∷ Hash → Slot → VKey → ProtVer → [DCert] → Maybe UProp → [Vote] → [Tx] → Block
 - genesisHash ∷ Hash
 - bEndorsment ∷ Block → (ProtVer, VKey)
 - bSlot ∷ Block → Slot
 - bUpdPayload ∷ Block → (Maybe UProp, [Vote])
 - bSize ∷ Block → Natural
 - bBodySize ∷ BlockBody → Natural
 - bHeaderSize ∷ BlockHeader → Natural
 - hashHeader ∷ BlockHeader → Hash
 - bhToSign ∷ BlockHeader → Hash
 - bhHash ∷ BlockHeader → Hash
 - bIsEBB ∷ Block → Bool
 - updateBody ∷ Block → (BlockBody → BlockBody) → Block
 - data BlockStats = BlockStats {}
 - blockStats ∷ Block → BlockStats
 - chainBlockStats ∷ [BlockStats] → Maybe (BlockStats, BlockStats, BlockStats)
 
Documentation
data BlockHeader Source #
Constructors
| BlockHeader | |
Fields 
  | |
Instances
Constructors
| BlockBody | |
Instances
A block in the chain. The specification only models regular blocks since epoch boundary blocks will be largely ignored in the Byron-Shelley bridge.
Constructors
| Block | |
Fields  | |
Instances
| Data Block Source # | |
Defined in Byron.Spec.Chain.STS.Block Methods gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → Block → c Block # gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c Block # dataTypeOf ∷ Block → DataType # dataCast1 ∷ Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c Block) # dataCast2 ∷ Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c Block) # gmapT ∷ (∀ b. Data b ⇒ b → b) → Block → Block # gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → Block → r # gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → Block → r # gmapQ ∷ (∀ d. Data d ⇒ d → u) → Block → [u] # gmapQi ∷ Int → (∀ d. Data d ⇒ d → u) → Block → u # gmapM ∷ Monad m ⇒ (∀ d. Data d ⇒ d → m d) → Block → m Block # gmapMp ∷ MonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Block → m Block # gmapMo ∷ MonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Block → m Block #  | |
| Generic Block Source # | |
| Show Block Source # | |
| HasTypeReps Block Source # | |
| HasSizeInfo Block Source # | |
| type Rep Block Source # | |
Defined in Byron.Spec.Chain.STS.Block type Rep Block = D1 ('MetaData "Block" "Byron.Spec.Chain.STS.Block" "byron-spec-chain-1.0.1.1-inplace" 'False) (C1 ('MetaCons "Block" 'PrefixI 'True) (S1 ('MetaSel ('Just "_bHeader") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BlockHeader) :*: S1 ('MetaSel ('Just "_bBody") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BlockBody)))  | |
Dummy genesis hash.
bBodySize ∷ BlockBody → Natural Source #
Compute the abstract size (in words) that a block body occupies.
bHeaderSize ∷ BlockHeader → Natural Source #
Compute the abstract size (in words) that a block header occupies.
hashHeader ∷ BlockHeader → Hash Source #
Computes the hash of a header.
bhToSign ∷ BlockHeader → Hash Source #
Computes the hash of the header.
bhHash ∷ BlockHeader → Hash Source #
bIsEBB ∷ Block → Bool Source #
Checks if a block is an epoch boundary block.
The function always returns False because tests will be performed only against chains without EBBs.
updateBody ∷ Block → (BlockBody → BlockBody) → Block Source #
Update a field of the block body, recomputing the hashes to get a valid block.
data BlockStats Source #
Constructors
| BlockStats | |
Fields 
  | |
Instances
| Show BlockStats Source # | |
Defined in Byron.Spec.Chain.STS.Block Methods showsPrec ∷ Int → BlockStats → ShowS # show ∷ BlockStats → String # showList ∷ [BlockStats] → ShowS #  | |
blockStats ∷ Block → BlockStats Source #
Count number of transactions in the block
Returns the number of
- Regular transactions
 - Delegation certificates
 - Update votes
 - Update proposals (0 or 1)
 
chainBlockStats ∷ [BlockStats] → Maybe (BlockStats, BlockStats, BlockStats) Source #
Block stats for an entire chain
Computes minimum, maximum, and average values.
Returns Nothing for the empty chain.