From 3e80c5c8ba6231cd94ef44f35802e28c46dcdf5c Mon Sep 17 00:00:00 2001
From: porcuquine <1746729+porcuquine@users.noreply.github.com>
Date: Fri, 8 Oct 2021 09:52:36 -0700
Subject: [PATCH] Derive more traits. (#7)

Co-authored-by: porcuquine <porcuquine@users.noreply.github.com>
---
 src/r1cs.rs | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/r1cs.rs b/src/r1cs.rs
index 4f17d3b..b0083d9 100644
--- a/src/r1cs.rs
+++ b/src/r1cs.rs
@@ -7,13 +7,14 @@ use itertools::concat;
 use rayon::prelude::*;
 
 /// Public parameters for a given R1CS
+#[derive(Debug)]
 pub struct R1CSGens<G: Group> {
   gens_W: CommitGens<G>,
   gens_E: CommitGens<G>,
 }
 
 /// A type that holds the shape of the R1CS matrices
-#[derive(Debug)]
+#[derive(Clone, Debug, PartialEq, Eq)]
 pub struct R1CSShape<G: Group> {
   num_cons: usize,
   num_vars: usize,
@@ -24,7 +25,7 @@ pub struct R1CSShape<G: Group> {
 }
 
 /// A type that holds a witness for a given R1CS instance
-#[derive(Clone, Debug)]
+#[derive(Clone, Debug, PartialEq, Eq)]
 pub struct R1CSWitness<G: Group> {
   W: Vec<G::Scalar>,
 }
@@ -37,7 +38,7 @@ pub struct R1CSInstance<G: Group> {
 }
 
 /// A type that holds a witness for a given Relaxed R1CS instance
-#[derive(Clone, Debug)]
+#[derive(Clone, Debug, PartialEq, Eq)]
 pub struct RelaxedR1CSWitness<G: Group> {
   W: Vec<G::Scalar>,
   E: Vec<G::Scalar>,