pub struct StructuredReferenceString<G1Point, G2Point> {
pub powers_main_group: Vec<G1Point>,
pub powers_secondary_group: [G2Point; 2],
}Fields§
§powers_main_group: Vec<G1Point>Vector of points in G1 encoding g1, s g1, s^2 g1, s^3 g1, … s^n g1
powers_secondary_group: [G2Point; 2]Slice of points in G2 encoding g2, s g2 We could relax this to include more powers, but for most applications this suffices
Implementations§
Source§impl<G1Point, G2Point> StructuredReferenceString<G1Point, G2Point>
impl<G1Point, G2Point> StructuredReferenceString<G1Point, G2Point>
Sourcepub fn new(
powers_main_group: &[G1Point],
powers_secondary_group: &[G2Point; 2],
) -> Self
pub fn new( powers_main_group: &[G1Point], powers_secondary_group: &[G2Point; 2], ) -> Self
Creates a new SRS from slices of G1points and a slice of length 2 of G2 points
Source§impl<G1Point, G2Point> StructuredReferenceString<G1Point, G2Point>
impl<G1Point, G2Point> StructuredReferenceString<G1Point, G2Point>
Sourcepub fn from_file(file_path: &str) -> Result<Self, SrsFromFileError>
pub fn from_file(file_path: &str) -> Result<Self, SrsFromFileError>
Read SRS from file
Trait Implementations§
Source§impl<G1Point, G2Point> AsBytes for StructuredReferenceString<G1Point, G2Point>
impl<G1Point, G2Point> AsBytes for StructuredReferenceString<G1Point, G2Point>
Source§impl<G1Point: Clone, G2Point: Clone> Clone for StructuredReferenceString<G1Point, G2Point>
impl<G1Point: Clone, G2Point: Clone> Clone for StructuredReferenceString<G1Point, G2Point>
Source§fn clone(&self) -> StructuredReferenceString<G1Point, G2Point>
fn clone(&self) -> StructuredReferenceString<G1Point, G2Point>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<G1Point, G2Point> Deserializable for StructuredReferenceString<G1Point, G2Point>
impl<G1Point, G2Point> Deserializable for StructuredReferenceString<G1Point, G2Point>
fn deserialize(bytes: &[u8]) -> Result<Self, DeserializationError>
Source§impl<G1Point: PartialEq, G2Point: PartialEq> PartialEq for StructuredReferenceString<G1Point, G2Point>
impl<G1Point: PartialEq, G2Point: PartialEq> PartialEq for StructuredReferenceString<G1Point, G2Point>
Source§fn eq(&self, other: &StructuredReferenceString<G1Point, G2Point>) -> bool
fn eq(&self, other: &StructuredReferenceString<G1Point, G2Point>) -> bool
Tests for
self and other values to be equal, and is used by ==.impl<G1Point, G2Point> StructuralPartialEq for StructuredReferenceString<G1Point, G2Point>
Auto Trait Implementations§
impl<G1Point, G2Point> Freeze for StructuredReferenceString<G1Point, G2Point>where
G2Point: Freeze,
impl<G1Point, G2Point> RefUnwindSafe for StructuredReferenceString<G1Point, G2Point>where
G2Point: RefUnwindSafe,
G1Point: RefUnwindSafe,
impl<G1Point, G2Point> Send for StructuredReferenceString<G1Point, G2Point>
impl<G1Point, G2Point> Sync for StructuredReferenceString<G1Point, G2Point>
impl<G1Point, G2Point> Unpin for StructuredReferenceString<G1Point, G2Point>
impl<G1Point, G2Point> UnwindSafe for StructuredReferenceString<G1Point, G2Point>where
G2Point: UnwindSafe,
G1Point: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more