pub trait OnIdle<BlockNumber> {
fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight { ... }
}
Expand description
The block’s on idle trait.
Implementing this lets you express what should happen for your pallet before
block finalization (see on_finalize
hook) in case any remaining weight is left.
The block is being finalized.
Implement to have something happen in case there is leftover weight.
Check the passed remaining_weight
to make sure it is high enough to allow for
your pallet’s extra computation.
NOTE: This function is called AFTER ALL extrinsics - including inherent extrinsics -
in a block are applied but before on_finalize
is executed.
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>, TupleElement21: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>, TupleElement21: OnIdle<BlockNumber>, TupleElement22: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>, TupleElement21: OnIdle<BlockNumber>, TupleElement22: OnIdle<BlockNumber>, TupleElement23: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>, TupleElement21: OnIdle<BlockNumber>, TupleElement22: OnIdle<BlockNumber>, TupleElement23: OnIdle<BlockNumber>, TupleElement24: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>, TupleElement21: OnIdle<BlockNumber>, TupleElement22: OnIdle<BlockNumber>, TupleElement23: OnIdle<BlockNumber>, TupleElement24: OnIdle<BlockNumber>, TupleElement25: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>, TupleElement21: OnIdle<BlockNumber>, TupleElement22: OnIdle<BlockNumber>, TupleElement23: OnIdle<BlockNumber>, TupleElement24: OnIdle<BlockNumber>, TupleElement25: OnIdle<BlockNumber>, TupleElement26: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>, TupleElement21: OnIdle<BlockNumber>, TupleElement22: OnIdle<BlockNumber>, TupleElement23: OnIdle<BlockNumber>, TupleElement24: OnIdle<BlockNumber>, TupleElement25: OnIdle<BlockNumber>, TupleElement26: OnIdle<BlockNumber>, TupleElement27: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>, TupleElement21: OnIdle<BlockNumber>, TupleElement22: OnIdle<BlockNumber>, TupleElement23: OnIdle<BlockNumber>, TupleElement24: OnIdle<BlockNumber>, TupleElement25: OnIdle<BlockNumber>, TupleElement26: OnIdle<BlockNumber>, TupleElement27: OnIdle<BlockNumber>, TupleElement28: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27, TupleElement28)
impl<BlockNumber: Copy + AtLeast32BitUnsigned, TupleElement0: OnIdle<BlockNumber>, TupleElement1: OnIdle<BlockNumber>, TupleElement2: OnIdle<BlockNumber>, TupleElement3: OnIdle<BlockNumber>, TupleElement4: OnIdle<BlockNumber>, TupleElement5: OnIdle<BlockNumber>, TupleElement6: OnIdle<BlockNumber>, TupleElement7: OnIdle<BlockNumber>, TupleElement8: OnIdle<BlockNumber>, TupleElement9: OnIdle<BlockNumber>, TupleElement10: OnIdle<BlockNumber>, TupleElement11: OnIdle<BlockNumber>, TupleElement12: OnIdle<BlockNumber>, TupleElement13: OnIdle<BlockNumber>, TupleElement14: OnIdle<BlockNumber>, TupleElement15: OnIdle<BlockNumber>, TupleElement16: OnIdle<BlockNumber>, TupleElement17: OnIdle<BlockNumber>, TupleElement18: OnIdle<BlockNumber>, TupleElement19: OnIdle<BlockNumber>, TupleElement20: OnIdle<BlockNumber>, TupleElement21: OnIdle<BlockNumber>, TupleElement22: OnIdle<BlockNumber>, TupleElement23: OnIdle<BlockNumber>, TupleElement24: OnIdle<BlockNumber>, TupleElement25: OnIdle<BlockNumber>, TupleElement26: OnIdle<BlockNumber>, TupleElement27: OnIdle<BlockNumber>, TupleElement28: OnIdle<BlockNumber>, TupleElement29: OnIdle<BlockNumber>> OnIdle<BlockNumber> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27, TupleElement28, TupleElement29)