fn block_number_from_id(&self, id: &BlockId<Block>) -> Result<Option<NumberFor<Block>>> {
		match *id {
			BlockId::Hash(_) => Ok(self.header(*id)?.map(|h| h.number().clone())),
			BlockId::Number(n) => Ok(Some(n)),
		}
	}
/// Convert an arbitrary block ID into a block hash.
Convert an arbitrary block ID into a block hash.
Convert an arbitrary block ID into a block hash .
fn block_number_from_id(&self, id: &BlockId<Block>) -> Result<Option<NumberFor<Block>>> {
		match *id {
			BlockId::Hash(_) => Ok(self.header(*id)?.map(|h| h.number().clone())),
			BlockId::Number(n) => Ok(Some(n)),
		}
	}
fn block_number_from_id ( & self , id : & BlockId < Block > ) -> Result < Option < NumberFor < Block > > > { match * id { BlockId :: Hash ( _ ) => Ok ( self . header ( * id ) ? . map ( | h | h . number ( ) . clone ( ) ) ) , BlockId :: Number ( n ) => Ok ( Some ( n ) ) , } }
Convert an arbitrary block ID into a block hash.
Convert an arbitrary block ID into a block hash .
&self
id
&BlockId<Block>
&self
id
&BlockId<Block>