feat: decode multisend payload and add calls from it #59
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What I did
add
MultiSend.add_from_calldata
that decodes a multisend payload and adds it as calls.i've also added a test to demonstrate it encodes back to the same calldata.
How I did it
im treating the data as a buffer since the data encoding uses a length prefix. when the buffer is exhausted, we have decoded all calls.
How to verify it
read the encoding spec here https://etherscan.io/address/0x40A2aCCbd92BCA938b02010E17A5b8929b49130D#code
Checklist