difftreelog
feat print selector in generated ifaces
in: master
2 files changed
crates/evm-coder-macros/src/solidity_interface.rsdiffbeforeafterboth570 .iter()570 .iter()571 .filter(|a| !a.is_special())571 .filter(|a| !a.is_special())572 .map(MethodArg::expand_solidity_argument);572 .map(MethodArg::expand_solidity_argument);573 let selector = format!("{} {:0>8x}", self.selector_str, self.selector);573574574 quote! {575 quote! {575 SolidityFunction {576 SolidityFunction {577 selector: #selector,576 name: #camel_name,578 name: #camel_name,577 mutability: #mutability,579 mutability: #mutability,578 args: (580 args: (crates/evm-coder/src/solidity.rsdiffbeforeafterboth--- a/crates/evm-coder/src/solidity.rs
+++ b/crates/evm-coder/src/solidity.rs
@@ -376,6 +376,7 @@
Mutable,
}
pub struct SolidityFunction<A, R> {
+ pub selector: &'static str,
pub name: &'static str,
pub args: A,
pub result: R,
@@ -388,6 +389,7 @@
writer: &mut impl fmt::Write,
tc: &TypeCollector,
) -> fmt::Result {
+ writeln!(writer, "\t// Selector: {}", self.selector)?;
write!(writer, "\tfunction {}(", self.name)?;
self.args.solidity_name(writer, tc)?;
write!(writer, ")")?;