21 uint32_t max_read_index =
static_cast<uint32_t
>(
22 std::min(
static_cast<uint64_t
>(rd_offset) + rd_copy_size,
static_cast<uint64_t
>(
last_child_rd_size)));
24 std::vector<FF> padded_returndata;
25 padded_returndata.reserve(max_read_index - rd_offset);
27 for (uint32_t i = rd_offset; i < max_read_index; i++) {
31 padded_returndata.resize(rd_copy_size, 0);
33 return padded_returndata;
49 uint64_t calldata_size =
static_cast<uint64_t
>(
calldata.size());
51 uint64_t max_read_index = std::min(
static_cast<uint64_t
>(
cd_offset) + cd_copy_size, calldata_size);
53 std::vector<FF> padded_calldata;
54 padded_calldata.reserve(max_read_index -
cd_offset);
56 for (
size_t i =
cd_offset; i < max_read_index; i++) {
57 padded_calldata.push_back(
calldata[i]);
60 padded_calldata.resize(cd_copy_size, 0);
62 return padded_calldata;
108 uint64_t parent_cd_size_u64 =
static_cast<uint64_t
>(
parent_cd_size);
110 uint64_t max_read_index = std::min(
static_cast<uint64_t
>(
cd_offset) + cd_copy_size, parent_cd_size_u64);
112 std::vector<FF> padded_calldata;
113 padded_calldata.reserve(max_read_index -
cd_offset);
115 for (uint32_t i =
cd_offset; i < max_read_index; i++) {
119 padded_calldata.resize(cd_copy_size, 0);
121 return padded_calldata;
MemoryAddress last_child_rd_size
const AztecAddress & get_address() const override
TransactionPhase get_phase() const override
InternalCallStackManagerInterface & get_internal_call_stack_manager() override
std::vector< FF > get_returndata(uint32_t rd_offset, uint32_t rd_copy_size) override
MemoryAddress get_last_rd_addr() const override
uint32_t get_last_rd_size() const override
Gas get_gas_used() const override
const AztecAddress & get_msg_sender() const override
ContextInterface & get_child_context() override
SideEffectStates & get_side_effect_states() override
WrittenPublicDataSlotsTreeCheckInterface & written_public_data_slots_tree
std::unique_ptr< ContextInterface > child_context
uint32_t get_context_id() const override
uint32_t get_last_child_id() const override
BytecodeManagerInterface & get_bytecode_manager() override
bool get_last_success() const override
Gas get_gas_limit() const override
HighLevelMerkleDBInterface & merkle_db
const FF & get_transaction_fee() const override
uint32_t get_pc() const override
bool get_is_static() const override
virtual std::optional< BytecodeId > try_get_bytecode_id()=0
virtual MemoryInterface & get_memory()=0
std::vector< FF > get_calldata(uint32_t cd_offset, uint32_t cd_copy_size) const override
ContextEvent serialize_context_event() override
Gas get_parent_gas_used() const override
Gas get_parent_gas_limit() const override
uint32_t get_parent_cd_size() const override
virtual TreeStates get_tree_state() const =0
virtual InternalCallId get_call_id() const =0
virtual InternalCallId get_return_call_id() const =0
virtual InternalCallId get_next_call_id() const =0
virtual const MemoryValue & get(MemoryAddress index) const =0
uint32_t get_parent_id() const override
MemoryAddress parent_cd_addr
ContextEvent serialize_context_event() override
std::vector< FF > get_calldata(uint32_t cd_offset, uint32_t cd_copy_size) const override
Gas get_parent_gas_used() const override
Gas get_parent_gas_limit() const override
MemoryAddress parent_cd_size
ContextInterface & parent_context
virtual AppendOnlyTreeSnapshot snapshot() const =0