pub trait CircuitType: Clone {
    type Gate: GateType;

Show 17 methods fn increment_nonfree_gates(&mut self); fn new(ngates: Option<usize>) -> Self; fn get_output_refs(&self) -> &[CircuitRef]; fn get_garbler_input_refs(&self) -> &[CircuitRef]; fn get_evaluator_input_refs(&self) -> &[CircuitRef]; fn get_num_nonfree_gates(&self) -> usize; fn push_gates(&mut self, gate: Self::Gate); fn push_const_ref(&mut self, xref: CircuitRef); fn push_output_ref(&mut self, xref: CircuitRef); fn push_garbler_input_ref(&mut self, xref: CircuitRef); fn push_evaluator_input_ref(&mut self, xref: CircuitRef); fn push_modulus(&mut self, modulus: u16); fn garbler_input_mod(&self, i: usize) -> u16; fn evaluator_input_mod(&self, i: usize) -> u16; fn num_garbler_inputs(&self) -> usize { ... } fn num_evaluator_inputs(&self) -> usize { ... } fn noutputs(&self) -> usize { ... }
}
Expand description

Trait representing circuits that can be built by CircuitBuilder

Required Associated Types

Gates that the circuit is composed of

Required Methods

Increase number of nonfree gates

Make a new Circuit object.

Get all output refs

Get all garbler input refs

Get all evaluator input refs

Get number of nonfree gates

Add a gate

Add a constant ref

Add an output ref

Add a garbler input ref

Add an evaluator input ref

Add wire moulus

Return the modulus of the garbler input indexed by i.

Return the modulus of the evaluator input indexed by i.

Provided Methods

Return the number of garbler inputs.

Return the number of evaluator inputs.

Return the number of outputs.

Implementors