[][src]Struct bitcoin::blockdata::block::Block

pub struct Block {
    pub header: BlockHeader,
    pub coinbase_txn: Transaction,
    pub block_hash: Hash,
    pub coinbase_branch_hashes: Vec<Hash>,
    pub coinbase_branch_side_mask: u32,
    pub blockchain_branch_hashes: Vec<Hash>,
    pub blockchain_branch_side_mask: u32,
    pub parent_block: BlockHeader,
    pub txdata: Vec<Transaction>,
}

A Bitcoin block, which is a collection of transactions with an attached proof of work.

Fields

header: BlockHeader

The block header

coinbase_txn: Transaction

Coinbase transaction that is in the parent block, linking the AuxPOW block to its parent block

block_hash: Hash

Hash of the parent_block header

coinbase_branch_hashes: Vec<Hash>

The merkle branch linking the coinbase_txn to the parent block's merkle_root

coinbase_branch_side_mask: u32

Bitmask of which side of the merkle hash function the branch_hash element should go on. Zero means it goes on the right, One means on the left. It is equal to the index of the starting hash within the widest level of the merkle tree for this merkle branch.

blockchain_branch_hashes: Vec<Hash>

The merkle branch linking this auxiliary blockchain to the others, when used in a merged mining setup with multiple auxiliary chains

blockchain_branch_side_mask: u32

Bitmask of which side of the merkle hash function the branch_hash element should go on. Zero means it goes on the right, One means on the left. It is equal to the index of the starting hash within the widest level of the merkle tree for this merkle branch.

parent_block: BlockHeader

Parent block header

txdata: Vec<Transaction>

List of transactions contained in the block

Trait Implementations

impl BitcoinHash for Block[src]

impl<S: Encoder> Encodable<S> for Block[src]

impl<D: Decoder> Decodable<D> for Block[src]

impl Eq for Block[src]

impl Clone for Block[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl PartialEq<Block> for Block[src]

impl Debug for Block[src]

Auto Trait Implementations

impl Send for Block

impl Sync for Block

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]