Skip to main content

create_block_template_declared

Function create_block_template_declared 

Source
pub fn create_block_template_declared(
    utxo_set: &HashMap<OutPoint, Arc<UTXO>, FxBuildHasher>,
    mempool_txs: &[Transaction],
    declared_txids: &[[u8; 32]],
    height: u64,
    prev_header: &BlockHeader,
    prev_headers: &[BlockHeader],
    coinbase_script: &Vec<u8>,
    coinbase_outputs: &[(i64, Vec<u8>)],
    network: Network,
    mempool_witnesses: Option<&[Option<Vec<Vec<Vec<u8>>>>]>,
) -> Result<BlockTemplate, ConsensusError>
Expand description

Stage 3b slice 1: miner-declared mempool subset. Resolves declared_txids, builds the Stage 3a template, and errors if the selected non-coinbase txids are not exactly that list (no silent skip). Empty declared_txids is coinbase-only. Spec-locked builders are unchanged. Overweight uses Bitcoin MAX_BLOCK_WEIGHT (not a pool-invented cap).