Skip to content

Commit

Permalink
sinsemilla::message.rs: Add MessageSubPiece.to_field_elem() method
Browse files Browse the repository at this point in the history
  • Loading branch information
therealyingtong committed Jun 6, 2021
1 parent 2b254f8 commit 42eadef
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions src/circuit/gadget/sinsemilla/message.rs
Original file line number Diff line number Diff line change
Expand Up @@ -128,3 +128,17 @@ impl<F: FieldExt, const K: usize> From<(Option<F>, std::ops::Range<usize>)>
}
}
}

impl<F: FieldExt, const K: usize> MessageSubPiece<F, K> {
pub fn to_field_elem(self) -> Option<F> {
self.field_elem.map(|value| {
let bits = &value
.to_le_bits()
.iter()
.by_val()
.take(F::NUM_BITS as usize)
.collect::<Vec<_>>()[self.bit_range];
bits_to_field_elem(bits)
})
}
}

0 comments on commit 42eadef

Please sign in to comment.