#[repr(C)]pub struct PrunedGate {
pub typ_tag: u16,
_pad: [u8; 2],
pub wires: [PrunedWire; 7],
}Expand description
A gate record stripped down to the fields the prover reads at prove
time: type tag and wire targets. Coefficients are deliberately omitted
because they are folded into ColumnEvaluations::coefficients8 at key
generation time.
Wire coordinates are stored as u32 rather than the in-memory usize
so that the on-disk layout is identical on 32-bit and 64-bit hosts.
Fields§
§typ_tag: u16Discriminant matching crate::circuits::gate::GateType. Stored as
u16 for compactness; the enum currently has < 32 variants.
_pad: [u8; 2]Explicit padding to keep the layout stable across compilers.
wires: [PrunedWire; 7]Wire targets: (row, col) for each of the 7 permutation columns.
Implementations§
Source§impl PrunedGate
impl PrunedGate
pub const fn new(typ_tag: u16, wires: [PrunedWire; 7]) -> Self
Trait Implementations§
Source§impl Clone for PrunedGate
impl Clone for PrunedGate
Source§fn clone(&self) -> PrunedGate
fn clone(&self) -> PrunedGate
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for PrunedGate
Source§impl Debug for PrunedGate
impl Debug for PrunedGate
impl Eq for PrunedGate
Source§impl PartialEq for PrunedGate
impl PartialEq for PrunedGate
impl StructuralPartialEq for PrunedGate
Auto Trait Implementations§
impl Freeze for PrunedGate
impl RefUnwindSafe for PrunedGate
impl Send for PrunedGate
impl Sync for PrunedGate
impl Unpin for PrunedGate
impl UnsafeUnpin for PrunedGate
impl UnwindSafe for PrunedGate
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.