github.com/ethereum/go-ethereum@v1.16.1/accounts/abi/abigen/testdata/v2/eventchecker.go.txt (about)

     1  // Code generated via abigen V2 - DO NOT EDIT.
     2  // This file is a generated binding and any manual changes will be lost.
     3  
     4  package bindtests
     5  
     6  import (
     7  	"bytes"
     8  	"errors"
     9  	"math/big"
    10  
    11  	"github.com/ethereum/go-ethereum/accounts/abi"
    12  	"github.com/ethereum/go-ethereum/accounts/abi/bind/v2"
    13  	"github.com/ethereum/go-ethereum/common"
    14  	"github.com/ethereum/go-ethereum/core/types"
    15  )
    16  
    17  // Reference imports to suppress errors if they are not otherwise used.
    18  var (
    19  	_ = bytes.Equal
    20  	_ = errors.New
    21  	_ = big.NewInt
    22  	_ = common.Big1
    23  	_ = types.BloomLookup
    24  	_ = abi.ConvertType
    25  )
    26  
    27  // EventCheckerMetaData contains all meta data concerning the EventChecker contract.
    28  var EventCheckerMetaData = bind.MetaData{
    29  	ABI: "[{\"type\":\"event\",\"name\":\"empty\",\"inputs\":[]},{\"type\":\"event\",\"name\":\"indexed\",\"inputs\":[{\"name\":\"addr\",\"type\":\"address\",\"indexed\":true},{\"name\":\"num\",\"type\":\"int256\",\"indexed\":true}]},{\"type\":\"event\",\"name\":\"mixed\",\"inputs\":[{\"name\":\"addr\",\"type\":\"address\",\"indexed\":true},{\"name\":\"num\",\"type\":\"int256\"}]},{\"type\":\"event\",\"name\":\"anonymous\",\"anonymous\":true,\"inputs\":[]},{\"type\":\"event\",\"name\":\"dynamic\",\"inputs\":[{\"name\":\"idxStr\",\"type\":\"string\",\"indexed\":true},{\"name\":\"idxDat\",\"type\":\"bytes\",\"indexed\":true},{\"name\":\"str\",\"type\":\"string\"},{\"name\":\"dat\",\"type\":\"bytes\"}]},{\"type\":\"event\",\"name\":\"unnamed\",\"inputs\":[{\"name\":\"\",\"type\":\"uint256\",\"indexed\":true},{\"name\":\"\",\"type\":\"uint256\",\"indexed\":true}]}]",
    30  	ID:  "253d421f98e29b25315bde79c1251ab27c",
    31  }
    32  
    33  // EventChecker is an auto generated Go binding around an Ethereum contract.
    34  type EventChecker struct {
    35  	abi abi.ABI
    36  }
    37  
    38  // NewEventChecker creates a new instance of EventChecker.
    39  func NewEventChecker() *EventChecker {
    40  	parsed, err := EventCheckerMetaData.ParseABI()
    41  	if err != nil {
    42  		panic(errors.New("invalid ABI: " + err.Error()))
    43  	}
    44  	return &EventChecker{abi: *parsed}
    45  }
    46  
    47  // Instance creates a wrapper for a deployed contract instance at the given address.
    48  // Use this to create the instance object passed to abigen v2 library functions Call, Transact, etc.
    49  func (c *EventChecker) Instance(backend bind.ContractBackend, addr common.Address) *bind.BoundContract {
    50  	return bind.NewBoundContract(addr, c.abi, backend, backend, backend)
    51  }
    52  
    53  // EventCheckerDynamic represents a dynamic event raised by the EventChecker contract.
    54  type EventCheckerDynamic struct {
    55  	IdxStr common.Hash
    56  	IdxDat common.Hash
    57  	Str    string
    58  	Dat    []byte
    59  	Raw    *types.Log // Blockchain specific contextual infos
    60  }
    61  
    62  const EventCheckerDynamicEventName = "dynamic"
    63  
    64  // ContractEventName returns the user-defined event name.
    65  func (EventCheckerDynamic) ContractEventName() string {
    66  	return EventCheckerDynamicEventName
    67  }
    68  
    69  // UnpackDynamicEvent is the Go binding that unpacks the event data emitted
    70  // by contract.
    71  //
    72  // Solidity: event dynamic(string indexed idxStr, bytes indexed idxDat, string str, bytes dat)
    73  func (eventChecker *EventChecker) UnpackDynamicEvent(log *types.Log) (*EventCheckerDynamic, error) {
    74  	event := "dynamic"
    75  	if log.Topics[0] != eventChecker.abi.Events[event].ID {
    76  		return nil, errors.New("event signature mismatch")
    77  	}
    78  	out := new(EventCheckerDynamic)
    79  	if len(log.Data) > 0 {
    80  		if err := eventChecker.abi.UnpackIntoInterface(out, event, log.Data); err != nil {
    81  			return nil, err
    82  		}
    83  	}
    84  	var indexed abi.Arguments
    85  	for _, arg := range eventChecker.abi.Events[event].Inputs {
    86  		if arg.Indexed {
    87  			indexed = append(indexed, arg)
    88  		}
    89  	}
    90  	if err := abi.ParseTopics(out, indexed, log.Topics[1:]); err != nil {
    91  		return nil, err
    92  	}
    93  	out.Raw = log
    94  	return out, nil
    95  }
    96  
    97  // EventCheckerEmpty represents a empty event raised by the EventChecker contract.
    98  type EventCheckerEmpty struct {
    99  	Raw *types.Log // Blockchain specific contextual infos
   100  }
   101  
   102  const EventCheckerEmptyEventName = "empty"
   103  
   104  // ContractEventName returns the user-defined event name.
   105  func (EventCheckerEmpty) ContractEventName() string {
   106  	return EventCheckerEmptyEventName
   107  }
   108  
   109  // UnpackEmptyEvent is the Go binding that unpacks the event data emitted
   110  // by contract.
   111  //
   112  // Solidity: event empty()
   113  func (eventChecker *EventChecker) UnpackEmptyEvent(log *types.Log) (*EventCheckerEmpty, error) {
   114  	event := "empty"
   115  	if log.Topics[0] != eventChecker.abi.Events[event].ID {
   116  		return nil, errors.New("event signature mismatch")
   117  	}
   118  	out := new(EventCheckerEmpty)
   119  	if len(log.Data) > 0 {
   120  		if err := eventChecker.abi.UnpackIntoInterface(out, event, log.Data); err != nil {
   121  			return nil, err
   122  		}
   123  	}
   124  	var indexed abi.Arguments
   125  	for _, arg := range eventChecker.abi.Events[event].Inputs {
   126  		if arg.Indexed {
   127  			indexed = append(indexed, arg)
   128  		}
   129  	}
   130  	if err := abi.ParseTopics(out, indexed, log.Topics[1:]); err != nil {
   131  		return nil, err
   132  	}
   133  	out.Raw = log
   134  	return out, nil
   135  }
   136  
   137  // EventCheckerIndexed represents a indexed event raised by the EventChecker contract.
   138  type EventCheckerIndexed struct {
   139  	Addr common.Address
   140  	Num  *big.Int
   141  	Raw  *types.Log // Blockchain specific contextual infos
   142  }
   143  
   144  const EventCheckerIndexedEventName = "indexed"
   145  
   146  // ContractEventName returns the user-defined event name.
   147  func (EventCheckerIndexed) ContractEventName() string {
   148  	return EventCheckerIndexedEventName
   149  }
   150  
   151  // UnpackIndexedEvent is the Go binding that unpacks the event data emitted
   152  // by contract.
   153  //
   154  // Solidity: event indexed(address indexed addr, int256 indexed num)
   155  func (eventChecker *EventChecker) UnpackIndexedEvent(log *types.Log) (*EventCheckerIndexed, error) {
   156  	event := "indexed"
   157  	if log.Topics[0] != eventChecker.abi.Events[event].ID {
   158  		return nil, errors.New("event signature mismatch")
   159  	}
   160  	out := new(EventCheckerIndexed)
   161  	if len(log.Data) > 0 {
   162  		if err := eventChecker.abi.UnpackIntoInterface(out, event, log.Data); err != nil {
   163  			return nil, err
   164  		}
   165  	}
   166  	var indexed abi.Arguments
   167  	for _, arg := range eventChecker.abi.Events[event].Inputs {
   168  		if arg.Indexed {
   169  			indexed = append(indexed, arg)
   170  		}
   171  	}
   172  	if err := abi.ParseTopics(out, indexed, log.Topics[1:]); err != nil {
   173  		return nil, err
   174  	}
   175  	out.Raw = log
   176  	return out, nil
   177  }
   178  
   179  // EventCheckerMixed represents a mixed event raised by the EventChecker contract.
   180  type EventCheckerMixed struct {
   181  	Addr common.Address
   182  	Num  *big.Int
   183  	Raw  *types.Log // Blockchain specific contextual infos
   184  }
   185  
   186  const EventCheckerMixedEventName = "mixed"
   187  
   188  // ContractEventName returns the user-defined event name.
   189  func (EventCheckerMixed) ContractEventName() string {
   190  	return EventCheckerMixedEventName
   191  }
   192  
   193  // UnpackMixedEvent is the Go binding that unpacks the event data emitted
   194  // by contract.
   195  //
   196  // Solidity: event mixed(address indexed addr, int256 num)
   197  func (eventChecker *EventChecker) UnpackMixedEvent(log *types.Log) (*EventCheckerMixed, error) {
   198  	event := "mixed"
   199  	if log.Topics[0] != eventChecker.abi.Events[event].ID {
   200  		return nil, errors.New("event signature mismatch")
   201  	}
   202  	out := new(EventCheckerMixed)
   203  	if len(log.Data) > 0 {
   204  		if err := eventChecker.abi.UnpackIntoInterface(out, event, log.Data); err != nil {
   205  			return nil, err
   206  		}
   207  	}
   208  	var indexed abi.Arguments
   209  	for _, arg := range eventChecker.abi.Events[event].Inputs {
   210  		if arg.Indexed {
   211  			indexed = append(indexed, arg)
   212  		}
   213  	}
   214  	if err := abi.ParseTopics(out, indexed, log.Topics[1:]); err != nil {
   215  		return nil, err
   216  	}
   217  	out.Raw = log
   218  	return out, nil
   219  }
   220  
   221  // EventCheckerUnnamed represents a unnamed event raised by the EventChecker contract.
   222  type EventCheckerUnnamed struct {
   223  	Arg0 *big.Int
   224  	Arg1 *big.Int
   225  	Raw  *types.Log // Blockchain specific contextual infos
   226  }
   227  
   228  const EventCheckerUnnamedEventName = "unnamed"
   229  
   230  // ContractEventName returns the user-defined event name.
   231  func (EventCheckerUnnamed) ContractEventName() string {
   232  	return EventCheckerUnnamedEventName
   233  }
   234  
   235  // UnpackUnnamedEvent is the Go binding that unpacks the event data emitted
   236  // by contract.
   237  //
   238  // Solidity: event unnamed(uint256 indexed arg0, uint256 indexed arg1)
   239  func (eventChecker *EventChecker) UnpackUnnamedEvent(log *types.Log) (*EventCheckerUnnamed, error) {
   240  	event := "unnamed"
   241  	if log.Topics[0] != eventChecker.abi.Events[event].ID {
   242  		return nil, errors.New("event signature mismatch")
   243  	}
   244  	out := new(EventCheckerUnnamed)
   245  	if len(log.Data) > 0 {
   246  		if err := eventChecker.abi.UnpackIntoInterface(out, event, log.Data); err != nil {
   247  			return nil, err
   248  		}
   249  	}
   250  	var indexed abi.Arguments
   251  	for _, arg := range eventChecker.abi.Events[event].Inputs {
   252  		if arg.Indexed {
   253  			indexed = append(indexed, arg)
   254  		}
   255  	}
   256  	if err := abi.ParseTopics(out, indexed, log.Topics[1:]); err != nil {
   257  		return nil, err
   258  	}
   259  	out.Raw = log
   260  	return out, nil
   261  }