coin.rs 496 B

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