pub struct PointFn<const N: usize, const LAMBDA: usize, G>where
G: Group<LAMBDA>,{
pub alpha: [u8; N],
pub beta: G,
}Expand description
Point function. Despite the name, it only ships an element of the domain and an element of the range. The actual meaning of the 2 elements is determined by the context.
Nis the byte size of the domain.LAMBDAhere is used as the byte size of the range, unlike the one in the paper.
Fields§
§alpha: [u8; N]$\alpha$, or say x in y = f(x)
beta: G$\beta$, or say y in y = f(x)
Auto Trait Implementations§
impl<const N: usize, const LAMBDA: usize, G> Freeze for PointFn<N, LAMBDA, G>where
G: Freeze,
impl<const N: usize, const LAMBDA: usize, G> RefUnwindSafe for PointFn<N, LAMBDA, G>where
G: RefUnwindSafe,
impl<const N: usize, const LAMBDA: usize, G> Send for PointFn<N, LAMBDA, G>
impl<const N: usize, const LAMBDA: usize, G> Sync for PointFn<N, LAMBDA, G>
impl<const N: usize, const LAMBDA: usize, G> Unpin for PointFn<N, LAMBDA, G>where
G: Unpin,
impl<const N: usize, const LAMBDA: usize, G> UnwindSafe for PointFn<N, LAMBDA, G>where
G: 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