git.delta.rocks / unique-network / refs/commits / 39e1fa48d107

difftreelog

feat infallible evm logging

Yaroslav Bolyukin2021-10-12parent: #94e2090.patch.diff
in: master

1 file changed

modifiedpallets/evm-coder-substrate/src/lib.rsdiffbeforeafterboth
106 self.logs.borrow_mut().push(log);106 self.logs.borrow_mut().push(log);
107 Ok(())107 Ok(())
108 }108 }
109 /// Doesn't consumes any gas, should be used after consume_log_sub
110 pub fn log_infallible(&self, log: impl ToLog) {
111 self.logs.borrow_mut().push(log.to_log(self.contract));
112 }
109 pub fn retrieve_logs(self) -> Vec<Log> {113 pub fn retrieve_logs(self) -> Vec<Log> {
110 self.logs.into_inner()114 self.logs.into_inner()
111 }115 }
119 pub fn consume_sstore_sub(&self) -> DispatchResult {123 pub fn consume_sstore_sub(&self) -> DispatchResult {
120 self.consume_gas_sub(G_SSTORE_WORD)124 self.consume_gas_sub(G_SSTORE_WORD)
121 }125 }
126 pub fn consume_log_sub(&self, topics: usize, data: usize) -> DispatchResult {
127 self.consume_gas_sub(log_price(data, topics))
128 }
122 pub fn consume_gas_sub(&self, gas: u64) -> DispatchResult {129 pub fn consume_gas_sub(&self, gas: u64) -> DispatchResult {
123 ensure!(gas != u64::MAX, Error::<T>::OutOfGas);130 ensure!(gas != u64::MAX, Error::<T>::OutOfGas);
124 let mut gas_limit = self.gas_limit.borrow_mut();131 let mut gas_limit = self.gas_limit.borrow_mut();