nim-nitro/nitro/ethaddress.nim

15 lines
364 B
Nim
Raw Normal View History

import pkg/questionable
import pkg/stew/byteutils
export questionable
type EthAddress* = distinct array[20, byte]
proc toArray*(address: EthAddress): array[20, byte] =
array[20, byte](address)
proc parse*(_: type EthAddress, hex: string): ?EthAddress =
EthAddress(array[20, byte].fromHex(hex)).catch.toOption
proc `==`*(a, b: EthAddress): bool {.borrow.}