move
move copied to clipboard
[ethereum_abi_annotator] Implement an adapter to convert between Move and ethereum encoding
…reum encoded data and move encoded data.
Motivation
Implement an adapter to allow interacting with Move world with ethereum style api. There are two major components:
- An event annotator. The goal here is to convert the event emitted by MoveVM into log format used in the ethereum ecosystem, including both the encoding and the topic hash.
- A call data annotator. The goal is to convert an eth call data into parameters into invokations into MoveVM's session and also a function to encode the Move value into ethereum's encoding.
The apis needs a lot more tuning on error propagation. This PR just serves as a proof of concept for now.
I'll add an example later on how to use those apis. The final goal is to implement a ERC20 contract with Move.
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
Will add an example demonstrating how the annotator should work.