nullifier.rs 518 B

123456789101112131415161718192021222324252627282930
  1. use std::io;
  2. use crate::{
  3. error::Result,
  4. serial::{Decodable, Encodable},
  5. };
  6. pub struct Nullifier {
  7. pub repr: [u8; 32],
  8. }
  9. impl Nullifier {
  10. pub fn new(repr: [u8; 32]) -> Self {
  11. Self { repr }
  12. }
  13. }
  14. impl Encodable for Nullifier {
  15. fn encode<S: io::Write>(&self, s: S) -> Result<usize> {
  16. Ok(self.repr.encode(s)?)
  17. }
  18. }
  19. impl Decodable for Nullifier {
  20. fn decode<D: io::Read>(d: D) -> Result<Self> {
  21. Ok(Self {
  22. repr: Decodable::decode(d)?,
  23. })
  24. }
  25. }