web3-solidity-1.0.0.0: Solidity language for Haskell Web3 library.
CopyrightAleksandr Krupenkin 2016-2021
LicenseApache-2.0
Maintainermail@akru.me
Stabilityexperimental
Portabilitynoportable
Safe HaskellNone
LanguageHaskell2010

Data.Solidity.Abi

Description

The Application Binary Interface is the standard way to interact with contracts in the Ethereum ecosystem, both from outside the blockchain and for contract-to-contract interaction. Data is encoded according to its type, as described in this specification. The encoding is not self describing and thus requires a schema in order to decode.

Synopsis

Documentation

class AbiType a where Source #

A class for abi encoding datatype descriptions

Methods

isDynamic :: Proxy a -> Bool Source #

Instances

Instances details
AbiType Bool Source # 
Instance details

Defined in Data.Solidity.Prim.Bool

AbiType ByteString Source # 
Instance details

Defined in Data.Solidity.Prim.Bytes

AbiType Text Source # 
Instance details

Defined in Data.Solidity.Prim.String

AbiType Bytes Source # 
Instance details

Defined in Data.Solidity.Prim.Bytes

AbiType Address Source # 
Instance details

Defined in Data.Solidity.Prim.Address

AbiType [a] Source # 
Instance details

Defined in Data.Solidity.Prim.List

Methods

isDynamic :: Proxy [a] -> Bool Source #

AbiType a => AbiType (OneTuple a) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (OneTuple a) -> Bool Source #

n <= 256 => AbiType (IntN n) Source # 
Instance details

Defined in Data.Solidity.Prim.Int

Methods

isDynamic :: Proxy (IntN n) -> Bool Source #

n <= 256 => AbiType (UIntN n) Source # 
Instance details

Defined in Data.Solidity.Prim.Int

Methods

isDynamic :: Proxy (UIntN n) -> Bool Source #

n <= 32 => AbiType (BytesN n) Source # 
Instance details

Defined in Data.Solidity.Prim.Bytes

Methods

isDynamic :: Proxy (BytesN n) -> Bool Source #

(AbiType a1, AbiType a2) => AbiType (a1, a2) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2) -> Bool Source #

AbiType (ListN n a) Source # 
Instance details

Defined in Data.Solidity.Prim.List

Methods

isDynamic :: Proxy (ListN n a) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3) => AbiType (a1, a2, a3) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3) -> Bool Source #

AbiType a => AbiType (Tagged t a) Source # 
Instance details

Defined in Data.Solidity.Prim.Tagged

Methods

isDynamic :: Proxy (Tagged t a) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4) => AbiType (a1, a2, a3, a4) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5) => AbiType (a1, a2, a3, a4, a5) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6) => AbiType (a1, a2, a3, a4, a5, a6) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7) => AbiType (a1, a2, a3, a4, a5, a6, a7) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11, AbiType a12) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11, AbiType a12, AbiType a13) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11, AbiType a12, AbiType a13, AbiType a14) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11, AbiType a12, AbiType a13, AbiType a14, AbiType a15) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11, AbiType a12, AbiType a13, AbiType a14, AbiType a15, AbiType a16) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11, AbiType a12, AbiType a13, AbiType a14, AbiType a15, AbiType a16, AbiType a17) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11, AbiType a12, AbiType a13, AbiType a14, AbiType a15, AbiType a16, AbiType a17, AbiType a18) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11, AbiType a12, AbiType a13, AbiType a14, AbiType a15, AbiType a16, AbiType a17, AbiType a18, AbiType a19) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19) -> Bool Source #

(AbiType a1, AbiType a2, AbiType a3, AbiType a4, AbiType a5, AbiType a6, AbiType a7, AbiType a8, AbiType a9, AbiType a10, AbiType a11, AbiType a12, AbiType a13, AbiType a14, AbiType a15, AbiType a16, AbiType a17, AbiType a18, AbiType a19, AbiType a20) => AbiType (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

isDynamic :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20) -> Bool Source #

class AbiType a => AbiPut a where Source #

A class for encoding datatypes to their abi encoding

If your compiler has support for the DeriveGeneric and DefaultSignatures language extensions (ghc >= 7.2.1), the abiPut method will have default generic implementations.

To use this option, simply add a deriving Generic clause to your datatype and declare a AbiPut instance for it without giving a definition for abiPut.

Minimal complete definition

Nothing

Methods

abiPut :: Putter a Source #

default abiPut :: (Generic a, Rep a ~ rep, GenericAbiPut rep) => Putter a Source #

Instances

Instances details
AbiPut Bool Source # 
Instance details

Defined in Data.Solidity.Prim.Bool

AbiPut ByteString Source # 
Instance details

Defined in Data.Solidity.Prim.Bytes

AbiPut Text Source # 
Instance details

Defined in Data.Solidity.Prim.String

AbiPut Bytes Source # 
Instance details

Defined in Data.Solidity.Prim.Bytes

AbiPut Address Source # 
Instance details

Defined in Data.Solidity.Prim.Address

AbiPut a => AbiPut [a] Source # 
Instance details

Defined in Data.Solidity.Prim.List

Methods

abiPut :: Putter [a] Source #

AbiPut a => AbiPut (OneTuple a) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (OneTuple a) Source #

n <= 256 => AbiPut (IntN n) Source # 
Instance details

Defined in Data.Solidity.Prim.Int

Methods

abiPut :: Putter (IntN n) Source #

n <= 256 => AbiPut (UIntN n) Source # 
Instance details

Defined in Data.Solidity.Prim.Int

Methods

abiPut :: Putter (UIntN n) Source #

(KnownNat n, n <= 32) => AbiPut (BytesN n) Source # 
Instance details

Defined in Data.Solidity.Prim.Bytes

Methods

abiPut :: Putter (BytesN n) Source #

(AbiPut a1, AbiPut a2) => AbiPut (a1, a2) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2) Source #

AbiPut a => AbiPut (ListN n a) Source # 
Instance details

Defined in Data.Solidity.Prim.List

Methods

abiPut :: Putter (ListN n a) Source #

(AbiPut a1, AbiPut a2, AbiPut a3) => AbiPut (a1, a2, a3) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3) Source #

AbiPut a => AbiPut (Tagged t a) Source # 
Instance details

Defined in Data.Solidity.Prim.Tagged

Methods

abiPut :: Putter (Tagged t a) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4) => AbiPut (a1, a2, a3, a4) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5) => AbiPut (a1, a2, a3, a4, a5) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6) => AbiPut (a1, a2, a3, a4, a5, a6) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7) => AbiPut (a1, a2, a3, a4, a5, a6, a7) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11, AbiPut a12) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11, AbiPut a12, AbiPut a13) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11, AbiPut a12, AbiPut a13, AbiPut a14) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11, AbiPut a12, AbiPut a13, AbiPut a14, AbiPut a15) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11, AbiPut a12, AbiPut a13, AbiPut a14, AbiPut a15, AbiPut a16) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11, AbiPut a12, AbiPut a13, AbiPut a14, AbiPut a15, AbiPut a16, AbiPut a17) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11, AbiPut a12, AbiPut a13, AbiPut a14, AbiPut a15, AbiPut a16, AbiPut a17, AbiPut a18) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11, AbiPut a12, AbiPut a13, AbiPut a14, AbiPut a15, AbiPut a16, AbiPut a17, AbiPut a18, AbiPut a19) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19) Source #

(AbiPut a1, AbiPut a2, AbiPut a3, AbiPut a4, AbiPut a5, AbiPut a6, AbiPut a7, AbiPut a8, AbiPut a9, AbiPut a10, AbiPut a11, AbiPut a12, AbiPut a13, AbiPut a14, AbiPut a15, AbiPut a16, AbiPut a17, AbiPut a18, AbiPut a19, AbiPut a20) => AbiPut (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiPut :: Putter (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20) Source #

class GenericAbiPut a where Source #

A class for encoding generically composed datatypes to their abi encoding

Methods

gAbiPut :: Putter a Source #

Instances

Instances details
AbiData (NP f as) => GenericAbiPut (SOP f '[as]) Source # 
Instance details

Defined in Data.Solidity.Abi.Generic

Methods

gAbiPut :: Putter (SOP f '[as]) Source #

class AbiType a => AbiGet a where Source #

A class for decoding datatypes from their abi encoding

If your compiler has support for the DeriveGeneric and DefaultSignatures language extensions (ghc >= 7.2.1), the abiGet method will have default generic implementations.

To use this option, simply add a deriving Generic clause to your datatype and declare a AbiGet instance for it without giving a definition for abiGet.

Minimal complete definition

Nothing

Methods

abiGet :: Get a Source #

default abiGet :: (Generic a, Rep a ~ rep, GenericAbiGet rep) => Get a Source #

Instances

Instances details
AbiGet Bool Source # 
Instance details

Defined in Data.Solidity.Prim.Bool

Methods

abiGet :: Get Bool Source #

AbiGet ByteString Source # 
Instance details

Defined in Data.Solidity.Prim.Bytes

AbiGet Text Source # 
Instance details

Defined in Data.Solidity.Prim.String

Methods

abiGet :: Get Text Source #

AbiGet Bytes Source # 
Instance details

Defined in Data.Solidity.Prim.Bytes

Methods

abiGet :: Get Bytes Source #

AbiGet Address Source # 
Instance details

Defined in Data.Solidity.Prim.Address

AbiGet a => AbiGet [a] Source # 
Instance details

Defined in Data.Solidity.Prim.List

Methods

abiGet :: Get [a] Source #

AbiGet a => AbiGet (OneTuple a) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (OneTuple a) Source #

n <= 256 => AbiGet (IntN n) Source # 
Instance details

Defined in Data.Solidity.Prim.Int

Methods

abiGet :: Get (IntN n) Source #

n <= 256 => AbiGet (UIntN n) Source # 
Instance details

Defined in Data.Solidity.Prim.Int

Methods

abiGet :: Get (UIntN n) Source #

(KnownNat n, n <= 32) => AbiGet (BytesN n) Source # 
Instance details

Defined in Data.Solidity.Prim.Bytes

Methods

abiGet :: Get (BytesN n) Source #

(AbiGet a1, AbiGet a2) => AbiGet (a1, a2) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2) Source #

(NatWithinBound Int n, KnownNat n, AbiGet a) => AbiGet (ListN n a) Source # 
Instance details

Defined in Data.Solidity.Prim.List

Methods

abiGet :: Get (ListN n a) Source #

(AbiGet a1, AbiGet a2, AbiGet a3) => AbiGet (a1, a2, a3) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3) Source #

AbiGet a => AbiGet (Tagged t a) Source # 
Instance details

Defined in Data.Solidity.Prim.Tagged

Methods

abiGet :: Get (Tagged t a) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4) => AbiGet (a1, a2, a3, a4) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5) => AbiGet (a1, a2, a3, a4, a5) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6) => AbiGet (a1, a2, a3, a4, a5, a6) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7) => AbiGet (a1, a2, a3, a4, a5, a6, a7) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11, AbiGet a12) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11, AbiGet a12, AbiGet a13) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11, AbiGet a12, AbiGet a13, AbiGet a14) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11, AbiGet a12, AbiGet a13, AbiGet a14, AbiGet a15) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11, AbiGet a12, AbiGet a13, AbiGet a14, AbiGet a15, AbiGet a16) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11, AbiGet a12, AbiGet a13, AbiGet a14, AbiGet a15, AbiGet a16, AbiGet a17) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11, AbiGet a12, AbiGet a13, AbiGet a14, AbiGet a15, AbiGet a16, AbiGet a17, AbiGet a18) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11, AbiGet a12, AbiGet a13, AbiGet a14, AbiGet a15, AbiGet a16, AbiGet a17, AbiGet a18, AbiGet a19) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19) Source #

(AbiGet a1, AbiGet a2, AbiGet a3, AbiGet a4, AbiGet a5, AbiGet a6, AbiGet a7, AbiGet a8, AbiGet a9, AbiGet a10, AbiGet a11, AbiGet a12, AbiGet a13, AbiGet a14, AbiGet a15, AbiGet a16, AbiGet a17, AbiGet a18, AbiGet a19, AbiGet a20) => AbiGet (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20) Source # 
Instance details

Defined in Data.Solidity.Prim.Tuple

Methods

abiGet :: Get (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20) Source #

class GenericAbiGet a where Source #

A class for decoding generically composed datatypes from their abi encoding

Methods

gAbiGet :: Get a Source #

Instances

Instances details
(AbiGet a, GenericAbiGet (NP I as)) => GenericAbiGet (NP I (a ': as)) Source # 
Instance details

Defined in Data.Solidity.Abi.Generic

Methods

gAbiGet :: Get (NP I (a ': as)) Source #

GenericAbiGet (NP f ('[] :: [k])) Source # 
Instance details

Defined in Data.Solidity.Abi.Generic

Methods

gAbiGet :: Get (NP f '[]) Source #

GenericAbiGet (NP f as) => GenericAbiGet (SOP f '[as]) Source # 
Instance details

Defined in Data.Solidity.Abi.Generic

Methods

gAbiGet :: Get (SOP f '[as]) Source #