[][src]Struct zkinterface::zkinterface_generated::zkinterface::Circuit

pub struct Circuit<'a> {
    pub _tab: Table<'a>,
}

Fields

_tab: Table<'a>

Methods

impl<'a> Circuit<'a>[src]

pub fn init_from_table(table: Table<'a>) -> Self[src]

pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>(
    _fbb: &'mut_bldr mut FlatBufferBuilder<'bldr>,
    args: &'args CircuitArgs<'args>
) -> WIPOffset<Circuit<'bldr>>
[src]

pub const VT_CONNECTIONS: VOffsetT[src]

pub const VT_FREE_VARIABLE_ID: VOffsetT[src]

pub const VT_R1CS_GENERATION: VOffsetT[src]

pub const VT_WITNESS_GENERATION: VOffsetT[src]

pub const VT_FIELD_ORDER: VOffsetT[src]

pub const VT_CONFIGURATION: VOffsetT[src]

pub fn connections(&self) -> Option<Variables<'a>>[src]

Variables to use as connections to the sub-circuit.

  • Variables to use as input connections to the gadget.
  • Or variables to use as output connections from the gadget.
  • Variables are allocated by the sender of this message.
  • The same structure must be provided for R1CS and witness generations.
  • If witness_generation=true, variables must be assigned values.

pub fn free_variable_id(&self) -> u64[src]

A variable ID greater than all IDs allocated by the sender of this message. The recipient of this message can allocate new IDs >= free_variable_id.

pub fn r1cs_generation(&self) -> bool[src]

Whether a constraint system is being generated. Provide constraints in R1CSConstraints messages.

pub fn witness_generation(&self) -> bool[src]

Whether a witness is being generated. Provide the witness in connections.values and Witness messages.

pub fn field_order(&self) -> Option<&'a [u8]>[src]

The order of the finite field used by the current system. A number in canonical little-endian representation. See Variables.values below.

pub fn configuration(&self) -> Option<Vector<'a, ForwardsUOffset<KeyValue<'a>>>>[src]

Optional: Any custom parameter that may influence the circuit construction.

Example: function_name, if a gadget supports multiple function variants. Example: the depth of a Merkle tree. Counter-example: a Merkle path is not config and belongs in connections.info.

Trait Implementations

impl<'a> Copy for Circuit<'a>[src]

impl<'a> PartialEq<Circuit<'a>> for Circuit<'a>[src]

impl<'a> Clone for Circuit<'a>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl<'a> From<Circuit<'a>> for CircuitOwned[src]

impl<'a> Debug for Circuit<'a>[src]

impl<'a> Follow<'a> for Circuit<'a>[src]

type Inner = Circuit<'a>

Auto Trait Implementations

impl<'a> Send for Circuit<'a>

impl<'a> Sync for Circuit<'a>

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]