git.delta.rocks / unique-network / refs/commits / 695f378349e2

difftreelog

feat print selector in generated ifaces

Yaroslav Bolyukin2021-09-01parent: #4aadc00.patch.diff
in: master

2 files changed

modifiedcrates/evm-coder-macros/src/solidity_interface.rsdiffbeforeafterboth
570 .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);
573574
574 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: (
modifiedcrates/evm-coder/src/solidity.rsdiffbeforeafterboth
376 Mutable,376 Mutable,
377}377}
378pub struct SolidityFunction<A, R> {378pub struct SolidityFunction<A, R> {
379 pub selector: &'static str,
379 pub name: &'static str,380 pub name: &'static str,
380 pub args: A,381 pub args: A,
381 pub result: R,382 pub result: R,
388 writer: &mut impl fmt::Write,389 writer: &mut impl fmt::Write,
389 tc: &TypeCollector,390 tc: &TypeCollector,
390 ) -> fmt::Result {391 ) -> fmt::Result {
392 writeln!(writer, "\t// Selector: {}", self.selector)?;
391 write!(writer, "\tfunction {}(", self.name)?;393 write!(writer, "\tfunction {}(", self.name)?;
392 self.args.solidity_name(writer, tc)?;394 self.args.solidity_name(writer, tc)?;
393 write!(writer, ")")?;395 write!(writer, ")")?;