EventEmitterInterface< CalldataEvent > & events
Poseidon2Interface & hasher
CalldataHasher(uint32_t context_id, Poseidon2Interface &hasher, EventEmitterInterface< CalldataEvent > &events)
FF compute_calldata_hash(std::span< const FF > calldata) override
virtual FF compute_calldata_hash(std::span< const FF > calldata)=0
virtual ~CalldataHashingInterface()=default
CalldataHashingProvider(Poseidon2Interface &hasher, EventEmitterInterface< CalldataEvent > &event_emitter)
EventEmitterInterface< CalldataEvent > & events
Poseidon2Interface & hasher
std::unique_ptr< CalldataHashingInterface > make_cd_hasher(uint32_t context_id) override
virtual ~CalldataHashingProviderInterface()=default
virtual std::unique_ptr< CalldataHashingInterface > make_cd_hasher(uint32_t context_id)=0
EventEmitter< DataCopyEvent > event_emitter
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept