1234567891011121314151617#![allow(dead_code)] 1819use evm_coder::{ToLog, execution::Result, solidity_interface, types::*, solidity, weight};20use evm_coder::{types::Signature};2122pub struct Impls;2324#[solidity_interface(name = OurInterface)]25impl Impls {26 fn fn_a(&self, _input: uint256) -> Result<bool> {27 unreachable!()28 }29}3031#[solidity_interface(name = OurInterface1)]32impl Impls {33 fn fn_b(&self, _input: uint128) -> Result<uint32> {34 unreachable!()35 }36}3738#[derive(ToLog)]39enum OurEvents {40 Event1 {41 field1: uint32,42 },43 Event2 {44 field1: uint32,45 #[indexed]46 field2: uint32,47 },48}4950#[solidity_interface(51 name = OurInterface2,52 is(OurInterface),53 inline_is(OurInterface1),54 events(OurEvents)55)]56impl Impls {57 #[solidity(rename_selector = "fnK")]58 fn fn_c(&self, _input: uint32) -> Result<uint8> {59 unreachable!()60 }61 fn fn_d(&self, _value: uint32) -> Result<uint32> {62 unreachable!()63 }6465 fn caller_sensitive(&self, _caller: caller) -> Result<uint8> {66 unreachable!()67 }68 fn payable(&mut self, _value: value) -> Result<uint8> {69 unreachable!()70 }7172 #[weight(*_weight)]73 fn with_weight(&self, _weight: uint64) -> Result<void> {74 unreachable!()75 }7677 78 fn with_doc(&self) -> Result<void> {79 unreachable!()80 }81}8283#[solidity_interface(84 name = ValidSelector,85 expect_selector = 0x00000000,86)]87impl Impls {}