Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::ExecutionTraceBlock< FF, NUM_WIRES_ > Class Template Referenceabstract

Basic structure for storing gate data in a builder. More...

#include <execution_trace_block.hpp>

Public Types

using SelectorType = Selector< FF >
 
using WireType = SlabVector< uint32_t >
 
using Wires = std::array< WireType, NUM_WIRES >
 

Public Member Functions

 ExecutionTraceBlock ()=default
 
 ExecutionTraceBlock (const ExecutionTraceBlock &)=default
 
ExecutionTraceBlockoperator= (const ExecutionTraceBlock &)=default
 
 ExecutionTraceBlock (ExecutionTraceBlock &&) noexcept=default
 
ExecutionTraceBlockoperator= (ExecutionTraceBlock &&) noexcept=default
 
virtual ~ExecutionTraceBlock ()=default
 
void tracy_gate ()
 
uint32_t trace_offset () const
 
bool operator== (const ExecutionTraceBlock &other) const =default
 
size_t size () const
 
void reserve (size_t size_hint)
 
uint32_t get_fixed_size (bool is_structured=true) const
 
virtual RefVector< Selector< FF > > get_selectors ()=0
 
void populate_wires (const uint32_t &idx_1, const uint32_t &idx_2, const uint32_t &idx_3, const uint32_t &idx_4)
 
auto & w_l ()
 
auto & w_r ()
 
auto & w_o ()
 
auto & w_4 ()
 
Selector< FF > & q_m ()
 
Selector< FF > & q_c ()
 
Selector< FF > & q_1 ()
 
Selector< FF > & q_2 ()
 
Selector< FF > & q_3 ()
 
Selector< FF > & q_4 ()
 

Public Attributes

Wires wires
 
uint32_t trace_offset_ = std::numeric_limits<uint32_t>::max()
 
uint32_t fixed_size = 0
 

Static Public Attributes

static constexpr size_t NUM_WIRES = NUM_WIRES_
 

Protected Attributes

std::array< SlabVectorSelector< FF >, 6 > non_gate_selectors
 

Detailed Description

template<typename FF, size_t NUM_WIRES_>
class bb::ExecutionTraceBlock< FF, NUM_WIRES_ >

Basic structure for storing gate data in a builder.

Template Parameters
FF
NUM_WIRES

Definition at line 223 of file execution_trace_block.hpp.

Member Typedef Documentation

◆ SelectorType

template<typename FF , size_t NUM_WIRES_>
using bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::SelectorType = Selector<FF>

Definition at line 227 of file execution_trace_block.hpp.

◆ Wires

template<typename FF , size_t NUM_WIRES_>
using bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::Wires = std::array<WireType, NUM_WIRES>

Definition at line 229 of file execution_trace_block.hpp.

◆ WireType

template<typename FF , size_t NUM_WIRES_>
using bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::WireType = SlabVector<uint32_t>

Definition at line 228 of file execution_trace_block.hpp.

Constructor & Destructor Documentation

◆ ExecutionTraceBlock() [1/3]

template<typename FF , size_t NUM_WIRES_>
bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::ExecutionTraceBlock ( )
default

◆ ExecutionTraceBlock() [2/3]

template<typename FF , size_t NUM_WIRES_>
bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::ExecutionTraceBlock ( const ExecutionTraceBlock< FF, NUM_WIRES_ > &  )
default

◆ ExecutionTraceBlock() [3/3]

template<typename FF , size_t NUM_WIRES_>
bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::ExecutionTraceBlock ( ExecutionTraceBlock< FF, NUM_WIRES_ > &&  )
defaultnoexcept

◆ ~ExecutionTraceBlock()

template<typename FF , size_t NUM_WIRES_>
virtual bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::~ExecutionTraceBlock ( )
virtualdefault

Member Function Documentation

◆ get_fixed_size()

template<typename FF , size_t NUM_WIRES_>
uint32_t bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::get_fixed_size ( bool  is_structured = true) const
inline

Definition at line 282 of file execution_trace_block.hpp.

◆ get_selectors()

template<typename FF , size_t NUM_WIRES_>
virtual RefVector< Selector< FF > > bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::get_selectors ( )
pure virtual

◆ operator=() [1/2]

template<typename FF , size_t NUM_WIRES_>
ExecutionTraceBlock & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::operator= ( const ExecutionTraceBlock< FF, NUM_WIRES_ > &  )
default

◆ operator=() [2/2]

template<typename FF , size_t NUM_WIRES_>
ExecutionTraceBlock & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::operator= ( ExecutionTraceBlock< FF, NUM_WIRES_ > &&  )
defaultnoexcept

◆ operator==()

template<typename FF , size_t NUM_WIRES_>
bool bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::operator== ( const ExecutionTraceBlock< FF, NUM_WIRES_ > &  other) const
default

◆ populate_wires()

template<typename FF , size_t NUM_WIRES_>
void bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::populate_wires ( const uint32_t &  idx_1,
const uint32_t &  idx_2,
const uint32_t &  idx_3,
const uint32_t &  idx_4 
)
inline

Definition at line 303 of file execution_trace_block.hpp.

◆ q_1()

template<typename FF , size_t NUM_WIRES_>
Selector< FF > & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::q_1 ( )
inline

Definition at line 322 of file execution_trace_block.hpp.

◆ q_2()

template<typename FF , size_t NUM_WIRES_>
Selector< FF > & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::q_2 ( )
inline

Definition at line 323 of file execution_trace_block.hpp.

◆ q_3()

template<typename FF , size_t NUM_WIRES_>
Selector< FF > & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::q_3 ( )
inline

Definition at line 324 of file execution_trace_block.hpp.

◆ q_4()

template<typename FF , size_t NUM_WIRES_>
Selector< FF > & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::q_4 ( )
inline

Definition at line 325 of file execution_trace_block.hpp.

◆ q_c()

template<typename FF , size_t NUM_WIRES_>
Selector< FF > & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::q_c ( )
inline

Definition at line 321 of file execution_trace_block.hpp.

◆ q_m()

template<typename FF , size_t NUM_WIRES_>
Selector< FF > & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::q_m ( )
inline

Definition at line 320 of file execution_trace_block.hpp.

◆ reserve()

template<typename FF , size_t NUM_WIRES_>
void bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::reserve ( size_t  size_hint)
inline

Definition at line 269 of file execution_trace_block.hpp.

◆ size()

template<typename FF , size_t NUM_WIRES_>
size_t bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::size ( ) const
inline

Definition at line 267 of file execution_trace_block.hpp.

◆ trace_offset()

template<typename FF , size_t NUM_WIRES_>
uint32_t bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::trace_offset ( ) const
inline

Definition at line 259 of file execution_trace_block.hpp.

◆ tracy_gate()

template<typename FF , size_t NUM_WIRES_>
void bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::tracy_gate ( )
inline

Definition at line 246 of file execution_trace_block.hpp.

◆ w_4()

template<typename FF , size_t NUM_WIRES_>
auto & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::w_4 ( )
inline

Definition at line 318 of file execution_trace_block.hpp.

◆ w_l()

template<typename FF , size_t NUM_WIRES_>
auto & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::w_l ( )
inline

Definition at line 315 of file execution_trace_block.hpp.

◆ w_o()

template<typename FF , size_t NUM_WIRES_>
auto & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::w_o ( )
inline

Definition at line 317 of file execution_trace_block.hpp.

◆ w_r()

template<typename FF , size_t NUM_WIRES_>
auto & bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::w_r ( )
inline

Definition at line 316 of file execution_trace_block.hpp.

Member Data Documentation

◆ fixed_size

template<typename FF , size_t NUM_WIRES_>
uint32_t bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::fixed_size = 0

Definition at line 299 of file execution_trace_block.hpp.

◆ non_gate_selectors

template<typename FF , size_t NUM_WIRES_>
std::array<SlabVectorSelector<FF>, 6> bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::non_gate_selectors
protected

Definition at line 328 of file execution_trace_block.hpp.

◆ NUM_WIRES

template<typename FF , size_t NUM_WIRES_>
constexpr size_t bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::NUM_WIRES = NUM_WIRES_
staticconstexpr

Definition at line 225 of file execution_trace_block.hpp.

◆ trace_offset_

template<typename FF , size_t NUM_WIRES_>
uint32_t bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::trace_offset_ = std::numeric_limits<uint32_t>::max()

Definition at line 257 of file execution_trace_block.hpp.

◆ wires

template<typename FF , size_t NUM_WIRES_>
Wires bb::ExecutionTraceBlock< FF, NUM_WIRES_ >::wires

Definition at line 256 of file execution_trace_block.hpp.


The documentation for this class was generated from the following file: