Trait rgb::contract::reveal::IntoRevealed[][src]

pub trait IntoRevealed: Sized {
    fn into_revealed(self, other: Self) -> Result<Self, Error>;
}
Expand description

A trait to merge two structures modifying the revealed status of the first one. The merge operation will consume both the structures and return a new structure with revealed states.

The resulting structure will depend on the reveal status of both of the variant. And the most revealed condition among the two will be selected Usage: prevent hiding already known previous state data by merging incoming new consignment in stash.

The follwoing conversion logic is intended by this trait:

merge (Revelaed, Anything) = Revealed merge(ConfidentialSeal, ConfidentiualAmount) = Revealed merge(ConfidentialAmount, ConfidentialSeal) = Revealed merge(Confidential, Anything) = Anything

Required methods

fn into_revealed(self, other: Self) -> Result<Self, Error>[src]

Loading content...

Implementors

impl IntoRevealed for Assignments[src]

fn into_revealed(self, other: Self) -> Result<Self, Error>[src]

impl IntoRevealed for Anchor[src]

fn into_revealed(self, other: Self) -> Result<Self, Error>[src]

impl IntoRevealed for Extension[src]

fn into_revealed(self, other: Self) -> Result<Self, Error>[src]

impl IntoRevealed for Genesis[src]

fn into_revealed(self, other: Self) -> Result<Self, Error>[src]

impl IntoRevealed for Transition[src]

fn into_revealed(self, other: Self) -> Result<Self, Error>[src]

impl<STATE> IntoRevealed for OwnedState<STATE> where
    Self: Clone,
    STATE: StateTypes,
    STATE::Confidential: PartialEq + Eq,
    STATE::Confidential: From<<STATE::Revealed as CommitConceal>::ConcealedCommitment>, 
[src]

fn into_revealed(self, other: Self) -> Result<Self, Error>[src]

Loading content...