Skip to content

Removed redundant clones

  • Changed the signature of some functions to accept arguments by ref and avoid cloning
  • Removed other redundant clones

API changes

  • algebra::linalg::Matrix::from_diagonal
    • diagonal: Vec<T>, &[T]
  • algebra::linalg::Matrix::from_vec_vec
    • matrix: Vec<Vec<T>>, &[impl Deref<Target = [T]>]
  • algebra::linalg::Matrix::from_vec_vec_unchecked
    • matrix: Vec<Vec<T>>, &[impl Deref<Target = [T]>]
  • aplonk::commit
    • polynomials: Vec<P>, &[P]
    • setup: SetupParams<E>, &SetupParams<E>
  • aplonk::prove
    • commit: (Vec<E::G1>, PairingOutput<E>), &(Vec<E::G1>, PairingOutput<E>)
    • polynomials: Vec<P>, &[P]
    • shards: Vec<Shard<E::ScalarField>>, &[Shard<E::ScalarField>]
    • points: Vec<E::ScalarField>, &[E::ScalarField]
    • params: SetupParams<E>, &SetupParams<E>
  • fec::decode
    • shards: Vec<Shard<F>>, &[Shard<F>]
  • fri::encode
    • bytes: &[u8], &[u8]
    • evaluations: Vec<Vec<F>>, &[Vec<F>]
  • fri::prove
    • evaluations: Vec<Vec<F>>, Vec<fec::Shard<F>>
    • evaluations: &[Vec<F>], &[fec::Shard<F>]
  • fri::verify
    • block: Block<F, H>, &Block<F, H>
  • fri:decode
    • blocks: Vec<Block<F, H>>, &[Block<F, H>]
  • kzg::prove
    • commits: Vec<kzg10::Commitment<E>>, &[kzg10::Commitment<E>]
    • polynomials: Vec<P>, &[P]
    • shards: Vec<Shard<E::ScalarField>>, &[Shard<E::ScalarField>]
    • points: Vec<E::ScalarField>, &[E::ScalarField]
    • powers: kzg10::Powers<E>, &kzg10::Powers<E>
  • zk::trim
    • pp: kzg10::UniversalParams<E>, &kzg10::UniversalParams<E>
Edited by STEVAN Antoine

Merge request reports

Loading