Crate tc_basic_authorship[−][src]
Basic implementation of block-authoring logic.
Example
// The first step is to create a `ProposerFactory`. let mut proposer_factory = ProposerFactory::new( spawner, client.clone(), txpool.clone(), None, ); // From this factory, we create a `Proposer`. let proposer = proposer_factory.init( &client.header(&BlockId::number(0)).unwrap().unwrap(), ); // The proposer is created asynchronously. let proposer = futures::executor::block_on(proposer).unwrap(); // This `Proposer` allows us to create a block proposition. // The proposer will grab transactions from the transaction pool, and put them into the block. let future = proposer.propose( Default::default(), Default::default(), Duration::from_secs(2), RecordProof::Yes, ); // We wait until the proposition is performed. let block = futures::executor::block_on(future).unwrap(); println!("Generated block: {:?}", block.block);
Structs
Proposer | The proposer logic. |
ProposerFactory | Proposer factory. |
Constants
DEFAULT_MAX_BLOCK_SIZE | Default maximum block size in bytes used by |