[][src]Struct ibc_proto::InnerOp

pub struct InnerOp {
    pub hash: i32,
    pub prefix: Vec<u8>,
    pub suffix: Vec<u8>,
}

InnerOp represents a merkle-proof step that is not a leaf. It represents concatenating two children and hashing them to provide the next result.

The result of the previous step is passed in, so the signature of this op is: innerOp(child) -> output

The result of applying InnerOp should be: output = op.hash(op.prefix || child || op.suffix)

where the || operator is concatenation of binary data, and child is the result of hashing all the tree below this step.

Any special data, like prepending child with the length, or prepending the entire operation with some value to differentiate from leaf nodes, should be included in prefix and suffix. If either of prefix or suffix is empty, we just treat it as an empty string

Fields

hash: i32prefix: Vec<u8>suffix: Vec<u8>

Implementations

impl InnerOp[src]

pub fn hash(&self) -> HashOp[src]

Returns the enum value of hash, or the default if the field is set to an invalid enum value.

pub fn set_hash(&mut self, value: HashOp)[src]

Sets hash to the provided enum value.

Trait Implementations

impl Clone for InnerOp[src]

impl Debug for InnerOp[src]

impl Default for InnerOp[src]

impl Message for InnerOp[src]

impl PartialEq<InnerOp> for InnerOp[src]

impl StructuralPartialEq for InnerOp[src]

Auto Trait Implementations

impl RefUnwindSafe for InnerOp

impl Send for InnerOp

impl Sync for InnerOp

impl Unpin for InnerOp

impl UnwindSafe for InnerOp

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.