54 个版本 (35 个破坏性更新)
0.44.0 | 2024年7月18日 |
---|---|
0.41.0 | 2024年6月24日 |
0.37.0 | 2024年3月18日 |
0.33.0 | 2023年12月12日 |
0.8.0-alpha.5 | 2020年3月24日 |
1283 在 魔法豆
7,340 每月下载量
用于 13 个软件包 (7 直接)
1MB
17K SLoC
区块创建逻辑的基本实现。
示例
// The first step is to create a `ProposerFactory`.
let mut proposer_factory = ProposerFactory::new(client.clone(), txpool.clone(), None);
// From this factory, we create a `Proposer`.
let proposer = proposer_factory.init(
&client.header(client.chain_info().genesis_hash).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),
);
// We wait until the proposition is performed.
let block = futures::executor::block_on(future).unwrap();
println!("Generated block: {:?}", block.block);
许可:GPL-3.0-or-later WITH Classpath-exception-2.0
lib.rs
:
区块创建逻辑的基本实现。
示例
// The first step is to create a `ProposerFactory`.
let mut proposer_factory = ProposerFactory::new(
spawner,
client.clone(),
txpool.clone(),
None,
None,
);
// From this factory, we create a `Proposer`.
let proposer = proposer_factory.init(
&client.header(client.chain_info().genesis_hash).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),
None,
);
// We wait until the proposition is performed.
let block = futures::executor::block_on(future).unwrap();
println!("Generated block: {:?}", block.block);
依赖项
~75–115MB
~2M SLoC