multiversx_chain_vm/vm_hooks/vh_handler/
vh_log.rs

1use crate::{tx_mock::TxLog, types::RawHandle, vm_hooks::VMHooksHandlerSource};
2
3pub trait VMHooksLog: VMHooksHandlerSource {
4    fn managed_write_log(&self, topics_handle: RawHandle, data_handle: RawHandle) {
5        let topics = self.m_types_lock().mb_get_vec_of_bytes(topics_handle);
6        let single_data_field = self.m_types_lock().mb_get(data_handle).to_vec();
7        self.push_tx_log(TxLog {
8            address: self.current_address().clone(),
9            endpoint: self.input_ref().func_name.clone(),
10            topics,
11            data: vec![single_data_field],
12        });
13    }
14}