1234567891011121314151617#![allow(dead_code)] 1819use evm_coder::{ToLog, execution::Result, solidity_interface, types::*, solidity, weight};20use evm_coder::{21 make_signature,22 custom_signature::{23 SIGNATURE_SIZE_LIMIT, SignatureUnit, SignaturePreferences, FunctionSignature,24 },25 types::Signature,26};2728pub struct Impls;2930#[solidity_interface(name = OurInterface)]31impl Impls {32 fn fn_a(&self, _input: uint256) -> Result<bool> {33 unreachable!()34 }35}3637#[solidity_interface(name = OurInterface1)]38impl Impls {39 fn fn_b(&self, _input: uint128) -> Result<uint32> {40 unreachable!()41 }42}4344#[derive(ToLog)]45enum OurEvents {46 Event1 {47 field1: uint32,48 },49 Event2 {50 field1: uint32,51 #[indexed]52 field2: uint32,53 },54}5556#[solidity_interface(57 name = OurInterface2,58 is(OurInterface),59 inline_is(OurInterface1),60 events(OurEvents)61)]62impl Impls {63 #[solidity(rename_selector = "fnK")]64 fn fn_c(&self, _input: uint32) -> Result<uint8> {65 unreachable!()66 }67 fn fn_d(&self, _value: uint32) -> Result<uint32> {68 unreachable!()69 }7071 fn caller_sensitive(&self, _caller: caller) -> Result<uint8> {72 unreachable!()73 }74 fn payable(&mut self, _value: value) -> Result<uint8> {75 unreachable!()76 }7778 #[weight(*_weight)]79 fn with_weight(&self, _weight: uint64) -> Result<void> {80 unreachable!()81 }8283 84 fn with_doc(&self) -> Result<void> {85 unreachable!()86 }87}8889#[solidity_interface(90 name = ValidSelector,91 expect_selector = 0x00000000,92)]93impl Impls {}