fn derive<Iter: Iterator<Item=DeriveJunction>>(&self, path: Iter) -> Option<Public> {
		let mut acc = PublicKey::from_bytes(self.as_ref()).ok()?;
		for j in path {
			match j {
				DeriveJunction::Soft(cc) => acc = acc.derived_key_simple(ChainCode(cc), &[]).0,
				DeriveJunction::Hard(_cc) => return None,
			}
		}
		Some(Self(acc.to_bytes()))
	}
/// Derive a child key from a series of given junctions.
///
/// `None` if there are any hard junctions in there.
Derive a child key from a series of given junctions.
`None` if there are any hard junctions in there.
Derive a child key from a series of given junctions . ` None ` if there are any hard junctions in there .
fn derive<Iter: Iterator<Item=DeriveJunction>>(&self, path: Iter) -> Option<Public> {
		let mut acc = PublicKey::from_bytes(self.as_ref()).ok()?;
		for j in path {
			match j {
				DeriveJunction::Soft(cc) => acc = acc.derived_key_simple(ChainCode(cc), &[]).0,
				DeriveJunction::Hard(_cc) => return None,
			}
		}
		Some(Self(acc.to_bytes()))
	}
fn derive < Iter : Iterator < Item = DeriveJunction > > ( & self , path : Iter ) -> Option < Public > { let mut acc = PublicKey :: from_bytes ( self . as_ref ( ) ) . ok ( ) ? ; for j in path { match j { DeriveJunction :: Soft ( cc ) => acc = acc . derived_key_simple ( ChainCode ( cc ) , & [ ] ) . 0 , DeriveJunction :: Hard ( _cc ) => return None , } } Some ( Self ( acc . to_bytes ( ) ) ) }
Derive a child key from a series of given junctions.
Derive a child key from a series of given junctions .
&self
path
Iter
&self
path
Iter