This commit is contained in:
NikVolf 2019-01-08 15:27:17 +03:00
parent 0ec59442a5
commit 51862f0d02
1 changed files with 24 additions and 24 deletions

View File

@ -4,40 +4,40 @@ use EpochTag;
/// Nullifier.
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct Nullifier {
tag: EpochTag,
hash: H256,
tag: EpochTag,
hash: H256,
}
/// Trait to query existing nullifier.
pub trait NullifierTracker : Sync {
fn contains_nullifier(&self, nullifier: Nullifier) -> bool;
fn contains_nullifier(&self, nullifier: Nullifier) -> bool;
}
impl Nullifier {
/// New nullifer.
pub fn new(tag: EpochTag, hash: H256) -> Self {
Nullifier {
tag: tag,
hash: hash,
}
}
/// New nullifer.
pub fn new(tag: EpochTag, hash: H256) -> Self {
Nullifier {
tag: tag,
hash: hash,
}
}
/// Nullifer tag
pub fn tag(&self) -> EpochTag {
self.tag
}
/// Nullifer tag
pub fn tag(&self) -> EpochTag {
self.tag
}
/// Nullifer hash
pub fn hash(&self) -> &H256 {
&self.hash
}
/// Nullifer hash
pub fn hash(&self) -> &H256 {
&self.hash
}
}
impl From<(EpochTag, H256)> for Nullifier {
fn from(tuple: (EpochTag, H256)) -> Self {
Nullifier {
tag: tuple.0,
hash: tuple.1,
}
}
fn from(tuple: (EpochTag, H256)) -> Self {
Nullifier {
tag: tuple.0,
hash: tuple.1,
}
}
}