 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Constants
- func GetPackingTypes(args []Argument) []interface{}
- func Pack(argSpec []Argument, args ...interface{}) ([]byte, error)
- func PackIntoStruct(argSpec []Argument, st interface{}) ([]byte, error)
- func Packer(abiData, funcName string, args ...string) ([]byte, error)
- func ReadAbiFormulateCall(abiSpecBytes []byte, funcName string, args []string) ([]byte, error)
- func ReadAbiFormulateCallFile(abiLocation, binPath, funcName string, args []string) ([]byte, error)
- func Unpack(argSpec []Argument, data []byte, args ...interface{}) error
- func UnpackIntoStruct(argSpec []Argument, data []byte, st interface{}) error
- type AbiSpec
- type AbiSpecJSON
- type Argument
- type ArgumentJSON
- type EVMAddress
- type EVMBool
- type EVMBytes
- type EVMFixed
- type EVMInt
- type EVMString
- type EVMType
- type EVMUint
- type Event
- type FunctionID
- type FunctionSpec
- type Variable
Constants ¶
      View Source
      
  const ElementSize = 32
    EVM Solidity calls and return values are packed into pieces of 32 bytes, including a bool (wasting 255 out of 256 bits)
      View Source
      
  
const FunctionIDSize = 4
    Variables ¶
This section is empty.
Functions ¶
func GetPackingTypes ¶ added in v0.20.1
func GetPackingTypes(args []Argument) []interface{}
func PackIntoStruct ¶ added in v0.20.1
func ReadAbiFormulateCall ¶ added in v0.20.1
func ReadAbiFormulateCallFile ¶ added in v0.20.1
func UnpackIntoStruct ¶ added in v0.20.1
Types ¶
type AbiSpec ¶ added in v0.20.1
type AbiSpec struct {
	Constructor FunctionSpec
	Fallback    FunctionSpec
	Functions   map[string]FunctionSpec
	Events      map[string]Event
}
    func ReadAbiSpec ¶ added in v0.20.1
func ReadAbiSpecFile ¶ added in v0.20.1
type AbiSpecJSON ¶ added in v0.20.1
type AbiSpecJSON struct {
	Name            string
	Type            string
	Inputs          []ArgumentJSON
	Outputs         []ArgumentJSON
	Constant        bool
	Payable         bool
	StateMutability string
	Anonymous       bool
}
    type Argument ¶ added in v0.20.1
func EVMTypeFromReflect ¶ added in v0.20.1
type ArgumentJSON ¶ added in v0.20.1
type ArgumentJSON struct {
	Name       string
	Type       string
	Components []ArgumentJSON
	Indexed    bool
}
    type EVMAddress ¶ added in v0.20.1
type EVMAddress struct {
}
    func (EVMAddress) GetSignature ¶ added in v0.20.1
func (e EVMAddress) GetSignature() string
type EVMBool ¶ added in v0.20.1
type EVMBool struct {
}
    func (EVMBool) GetSignature ¶ added in v0.20.1
type EVMBytes ¶ added in v0.20.1
type EVMBytes struct {
	M uint64
}
    func (EVMBytes) GetSignature ¶ added in v0.20.1
type EVMFixed ¶ added in v0.20.1
type EVMFixed struct {
	N, M uint64
	// contains filtered or unexported fields
}
    func (EVMFixed) GetSignature ¶ added in v0.20.1
type EVMInt ¶ added in v0.20.1
type EVMInt struct {
	M uint64
}
    func (EVMInt) GetSignature ¶ added in v0.20.1
type EVMString ¶ added in v0.20.1
type EVMString struct {
}
    func (EVMString) GetSignature ¶ added in v0.20.1
type EVMType ¶ added in v0.20.1
type EVMType interface {
	GetSignature() string
	// contains filtered or unexported methods
}
    type EVMUint ¶ added in v0.20.1
type EVMUint struct {
	M uint64
}
    func (EVMUint) GetSignature ¶ added in v0.20.1
type FunctionID ¶
type FunctionID [FunctionIDSize]byte
func GetFunctionID ¶ added in v0.20.1
func GetFunctionID(signature string) (id FunctionID)
func (FunctionID) Bytes ¶ added in v0.20.1
func (fs FunctionID) Bytes() []byte
type FunctionSpec ¶ added in v0.20.1
type FunctionSpec struct {
	FunctionID FunctionID
	Inputs     []Argument
	Outputs    []Argument
}
    func SpecFromFunctionReflect ¶ added in v0.20.1
func SpecFromFunctionReflect(fname string, v reflect.Value, skipIn, skipOut int) *FunctionSpec
func SpecFromStructReflect ¶ added in v0.20.1
SpecFromStructReflect generates a FunctionSpec where the arguments and return values are described a struct. Both args and rets should be set to the return value of reflect.TypeOf() with the respective struct as an argument.
func (*FunctionSpec) SetFunctionID ¶ added in v0.20.1
func (functionSpec *FunctionSpec) SetFunctionID(functionName string)
type Variable ¶ added in v0.20.1
func ReadAndDecodeContractReturn ¶ added in v0.20.1
 Click to show internal directories. 
   Click to hide internal directories.