0g-chain/x/evmutil/spec
Robert Pirtle 741f1e42ee
feat(evmutil)!: implement MsgConvertCosmosCoinToERC20 (#1603)
* feat(evmutil): implement MsgConvertCosmosCoinToERC20

* docs(evmutil): update module spec

* update changelog

* rename conversion -> conversion_evm_native

* refactor ConvertCosmosCoinToERC20 to keeper method

* add CLI cmd for MsgConvertCosmosCoinToERC20

* updates from pr
2023-05-30 12:00:01 -07:00
..
01_concepts.md feat(evmutil)!: implement MsgConvertCosmosCoinToERC20 (#1603) 2023-05-30 12:00:01 -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 MsgConvertCosmosCoinToERC20 (#1603) 2023-05-30 12:00:01 -07:00
04_events.md update evmutil specs (#1356) 2022-11-03 08:16:16 -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.