mirror of
https://github.com/arnaucube/Nova.git
synced 2026-01-11 08:31:29 +01:00
Generalize TranscriptRepr implementation for slices (#150)
* generalize the slice implementation * bump the version
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "nova-snark"
|
name = "nova-snark"
|
||||||
version = "0.18.0"
|
version = "0.18.1"
|
||||||
authors = ["Srinath Setty <srinath@microsoft.com>"]
|
authors = ["Srinath Setty <srinath@microsoft.com>"]
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
description = "Recursive zkSNARKs without trusted setup"
|
description = "Recursive zkSNARKs without trusted setup"
|
||||||
|
|||||||
@@ -234,12 +234,10 @@ pub trait PrimeFieldExt: PrimeField {
|
|||||||
fn from_uniform(bytes: &[u8]) -> Self;
|
fn from_uniform(bytes: &[u8]) -> Self;
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<G: Group<Scalar = F>, F: PrimeField + TranscriptReprTrait<G>> TranscriptReprTrait<G>
|
impl<G: Group, T: TranscriptReprTrait<G>> TranscriptReprTrait<G> for &[T] {
|
||||||
for &[F]
|
|
||||||
{
|
|
||||||
fn to_transcript_bytes(&self) -> Vec<u8> {
|
fn to_transcript_bytes(&self) -> Vec<u8> {
|
||||||
(0..self.len())
|
(0..self.len())
|
||||||
.map(|i| <F as TranscriptReprTrait<G>>::to_transcript_bytes(&self[i]))
|
.map(|i| self[i].to_transcript_bytes())
|
||||||
.collect::<Vec<_>>()
|
.collect::<Vec<_>>()
|
||||||
.into_iter()
|
.into_iter()
|
||||||
.flatten()
|
.flatten()
|
||||||
|
|||||||
Reference in New Issue
Block a user