mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-14 12:11:09 +00:00
Make Proposer consume its reference on propose (#6190)
* Make `Proposer` consume its reference on `propose` A proposer must be created per new round, so it makes sense to have the proposer consume its own reference. * Remove `ProposerInner`
This commit is contained in:
@@ -904,7 +904,7 @@ mod tests {
|
||||
type Proposal = future::Ready<Result<Proposal<TestBlock, Self::Transaction>, Error>>;
|
||||
|
||||
fn propose(
|
||||
&mut self,
|
||||
self,
|
||||
_: InherentData,
|
||||
digests: DigestFor<TestBlock>,
|
||||
_: Duration,
|
||||
|
||||
@@ -159,7 +159,7 @@ impl Proposer<TestBlock> for DummyProposer {
|
||||
type Proposal = future::Ready<Result<Proposal<TestBlock, Self::Transaction>, Error>>;
|
||||
|
||||
fn propose(
|
||||
&mut self,
|
||||
mut self,
|
||||
_: InherentData,
|
||||
pre_digests: DigestFor<TestBlock>,
|
||||
_: Duration,
|
||||
|
||||
@@ -108,7 +108,7 @@ pub async fn seal_new_block<B, SC, HB, E, T, P>(
|
||||
None => select_chain.best_chain()?
|
||||
};
|
||||
|
||||
let mut proposer = env.init(&header)
|
||||
let proposer = env.init(&header)
|
||||
.map_err(|err| Error::StringError(format!("{}", err))).await?;
|
||||
let id = inherent_data_provider.create_inherent_data()?;
|
||||
let inherents_len = id.len();
|
||||
|
||||
@@ -610,7 +610,7 @@ fn mine_loop<B: BlockT, C, Algorithm, E, SO, S, CAW>(
|
||||
continue 'outer
|
||||
}
|
||||
|
||||
let mut proposer = futures::executor::block_on(env.init(&best_header))
|
||||
let proposer = futures::executor::block_on(env.init(&best_header))
|
||||
.map_err(|e| Error::Environment(format!("{:?}", e)))?;
|
||||
|
||||
let inherent_data = inherent_data_providers
|
||||
|
||||
@@ -239,7 +239,7 @@ pub trait SimpleSlotWorker<B: BlockT> {
|
||||
let logs = self.pre_digest_data(slot_number, &claim);
|
||||
|
||||
// deadline our production to approx. the end of the slot
|
||||
let proposing = awaiting_proposer.and_then(move |mut proposer| proposer.propose(
|
||||
let proposing = awaiting_proposer.and_then(move |proposer| proposer.propose(
|
||||
slot_info.inherent_data,
|
||||
sp_runtime::generic::Digest {
|
||||
logs,
|
||||
|
||||
Reference in New Issue
Block a user