Skip to content

sgns::runtime::BlockBuilder

More...

#include <block_builder.hpp>

Inherited by sgns::runtime::binaryen::BlockBuilderImpl

Public Functions

Name
virtual ~BlockBuilder() =default
virtual outcome::result< primitives::ApplyResult > apply_extrinsic(const primitives::Extrinsic & extrinsic) =0
virtual outcome::result< primitives::BlockHeader > finalise_block() =0
virtual outcome::result< std::vector< primitives::Extrinsic > > inherent_extrinsics(const primitives::InherentData & data) =0
virtual outcome::result< primitives::CheckInherentsResult > check_inherents(const primitives::Block & block, const primitives::InherentData & data) =0
virtual outcome::result< base::Hash256 > random_seed() =0

Detailed Description

class sgns::runtime::BlockBuilder;

Part of runtime API responsible for building a block for a runtime.

Public Functions Documentation

function ~BlockBuilder

virtual ~BlockBuilder() =default

function apply_extrinsic

virtual outcome::result< primitives::ApplyResult > apply_extrinsic(
    const primitives::Extrinsic & extrinsic
) =0

Reimplemented by: sgns::runtime::binaryen::BlockBuilderImpl::apply_extrinsic

Apply the given extrinsics.

function finalise_block

virtual outcome::result< primitives::BlockHeader > finalise_block() =0

Reimplemented by: sgns::runtime::binaryen::BlockBuilderImpl::finalise_block

Finish the current block.

function inherent_extrinsics

virtual outcome::result< std::vector< primitives::Extrinsic > > inherent_extrinsics(
    const primitives::InherentData & data
) =0

Reimplemented by: sgns::runtime::binaryen::BlockBuilderImpl::inherent_extrinsics

Generate inherent extrinsics. The inherent data will vary from chain to chain.

function check_inherents

virtual outcome::result< primitives::CheckInherentsResult > check_inherents(
    const primitives::Block & block,
    const primitives::InherentData & data
) =0

Reimplemented by: sgns::runtime::binaryen::BlockBuilderImpl::check_inherents

Check that the inherents are valid. The inherent data will vary from chain to chain.

function random_seed

virtual outcome::result< base::Hash256 > random_seed() =0

Reimplemented by: sgns::runtime::binaryen::BlockBuilderImpl::random_seed

Generate a random seed.


Updated on 2026-03-04 at 13:10:43 -0800