Unavailable. Nobody can download this version any more, with elm or with the Lamdera compiler: github.com/quietgarden/elm-web3 is gone (deleted or private); Software Heritage not asked yet (this run's --swh-calls were used up); no fork with tag 2.0.0 found (5 same-name repos checked); no cached copy. Use another version.
Core opaque types for EVM interaction.
All types are opaque — you can't accidentally pass a TxHash where an Address
is expected. Construction validates format and returns Maybe so invalid input
is a compile-time-visible code path, not a runtime crash.
import Web3.Types as T
-- Validate on input boundary (e.g. from a URL param or user field):
case T.address rawString of
Just addr ->
-- addr : T.Address — safe to use everywhere
Nothing ->
-- show validation error
-- BlockNumber is used by Contract.Call, Block, Fee, and Query:
T.encodeBlockNumber T.Latest == Json.Encode.string "latest"
T.encodeBlockNumber (T.BlockNum 1000) == Json.Encode.int 1000Wei is an alias for Web3.BigInt.BigInt — use Web3.Units.formatEther to
convert to a human-readable string.
A transaction hash (0x + 64 hex chars).
A block number — specific or a tag.
An EVM chain ID.
A raw hex string.
Extract the string value of an Address.
Extract the string value of a TxHash.
Extract the integer value of a ChainId.
Extract the string value of a HexString.
Encode a BlockNumber for JSON-RPC (e.g. for eth_call block parameter).
A validated Ethereum address (0x + 40 hex chars).