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

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

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

        // restore self
        _self.restore_from_shadow_self(shadow_self, round, virtual_round);

        // return the query result
        query_result
    }
/// Query the prover message as an evaluation oracle at the requested round
/// at a point.
Query the prover message as an evaluation oracle at the requested round
at a point.
Query the prover message as an evaluation oracle at the requested round at a point .
pub fn query_point(
        &mut self,
        positions: &[Vec<Boolean<F>>],
        _tracer: TraceInfo,
    ) -> Result<Vec<Vec<FpVar<F>>>, SynthesisError> {
        let round = self.round;
        let _self = &mut self._self;
        if !round.is_virtual {
            return _self.real_oracles[round.index].query(positions);
        }
        let (virtual_round, mut shadow_self) = _self.take_virtual_oracle(round);
        let query_result = virtual_round.query_point(positions, &mut shadow_self);
        // restore self
        _self.restore_from_shadow_self(shadow_self, round, virtual_round);
        // return the query result
        query_result
    }
pub fn query_point ( & mut self , positions : & [ Vec < Boolean < F > > ] , _tracer : TraceInfo , ) -> Result < Vec < Vec < FpVar < F > > > , SynthesisError > { let round = self . round ; let _self = & mut self . _self ; if ! round . is_virtual { return _self . real_oracles [ round . index ] . query ( positions ) ; } let ( virtual_round , mut shadow_self ) = _self . take_virtual_oracle ( round ) ; let query_result = virtual_round . query_point ( positions , & mut shadow_self ) ; // restore self _self . restore_from_shadow_self ( shadow_self , round , virtual_round ) ; // return the query result query_result }
Query the prover message as an evaluation oracle at the requested round
at a point.
Query the prover message as an evaluation oracle at the requested round at a point .
&mut self
positions
&[Vec<Boolean<F>>]
_tracer
TraceInfo
&mut self
positions
&[Vec<Boolean<F>>]
_tracer
TraceInfo