* chore: eth: move & rename input/output encoding functions These are shared functions, so I'm moving them to the utils library. * fix: eth: correctly encode and simplify native input/output encoding When generating eth traces, we encode "native" message inputs/outputs to "solidity ABI" by formatting the inputs/outputs the same way we do in FEVM's "handle_native_method". However, we had quite a few bugs with the implementation: 1. We were right-aligning 64bit values in 256bit words, instead of left-aligning (as we should given that these values are big-endian). 2. The return-value encoding wasn't correctly handling lengths. This patch: 1. Fixes those bugs. 2. Deduplicates the logic (we're doing _basically_ the same thing in both cases). 3. Removes all error paths (these functions can't fail). |
||
|---|---|---|
| .. | ||
| chain.go | ||
| dummy.go | ||
| eth_event.go | ||
| eth_test.go | ||
| eth_trace.go | ||
| eth_utils.go | ||
| eth.go | ||
| gas_test.go | ||
| gas.go | ||
| mpool.go | ||
| multisig.go | ||
| raft.go | ||
| state.go | ||
| sync.go | ||
| txhashmanager.go | ||
| wallet.go | ||