Package ethaddr provides tools for working with eth-addresses, for the Go programming language.
The eth-address (also known as an ethereum-address or evm-address) is a 20-byte address — and is commonly used by EVM based networks, as well as other places
ethaddr.Address
is meant to be a replacement for go-ethereum/common.Address
from the official Ethereum golang package.
Here is an example of loading an ethaddr.Address
from a hexadecimal-literal stored in a Go string
:
address, err := ethaddr.ParseString("0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed")
Here is an example of loading an ethaddr.Address
from a hexadecimal-literal stored in a Go []byte
:
var bytes []byte = []byte("0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed")
address, err := ethaddr.Parse(bytes)
Here is an example of loading an ethaddr.Address
from a Go [20]byte
:
address := ethaddr.Something( [20]{0x5a,0xAe,0xb6,0x05,0x3F,0x3E,0x94,0xC9,0xb9,0xA0,0x9f,0x33,0x66,0x94,0x35,0xE7,0xEf,0x1B,0xeA,0xed} )
Here is an example of loading an ethaddr.Address
from a Go *big.Int
:
var bigint *big.Int = // ...
address := ethaddr.BigInt(bigint)
Online documentation, which includes examples, can be found at: http:https://godoc.org/github.com/reiver/go-ethaddr
To import package ethaddr use import
code like the follownig:
import "github.com/reiver/go-ethaddr"
To install package ethaddr do the following:
GOPROXY=direct go get https://github.com/reiver/go-ethaddr
Package ethaddr was written by Charles Iliya Krempeaux