pub fn new(
    S: &R1CSShape<G>,
    comm_W: &Commitment<G>,
    X: &[G::Scalar],
  ) -> Result<R1CSInstance<G>, NovaError> {
    if S.num_io != X.len() {
      Err(NovaError::InvalidInputLength)
    } else {
      Ok(R1CSInstance {
        comm_W: *comm_W,
        X: X.to_owned(),
      })
    }
  }
/// A method to create an instance object using consitituent elements
A method to create an instance object using consitituent elements
A method to create an instance object using consitituent elements
pub fn new(
    S: &R1CSShape<G>,
    comm_W: &Commitment<G>,
    X: &[G::Scalar],
  ) -> Result<R1CSInstance<G>, NovaError> {
    if S.num_io != X.len() {
      Err(NovaError::InvalidInputLength)
    } else {
      Ok(R1CSInstance {
        comm_W: *comm_W,
        X: X.to_owned(),
      })
    }
  }
pub fn new ( S : & R1CSShape < G > , comm_W : & Commitment < G > , X : & [ G :: Scalar ] , ) -> Result < R1CSInstance < G > , NovaError > { if S . num_io != X . len ( ) { Err ( NovaError :: InvalidInputLength ) } else { Ok ( R1CSInstance { comm_W : * comm_W , X : X . to_owned ( ) , } ) } }
A method to create an instance object using consitituent elements
A method to create an instance object using consitituent elements
S
&R1CSShape<G>
comm_W
&Commitment<G>
X
&[G::Scalar]
S
&R1CSShape<G>
comm_W
&Commitment<G>
X
&[G::Scalar]