openvm_native_recursion::witness

Trait Witnessable

Source
pub trait Witnessable<C: Config> {
    type WitnessVariable: MemVariable<C>;

    // Required methods
    fn read(&self, builder: &mut Builder<C>) -> Self::WitnessVariable;
    fn write(&self, witness: &mut Witness<C>);
}

Required Associated Types§

Required Methods§

Source

fn read(&self, builder: &mut Builder<C>) -> Self::WitnessVariable

Source

fn write(&self, witness: &mut Witness<C>)

Implementations on Foreign Types§

Source§

impl Witnessable<OuterConfig> for usize

Source§

type WitnessVariable = Usize<<OuterConfig as Config>::N>

Source§

fn read(&self, _builder: &mut Builder<OuterConfig>) -> Self::WitnessVariable

Source§

fn write(&self, _witness: &mut Witness<OuterConfig>)

Source§

impl Witnessable<OuterConfig> for AdjacentOpenedValues<OuterChallenge>

Source§

impl Witnessable<OuterConfig> for OpenedValues<OuterChallenge>

Source§

impl Witnessable<OuterConfig> for OpeningProof<BabyBearPoseidon2RootConfig>

Source§

impl Witnessable<OuterConfig> for AirProofData<BabyBearPoseidon2RootConfig>

Source§

impl Witnessable<OuterConfig> for Commitments<BabyBearPoseidon2RootConfig>

Source§

impl Witnessable<OuterConfig> for Proof<BabyBearPoseidon2RootConfig>

Source§

impl Witnessable<OuterConfig> for Bn254Fr

Source§

type WitnessVariable = Var<Bn254Fr>

Source§

fn read(&self, builder: &mut Builder<OuterConfig>) -> Self::WitnessVariable

Source§

fn write(&self, witness: &mut Witness<OuterConfig>)

Source§

impl Witnessable<OuterConfig> for Hash<BabyBear, Bn254Fr, 1>

Source§

impl<I: VectorWitnessable<OuterConfig>> Witnessable<OuterConfig> for Vec<I>

Implementors§