0g-chain/x/evmutil/spec
Robert Pirtle f4b8bf8f07
feat(evmutil): implement MsgConvertCosmosCoinFromERC20 (#1609)
* first pass at convert cosmos coin -> evm msg

* test ConvertCosmosCoinFromERC20 method

* test message server for MsgConvertCosmosCoinFromERC20

* update spec to include MsgConvertCosmosCoinFromERC20

* update changelog

* add CLI command for convert-cosmos-coin-from-erc20

* add test of removed/re-enable denom for convert
2023-06-02 14:26:51 -07:00
..
01_concepts.md feat(evmutil): implement MsgConvertCosmosCoinFromERC20 (#1609) 2023-06-02 14:26:51 -07:00
02_state.md feat(evmutil): track deployed contracts in state (#1598) 2023-05-24 16:23:33 -07:00
03_messages.md feat(evmutil): implement MsgConvertCosmosCoinFromERC20 (#1609) 2023-06-02 14:26:51 -07:00
04_events.md feat(evmutil): implement MsgConvertCosmosCoinFromERC20 (#1609) 2023-06-02 14:26:51 -07:00
05_params.md feat(evmutil)!: implement MsgConvertCosmosCoinToERC20 (#1603) 2023-05-30 12:00:01 -07:00
README.md update evmutil specs (#1356) 2022-11-03 08:16:16 -07:00

evmutil

Table of Contents

  1. Concepts
  2. State
  3. Messages
  4. Events
  5. Params

Overview

The evmutil module provides additional functionalities on top of the evm module.

EVM akava Usage

evmutil stores additional state data for evm accounts and exposes an EvmBankKeeper that should be used by the x/evm keeper for bank operations. The purpose of the EvmBankKeeper is to allow the usage of the akava balance on the EVM via an account's existing ukava balance. This is needed because the EVM gas token use 18 decimals, and since ukava has 6 decimals, it cannot be used as the EVM gas denom directly.

For additional details on how balance conversions work, see Concepts.

ERC20 Token <> sdk.Coin Conversion

evmutil exposes messages to allow for the conversion of Kava ERC20 tokens and sdk.Coins via a whitelist.

For additional details on how these messages work, see Messages.