Enum sp_core::crypto::DeriveJunction
source · Expand description
A since derivation junction description. It is the single parameter used when creating
a new secret key from an existing secret key and, in the case of SoftRaw
and SoftIndex
a new public key from an existing public key.
Variants
Soft([u8; 32])
Soft (vanilla) derivation. Public keys have a correspondent derivation.
Hard([u8; 32])
Hard (“hardened”) derivation. Public keys do not have a correspondent derivation.
Implementations
sourceimpl DeriveJunction
impl DeriveJunction
sourcepub fn soften(self) -> Self
pub fn soften(self) -> Self
Consume self to return a soft derive junction with the same chain code.
sourcepub fn harden(self) -> Self
pub fn harden(self) -> Self
Consume self to return a hard derive junction with the same chain code.
sourcepub fn soft<T: Encode>(index: T) -> Self
pub fn soft<T: Encode>(index: T) -> Self
Create a new soft (vanilla) DeriveJunction from a given, encodable, value.
If you need a hard junction, use hard()
.
sourcepub fn hard<T: Encode>(index: T) -> Self
pub fn hard<T: Encode>(index: T) -> Self
Create a new hard (hardened) DeriveJunction from a given, encodable, value.
If you need a soft junction, use soft()
.
sourcepub fn unwrap_inner(self) -> [u8; 32]
pub fn unwrap_inner(self) -> [u8; 32]
Consume self to return the chain code.
Trait Implementations
sourceimpl Clone for DeriveJunction
impl Clone for DeriveJunction
sourcefn clone(&self) -> DeriveJunction
fn clone(&self) -> DeriveJunction
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl Debug for DeriveJunction
impl Debug for DeriveJunction
sourceimpl Decode for DeriveJunction
impl Decode for DeriveJunction
sourcefn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
sourceimpl Encode for DeriveJunction
impl Encode for DeriveJunction
sourcefn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
sourceimpl<T: AsRef<str>> From<T> for DeriveJunction
impl<T: AsRef<str>> From<T> for DeriveJunction
sourcefn from(j: T) -> DeriveJunction
fn from(j: T) -> DeriveJunction
sourceimpl Hash for DeriveJunction
impl Hash for DeriveJunction
sourceimpl PartialEq<DeriveJunction> for DeriveJunction
impl PartialEq<DeriveJunction> for DeriveJunction
sourcefn eq(&self, other: &DeriveJunction) -> bool
fn eq(&self, other: &DeriveJunction) -> bool
impl Copy for DeriveJunction
impl EncodeLike<DeriveJunction> for DeriveJunction
impl Eq for DeriveJunction
impl StructuralEq for DeriveJunction
impl StructuralPartialEq for DeriveJunction
Auto Trait Implementations
impl RefUnwindSafe for DeriveJunction
impl Send for DeriveJunction
impl Sync for DeriveJunction
impl Unpin for DeriveJunction
impl UnwindSafe for DeriveJunction
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> DecodeAll for Twhere
T: Decode,
impl<T> DecodeAll for Twhere
T: Decode,
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
Self
and consume all of the given input data. Read moreimpl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere
T: Decode,
fn decode_all_with_depth_limit(limit: u32, input: &mut &[u8]) -> Result<T, Error>
fn decode_all_with_depth_limit(limit: u32, input: &mut &[u8]) -> Result<T, Error>
Self
and consume all of the given input data. Read morefn decode_with_depth_limit<I>(limit: u32, input: &mut I) -> Result<T, Error>where
I: Input,
fn decode_with_depth_limit<I>(limit: u32, input: &mut I) -> Result<T, Error>where
I: Input,
Self
with the given maximum recursion depth and advance input
by the number of
bytes consumed. Read moreimpl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read morefn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read morefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read moresourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
sourcefn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.