Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::avm2::simulation::InternalCallStackManager Class Reference

#include <internal_call_stack_manager.hpp>

Inheritance diagram for bb::avm2::simulation::InternalCallStackManager:
bb::avm2::simulation::InternalCallStackManagerInterface

Public Member Functions

 InternalCallStackManager (uint32_t context_id, EventEmitterInterface< InternalCallStackEvent > &emitter)
 
void push (PC return_pc) override
 
PC pop () override
 
InternalCallId get_next_call_id () const override
 
InternalCallId get_call_id () const override
 
InternalCallId get_return_call_id () const override
 
- Public Member Functions inherited from bb::avm2::simulation::InternalCallStackManagerInterface
virtual ~InternalCallStackManagerInterface ()=default
 

Private Attributes

InternalCallId next_internal_call_id = 2
 
InternalCallId current_internal_call_id = 1
 
InternalCallId current_return_call_id = 0
 
uint32_t context_id
 
std::stack< InternalCallPtrinternal_call_stack
 
EventEmitterInterface< InternalCallStackEvent > & internal_call_stack_events
 

Detailed Description

Definition at line 31 of file internal_call_stack_manager.hpp.

Constructor & Destructor Documentation

◆ InternalCallStackManager()

bb::avm2::simulation::InternalCallStackManager::InternalCallStackManager ( uint32_t  context_id,
EventEmitterInterface< InternalCallStackEvent > &  emitter 
)
inline

Definition at line 33 of file internal_call_stack_manager.hpp.

Member Function Documentation

◆ get_call_id()

InternalCallId bb::avm2::simulation::InternalCallStackManager::get_call_id ( ) const
overridevirtual

◆ get_next_call_id()

InternalCallId bb::avm2::simulation::InternalCallStackManager::get_next_call_id ( ) const
overridevirtual

◆ get_return_call_id()

InternalCallId bb::avm2::simulation::InternalCallStackManager::get_return_call_id ( ) const
overridevirtual

◆ pop()

PC bb::avm2::simulation::InternalCallStackManager::pop ( )
overridevirtual

◆ push()

void bb::avm2::simulation::InternalCallStackManager::push ( PC  return_pc)
overridevirtual

Member Data Documentation

◆ context_id

uint32_t bb::avm2::simulation::InternalCallStackManager::context_id
private

Definition at line 49 of file internal_call_stack_manager.hpp.

◆ current_internal_call_id

InternalCallId bb::avm2::simulation::InternalCallStackManager::current_internal_call_id = 1
private

Definition at line 46 of file internal_call_stack_manager.hpp.

◆ current_return_call_id

InternalCallId bb::avm2::simulation::InternalCallStackManager::current_return_call_id = 0
private

Definition at line 47 of file internal_call_stack_manager.hpp.

◆ internal_call_stack

std::stack<InternalCallPtr> bb::avm2::simulation::InternalCallStackManager::internal_call_stack
private

Definition at line 51 of file internal_call_stack_manager.hpp.

◆ internal_call_stack_events

EventEmitterInterface<InternalCallStackEvent>& bb::avm2::simulation::InternalCallStackManager::internal_call_stack_events
private

Definition at line 52 of file internal_call_stack_manager.hpp.

◆ next_internal_call_id

InternalCallId bb::avm2::simulation::InternalCallStackManager::next_internal_call_id = 2
private

Definition at line 45 of file internal_call_stack_manager.hpp.


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