pub fn query_coset(
        &mut self,
        positions: &[Vec<Boolean<F>>],
        _tracer: TraceInfo,
    ) -> Result<CosetQueryResult<FpVar<F>>, SynthesisError> {
        let round = self.round;
        let _self = &mut self._self;
        if !round.is_virtual {
            return Ok(_self.real_oracles[round.index].query_coset(positions));
        }

        let (virtual_round, mut shadow_self) = _self.take_virtual_oracle(round);

        let query_result = virtual_round.query_coset(positions, &mut shadow_self)?;

        _self.restore_from_shadow_self(shadow_self, round, virtual_round);

        Ok(query_result)
    }
/// Return the queried coset at `coset_index` of all oracles in this round.
/// `result[i][j][k]` is coset index `i` -> oracle index `j` -> element `k`
/// in this coset.
Return the queried coset at `coset_index` of all oracles in this round.
Return the queried coset at ` coset_index ` of all oracles in this round .
pub fn query_coset(
        &mut self,
        positions: &[Vec<Boolean<F>>],
        _tracer: TraceInfo,
    ) -> Result<CosetQueryResult<FpVar<F>>, SynthesisError> {
        let round = self.round;
        let _self = &mut self._self;
        if !round.is_virtual {
            return Ok(_self.real_oracles[round.index].query_coset(positions));
        }
        let (virtual_round, mut shadow_self) = _self.take_virtual_oracle(round);
        let query_result = virtual_round.query_coset(positions, &mut shadow_self)?;
        _self.restore_from_shadow_self(shadow_self, round, virtual_round);
        Ok(query_result)
    }
pub fn query_coset ( & mut self , positions : & [ Vec < Boolean < F > > ] , _tracer : TraceInfo , ) -> Result < CosetQueryResult < FpVar < F > > , SynthesisError > { let round = self . round ; let _self = & mut self . _self ; if ! round . is_virtual { return Ok ( _self . real_oracles [ round . index ] . query_coset ( positions ) ) ; } let ( virtual_round , mut shadow_self ) = _self . take_virtual_oracle ( round ) ; let query_result = virtual_round . query_coset ( positions , & mut shadow_self ) ? ; _self . restore_from_shadow_self ( shadow_self , round , virtual_round ) ; Ok ( query_result ) }
Return the queried coset at `coset_index` of all oracles in this round.
Return the queried coset at ` coset_index ` of all oracles in this round .
&mut self
positions
&[Vec<Boolean<F>>]
_tracer
TraceInfo
&mut self
positions
&[Vec<Boolean<F>>]
_tracer
TraceInfo