Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
lookup_into_indexed_by_row.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <cstdint>
4
5
#include "
barretenberg/common/tuple.hpp
"
6
#include "
barretenberg/vm2/tracegen/lib/lookup_builder.hpp
"
7
8
namespace
bb::avm2::tracegen
{
9
18
template
<
typename
LookupSettings>
class
LookupIntoIndexedByRow
:
public
IndexedLookupTraceBuilder
<LookupSettings> {
19
public
:
20
// Inherit the base constructors (incl. the outer_dst_selector one) so the interaction can be registered
21
// with an explicit outer selector; the base process() then toggles the fine-grained DST_SELECTOR.
22
using
IndexedLookupTraceBuilder
<
LookupSettings
>
::IndexedLookupTraceBuilder
;
23
24
protected
:
25
using
TupleType
=
typename
IndexedLookupTraceBuilder<LookupSettings>::TupleType
;
26
// This is an efficient implementation of indexing into the precomputed table.
27
uint32_t
find_in_dst
(
const
TupleType
& tup)
const override
{
return
static_cast<
uint32_t
>
(
flat_tuple::get<0>
(tup)); }
28
};
29
30
}
// namespace bb::avm2::tracegen
bb::avm2::tracegen::IndexedLookupTraceBuilder
Definition
lookup_builder.hpp:21
bb::avm2::tracegen::IndexedLookupTraceBuilder< LookupSettings >::LookupSettings
LookupSettings LookupSettings
Definition
lookup_builder.hpp:62
bb::avm2::tracegen::IndexedLookupTraceBuilder::TupleType
RefTuple< LookupSettings::LOOKUP_TUPLE_SIZE > TupleType
Definition
lookup_builder.hpp:63
bb::avm2::tracegen::IndexedLookupTraceBuilder< LookupSettings >::IndexedLookupTraceBuilder
IndexedLookupTraceBuilder()
Definition
lookup_builder.hpp:23
bb::avm2::tracegen::LookupIntoIndexedByRow
Definition
lookup_into_indexed_by_row.hpp:18
bb::avm2::tracegen::LookupIntoIndexedByRow::find_in_dst
uint32_t find_in_dst(const TupleType &tup) const override
Definition
lookup_into_indexed_by_row.hpp:27
bb::avm2::tracegen::LookupIntoIndexedByRow::TupleType
typename IndexedLookupTraceBuilder< LookupSettings >::TupleType TupleType
Definition
lookup_into_indexed_by_row.hpp:25
lookup_builder.hpp
bb::avm2::tracegen
Definition
full_row.hpp:10
tuplet::get
TUPLET_INLINE constexpr decltype(auto) get(Tup &&tup)
Definition
tuplet.hpp:1021
tuple.hpp
src
barretenberg
vm2
tracegen
lib
lookup_into_indexed_by_row.hpp
Generated by
1.9.8