github.com/status-im/status-go@v1.1.0/contracts/resolver/resolver.go (about) 1 // Code generated - DO NOT EDIT. 2 // This file is a generated binding and any manual changes will be lost. 3 4 package resolver 5 6 import ( 7 "math/big" 8 "strings" 9 10 ethereum "github.com/ethereum/go-ethereum" 11 "github.com/ethereum/go-ethereum/accounts/abi" 12 "github.com/ethereum/go-ethereum/accounts/abi/bind" 13 "github.com/ethereum/go-ethereum/common" 14 "github.com/ethereum/go-ethereum/core/types" 15 "github.com/ethereum/go-ethereum/event" 16 ) 17 18 // Reference imports to suppress errors if they are not otherwise used. 19 var ( 20 _ = big.NewInt 21 _ = strings.NewReader 22 _ = ethereum.NotFound 23 _ = bind.Bind 24 _ = common.Big1 25 _ = types.BloomLookup 26 _ = event.NewSubscription 27 ) 28 29 // ABIResolverABI is the input ABI used to generate the binding from. 30 const ABIResolverABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"contentTypes\",\"type\":\"uint256\"}],\"name\":\"ABI\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"contentType\",\"type\":\"uint256\"},{\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setABI\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"contentType\",\"type\":\"uint256\"}],\"name\":\"ABIChanged\",\"type\":\"event\"}]" 31 32 // ABIResolverFuncSigs maps the 4-byte function signature to its string representation. 33 var ABIResolverFuncSigs = map[string]string{ 34 "2203ab56": "ABI(bytes32,uint256)", 35 "623195b0": "setABI(bytes32,uint256,bytes)", 36 "01ffc9a7": "supportsInterface(bytes4)", 37 } 38 39 // ABIResolver is an auto generated Go binding around an Ethereum contract. 40 type ABIResolver struct { 41 ABIResolverCaller // Read-only binding to the contract 42 ABIResolverTransactor // Write-only binding to the contract 43 ABIResolverFilterer // Log filterer for contract events 44 } 45 46 // ABIResolverCaller is an auto generated read-only Go binding around an Ethereum contract. 47 type ABIResolverCaller struct { 48 contract *bind.BoundContract // Generic contract wrapper for the low level calls 49 } 50 51 // ABIResolverTransactor is an auto generated write-only Go binding around an Ethereum contract. 52 type ABIResolverTransactor struct { 53 contract *bind.BoundContract // Generic contract wrapper for the low level calls 54 } 55 56 // ABIResolverFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 57 type ABIResolverFilterer struct { 58 contract *bind.BoundContract // Generic contract wrapper for the low level calls 59 } 60 61 // ABIResolverSession is an auto generated Go binding around an Ethereum contract, 62 // with pre-set call and transact options. 63 type ABIResolverSession struct { 64 Contract *ABIResolver // Generic contract binding to set the session for 65 CallOpts bind.CallOpts // Call options to use throughout this session 66 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 67 } 68 69 // ABIResolverCallerSession is an auto generated read-only Go binding around an Ethereum contract, 70 // with pre-set call options. 71 type ABIResolverCallerSession struct { 72 Contract *ABIResolverCaller // Generic contract caller binding to set the session for 73 CallOpts bind.CallOpts // Call options to use throughout this session 74 } 75 76 // ABIResolverTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 77 // with pre-set transact options. 78 type ABIResolverTransactorSession struct { 79 Contract *ABIResolverTransactor // Generic contract transactor binding to set the session for 80 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 81 } 82 83 // ABIResolverRaw is an auto generated low-level Go binding around an Ethereum contract. 84 type ABIResolverRaw struct { 85 Contract *ABIResolver // Generic contract binding to access the raw methods on 86 } 87 88 // ABIResolverCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 89 type ABIResolverCallerRaw struct { 90 Contract *ABIResolverCaller // Generic read-only contract binding to access the raw methods on 91 } 92 93 // ABIResolverTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 94 type ABIResolverTransactorRaw struct { 95 Contract *ABIResolverTransactor // Generic write-only contract binding to access the raw methods on 96 } 97 98 // NewABIResolver creates a new instance of ABIResolver, bound to a specific deployed contract. 99 func NewABIResolver(address common.Address, backend bind.ContractBackend) (*ABIResolver, error) { 100 contract, err := bindABIResolver(address, backend, backend, backend) 101 if err != nil { 102 return nil, err 103 } 104 return &ABIResolver{ABIResolverCaller: ABIResolverCaller{contract: contract}, ABIResolverTransactor: ABIResolverTransactor{contract: contract}, ABIResolverFilterer: ABIResolverFilterer{contract: contract}}, nil 105 } 106 107 // NewABIResolverCaller creates a new read-only instance of ABIResolver, bound to a specific deployed contract. 108 func NewABIResolverCaller(address common.Address, caller bind.ContractCaller) (*ABIResolverCaller, error) { 109 contract, err := bindABIResolver(address, caller, nil, nil) 110 if err != nil { 111 return nil, err 112 } 113 return &ABIResolverCaller{contract: contract}, nil 114 } 115 116 // NewABIResolverTransactor creates a new write-only instance of ABIResolver, bound to a specific deployed contract. 117 func NewABIResolverTransactor(address common.Address, transactor bind.ContractTransactor) (*ABIResolverTransactor, error) { 118 contract, err := bindABIResolver(address, nil, transactor, nil) 119 if err != nil { 120 return nil, err 121 } 122 return &ABIResolverTransactor{contract: contract}, nil 123 } 124 125 // NewABIResolverFilterer creates a new log filterer instance of ABIResolver, bound to a specific deployed contract. 126 func NewABIResolverFilterer(address common.Address, filterer bind.ContractFilterer) (*ABIResolverFilterer, error) { 127 contract, err := bindABIResolver(address, nil, nil, filterer) 128 if err != nil { 129 return nil, err 130 } 131 return &ABIResolverFilterer{contract: contract}, nil 132 } 133 134 // bindABIResolver binds a generic wrapper to an already deployed contract. 135 func bindABIResolver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 136 parsed, err := abi.JSON(strings.NewReader(ABIResolverABI)) 137 if err != nil { 138 return nil, err 139 } 140 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 141 } 142 143 // Call invokes the (constant) contract method with params as input values and 144 // sets the output to result. The result type might be a single field for simple 145 // returns, a slice of interfaces for anonymous returns and a struct for named 146 // returns. 147 func (_ABIResolver *ABIResolverRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 148 return _ABIResolver.Contract.ABIResolverCaller.contract.Call(opts, result, method, params...) 149 } 150 151 // Transfer initiates a plain transaction to move funds to the contract, calling 152 // its default method if one is available. 153 func (_ABIResolver *ABIResolverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 154 return _ABIResolver.Contract.ABIResolverTransactor.contract.Transfer(opts) 155 } 156 157 // Transact invokes the (paid) contract method with params as input values. 158 func (_ABIResolver *ABIResolverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 159 return _ABIResolver.Contract.ABIResolverTransactor.contract.Transact(opts, method, params...) 160 } 161 162 // Call invokes the (constant) contract method with params as input values and 163 // sets the output to result. The result type might be a single field for simple 164 // returns, a slice of interfaces for anonymous returns and a struct for named 165 // returns. 166 func (_ABIResolver *ABIResolverCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 167 return _ABIResolver.Contract.contract.Call(opts, result, method, params...) 168 } 169 170 // Transfer initiates a plain transaction to move funds to the contract, calling 171 // its default method if one is available. 172 func (_ABIResolver *ABIResolverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 173 return _ABIResolver.Contract.contract.Transfer(opts) 174 } 175 176 // Transact invokes the (paid) contract method with params as input values. 177 func (_ABIResolver *ABIResolverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 178 return _ABIResolver.Contract.contract.Transact(opts, method, params...) 179 } 180 181 // ABI is a free data retrieval call binding the contract method 0x2203ab56. 182 // 183 // Solidity: function ABI(bytes32 node, uint256 contentTypes) view returns(uint256, bytes) 184 func (_ABIResolver *ABIResolverCaller) ABI(opts *bind.CallOpts, node [32]byte, contentTypes *big.Int) (*big.Int, []byte, error) { 185 var out []interface{} 186 err := _ABIResolver.contract.Call(opts, &out, "ABI", node, contentTypes) 187 188 if err != nil { 189 return *new(*big.Int), *new([]byte), err 190 } 191 192 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 193 out1 := *abi.ConvertType(out[1], new([]byte)).(*[]byte) 194 195 return out0, out1, err 196 197 } 198 199 // ABI is a free data retrieval call binding the contract method 0x2203ab56. 200 // 201 // Solidity: function ABI(bytes32 node, uint256 contentTypes) view returns(uint256, bytes) 202 func (_ABIResolver *ABIResolverSession) ABI(node [32]byte, contentTypes *big.Int) (*big.Int, []byte, error) { 203 return _ABIResolver.Contract.ABI(&_ABIResolver.CallOpts, node, contentTypes) 204 } 205 206 // ABI is a free data retrieval call binding the contract method 0x2203ab56. 207 // 208 // Solidity: function ABI(bytes32 node, uint256 contentTypes) view returns(uint256, bytes) 209 func (_ABIResolver *ABIResolverCallerSession) ABI(node [32]byte, contentTypes *big.Int) (*big.Int, []byte, error) { 210 return _ABIResolver.Contract.ABI(&_ABIResolver.CallOpts, node, contentTypes) 211 } 212 213 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 214 // 215 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 216 func (_ABIResolver *ABIResolverCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 217 var out []interface{} 218 err := _ABIResolver.contract.Call(opts, &out, "supportsInterface", interfaceID) 219 220 if err != nil { 221 return *new(bool), err 222 } 223 224 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 225 226 return out0, err 227 228 } 229 230 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 231 // 232 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 233 func (_ABIResolver *ABIResolverSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 234 return _ABIResolver.Contract.SupportsInterface(&_ABIResolver.CallOpts, interfaceID) 235 } 236 237 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 238 // 239 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 240 func (_ABIResolver *ABIResolverCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 241 return _ABIResolver.Contract.SupportsInterface(&_ABIResolver.CallOpts, interfaceID) 242 } 243 244 // SetABI is a paid mutator transaction binding the contract method 0x623195b0. 245 // 246 // Solidity: function setABI(bytes32 node, uint256 contentType, bytes data) returns() 247 func (_ABIResolver *ABIResolverTransactor) SetABI(opts *bind.TransactOpts, node [32]byte, contentType *big.Int, data []byte) (*types.Transaction, error) { 248 return _ABIResolver.contract.Transact(opts, "setABI", node, contentType, data) 249 } 250 251 // SetABI is a paid mutator transaction binding the contract method 0x623195b0. 252 // 253 // Solidity: function setABI(bytes32 node, uint256 contentType, bytes data) returns() 254 func (_ABIResolver *ABIResolverSession) SetABI(node [32]byte, contentType *big.Int, data []byte) (*types.Transaction, error) { 255 return _ABIResolver.Contract.SetABI(&_ABIResolver.TransactOpts, node, contentType, data) 256 } 257 258 // SetABI is a paid mutator transaction binding the contract method 0x623195b0. 259 // 260 // Solidity: function setABI(bytes32 node, uint256 contentType, bytes data) returns() 261 func (_ABIResolver *ABIResolverTransactorSession) SetABI(node [32]byte, contentType *big.Int, data []byte) (*types.Transaction, error) { 262 return _ABIResolver.Contract.SetABI(&_ABIResolver.TransactOpts, node, contentType, data) 263 } 264 265 // ABIResolverABIChangedIterator is returned from FilterABIChanged and is used to iterate over the raw logs and unpacked data for ABIChanged events raised by the ABIResolver contract. 266 type ABIResolverABIChangedIterator struct { 267 Event *ABIResolverABIChanged // Event containing the contract specifics and raw log 268 269 contract *bind.BoundContract // Generic contract to use for unpacking event data 270 event string // Event name to use for unpacking event data 271 272 logs chan types.Log // Log channel receiving the found contract events 273 sub ethereum.Subscription // Subscription for errors, completion and termination 274 done bool // Whether the subscription completed delivering logs 275 fail error // Occurred error to stop iteration 276 } 277 278 // Next advances the iterator to the subsequent event, returning whether there 279 // are any more events found. In case of a retrieval or parsing error, false is 280 // returned and Error() can be queried for the exact failure. 281 func (it *ABIResolverABIChangedIterator) Next() bool { 282 // If the iterator failed, stop iterating 283 if it.fail != nil { 284 return false 285 } 286 // If the iterator completed, deliver directly whatever's available 287 if it.done { 288 select { 289 case log := <-it.logs: 290 it.Event = new(ABIResolverABIChanged) 291 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 292 it.fail = err 293 return false 294 } 295 it.Event.Raw = log 296 return true 297 298 default: 299 return false 300 } 301 } 302 // Iterator still in progress, wait for either a data or an error event 303 select { 304 case log := <-it.logs: 305 it.Event = new(ABIResolverABIChanged) 306 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 307 it.fail = err 308 return false 309 } 310 it.Event.Raw = log 311 return true 312 313 case err := <-it.sub.Err(): 314 it.done = true 315 it.fail = err 316 return it.Next() 317 } 318 } 319 320 // Error returns any retrieval or parsing error occurred during filtering. 321 func (it *ABIResolverABIChangedIterator) Error() error { 322 return it.fail 323 } 324 325 // Close terminates the iteration process, releasing any pending underlying 326 // resources. 327 func (it *ABIResolverABIChangedIterator) Close() error { 328 it.sub.Unsubscribe() 329 return nil 330 } 331 332 // ABIResolverABIChanged represents a ABIChanged event raised by the ABIResolver contract. 333 type ABIResolverABIChanged struct { 334 Node [32]byte 335 ContentType *big.Int 336 Raw types.Log // Blockchain specific contextual infos 337 } 338 339 // FilterABIChanged is a free log retrieval operation binding the contract event 0xaa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3. 340 // 341 // Solidity: event ABIChanged(bytes32 indexed node, uint256 indexed contentType) 342 func (_ABIResolver *ABIResolverFilterer) FilterABIChanged(opts *bind.FilterOpts, node [][32]byte, contentType []*big.Int) (*ABIResolverABIChangedIterator, error) { 343 344 var nodeRule []interface{} 345 for _, nodeItem := range node { 346 nodeRule = append(nodeRule, nodeItem) 347 } 348 var contentTypeRule []interface{} 349 for _, contentTypeItem := range contentType { 350 contentTypeRule = append(contentTypeRule, contentTypeItem) 351 } 352 353 logs, sub, err := _ABIResolver.contract.FilterLogs(opts, "ABIChanged", nodeRule, contentTypeRule) 354 if err != nil { 355 return nil, err 356 } 357 return &ABIResolverABIChangedIterator{contract: _ABIResolver.contract, event: "ABIChanged", logs: logs, sub: sub}, nil 358 } 359 360 // WatchABIChanged is a free log subscription operation binding the contract event 0xaa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3. 361 // 362 // Solidity: event ABIChanged(bytes32 indexed node, uint256 indexed contentType) 363 func (_ABIResolver *ABIResolverFilterer) WatchABIChanged(opts *bind.WatchOpts, sink chan<- *ABIResolverABIChanged, node [][32]byte, contentType []*big.Int) (event.Subscription, error) { 364 365 var nodeRule []interface{} 366 for _, nodeItem := range node { 367 nodeRule = append(nodeRule, nodeItem) 368 } 369 var contentTypeRule []interface{} 370 for _, contentTypeItem := range contentType { 371 contentTypeRule = append(contentTypeRule, contentTypeItem) 372 } 373 374 logs, sub, err := _ABIResolver.contract.WatchLogs(opts, "ABIChanged", nodeRule, contentTypeRule) 375 if err != nil { 376 return nil, err 377 } 378 return event.NewSubscription(func(quit <-chan struct{}) error { 379 defer sub.Unsubscribe() 380 for { 381 select { 382 case log := <-logs: 383 // New log arrived, parse the event and forward to the user 384 event := new(ABIResolverABIChanged) 385 if err := _ABIResolver.contract.UnpackLog(event, "ABIChanged", log); err != nil { 386 return err 387 } 388 event.Raw = log 389 390 select { 391 case sink <- event: 392 case err := <-sub.Err(): 393 return err 394 case <-quit: 395 return nil 396 } 397 case err := <-sub.Err(): 398 return err 399 case <-quit: 400 return nil 401 } 402 } 403 }), nil 404 } 405 406 // ParseABIChanged is a log parse operation binding the contract event 0xaa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3. 407 // 408 // Solidity: event ABIChanged(bytes32 indexed node, uint256 indexed contentType) 409 func (_ABIResolver *ABIResolverFilterer) ParseABIChanged(log types.Log) (*ABIResolverABIChanged, error) { 410 event := new(ABIResolverABIChanged) 411 if err := _ABIResolver.contract.UnpackLog(event, "ABIChanged", log); err != nil { 412 return nil, err 413 } 414 event.Raw = log 415 return event, nil 416 } 417 418 // AddrResolverABI is the input ABI used to generate the binding from. 419 const AddrResolverABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"addr\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"coinType\",\"type\":\"uint256\"},{\"name\":\"a\",\"type\":\"bytes\"}],\"name\":\"setAddr\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"a\",\"type\":\"address\"}],\"name\":\"setAddr\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"coinType\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"a\",\"type\":\"address\"}],\"name\":\"AddrChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"coinType\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newAddress\",\"type\":\"bytes\"}],\"name\":\"AddressChanged\",\"type\":\"event\"}]" 420 421 // AddrResolverFuncSigs maps the 4-byte function signature to its string representation. 422 var AddrResolverFuncSigs = map[string]string{ 423 "3b3b57de": "addr(bytes32)", 424 "f1cb7e06": "addr(bytes32,uint256)", 425 "d5fa2b00": "setAddr(bytes32,address)", 426 "8b95dd71": "setAddr(bytes32,uint256,bytes)", 427 "01ffc9a7": "supportsInterface(bytes4)", 428 } 429 430 // AddrResolver is an auto generated Go binding around an Ethereum contract. 431 type AddrResolver struct { 432 AddrResolverCaller // Read-only binding to the contract 433 AddrResolverTransactor // Write-only binding to the contract 434 AddrResolverFilterer // Log filterer for contract events 435 } 436 437 // AddrResolverCaller is an auto generated read-only Go binding around an Ethereum contract. 438 type AddrResolverCaller struct { 439 contract *bind.BoundContract // Generic contract wrapper for the low level calls 440 } 441 442 // AddrResolverTransactor is an auto generated write-only Go binding around an Ethereum contract. 443 type AddrResolverTransactor struct { 444 contract *bind.BoundContract // Generic contract wrapper for the low level calls 445 } 446 447 // AddrResolverFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 448 type AddrResolverFilterer struct { 449 contract *bind.BoundContract // Generic contract wrapper for the low level calls 450 } 451 452 // AddrResolverSession is an auto generated Go binding around an Ethereum contract, 453 // with pre-set call and transact options. 454 type AddrResolverSession struct { 455 Contract *AddrResolver // Generic contract binding to set the session for 456 CallOpts bind.CallOpts // Call options to use throughout this session 457 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 458 } 459 460 // AddrResolverCallerSession is an auto generated read-only Go binding around an Ethereum contract, 461 // with pre-set call options. 462 type AddrResolverCallerSession struct { 463 Contract *AddrResolverCaller // Generic contract caller binding to set the session for 464 CallOpts bind.CallOpts // Call options to use throughout this session 465 } 466 467 // AddrResolverTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 468 // with pre-set transact options. 469 type AddrResolverTransactorSession struct { 470 Contract *AddrResolverTransactor // Generic contract transactor binding to set the session for 471 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 472 } 473 474 // AddrResolverRaw is an auto generated low-level Go binding around an Ethereum contract. 475 type AddrResolverRaw struct { 476 Contract *AddrResolver // Generic contract binding to access the raw methods on 477 } 478 479 // AddrResolverCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 480 type AddrResolverCallerRaw struct { 481 Contract *AddrResolverCaller // Generic read-only contract binding to access the raw methods on 482 } 483 484 // AddrResolverTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 485 type AddrResolverTransactorRaw struct { 486 Contract *AddrResolverTransactor // Generic write-only contract binding to access the raw methods on 487 } 488 489 // NewAddrResolver creates a new instance of AddrResolver, bound to a specific deployed contract. 490 func NewAddrResolver(address common.Address, backend bind.ContractBackend) (*AddrResolver, error) { 491 contract, err := bindAddrResolver(address, backend, backend, backend) 492 if err != nil { 493 return nil, err 494 } 495 return &AddrResolver{AddrResolverCaller: AddrResolverCaller{contract: contract}, AddrResolverTransactor: AddrResolverTransactor{contract: contract}, AddrResolverFilterer: AddrResolverFilterer{contract: contract}}, nil 496 } 497 498 // NewAddrResolverCaller creates a new read-only instance of AddrResolver, bound to a specific deployed contract. 499 func NewAddrResolverCaller(address common.Address, caller bind.ContractCaller) (*AddrResolverCaller, error) { 500 contract, err := bindAddrResolver(address, caller, nil, nil) 501 if err != nil { 502 return nil, err 503 } 504 return &AddrResolverCaller{contract: contract}, nil 505 } 506 507 // NewAddrResolverTransactor creates a new write-only instance of AddrResolver, bound to a specific deployed contract. 508 func NewAddrResolverTransactor(address common.Address, transactor bind.ContractTransactor) (*AddrResolverTransactor, error) { 509 contract, err := bindAddrResolver(address, nil, transactor, nil) 510 if err != nil { 511 return nil, err 512 } 513 return &AddrResolverTransactor{contract: contract}, nil 514 } 515 516 // NewAddrResolverFilterer creates a new log filterer instance of AddrResolver, bound to a specific deployed contract. 517 func NewAddrResolverFilterer(address common.Address, filterer bind.ContractFilterer) (*AddrResolverFilterer, error) { 518 contract, err := bindAddrResolver(address, nil, nil, filterer) 519 if err != nil { 520 return nil, err 521 } 522 return &AddrResolverFilterer{contract: contract}, nil 523 } 524 525 // bindAddrResolver binds a generic wrapper to an already deployed contract. 526 func bindAddrResolver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 527 parsed, err := abi.JSON(strings.NewReader(AddrResolverABI)) 528 if err != nil { 529 return nil, err 530 } 531 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 532 } 533 534 // Call invokes the (constant) contract method with params as input values and 535 // sets the output to result. The result type might be a single field for simple 536 // returns, a slice of interfaces for anonymous returns and a struct for named 537 // returns. 538 func (_AddrResolver *AddrResolverRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 539 return _AddrResolver.Contract.AddrResolverCaller.contract.Call(opts, result, method, params...) 540 } 541 542 // Transfer initiates a plain transaction to move funds to the contract, calling 543 // its default method if one is available. 544 func (_AddrResolver *AddrResolverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 545 return _AddrResolver.Contract.AddrResolverTransactor.contract.Transfer(opts) 546 } 547 548 // Transact invokes the (paid) contract method with params as input values. 549 func (_AddrResolver *AddrResolverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 550 return _AddrResolver.Contract.AddrResolverTransactor.contract.Transact(opts, method, params...) 551 } 552 553 // Call invokes the (constant) contract method with params as input values and 554 // sets the output to result. The result type might be a single field for simple 555 // returns, a slice of interfaces for anonymous returns and a struct for named 556 // returns. 557 func (_AddrResolver *AddrResolverCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 558 return _AddrResolver.Contract.contract.Call(opts, result, method, params...) 559 } 560 561 // Transfer initiates a plain transaction to move funds to the contract, calling 562 // its default method if one is available. 563 func (_AddrResolver *AddrResolverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 564 return _AddrResolver.Contract.contract.Transfer(opts) 565 } 566 567 // Transact invokes the (paid) contract method with params as input values. 568 func (_AddrResolver *AddrResolverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 569 return _AddrResolver.Contract.contract.Transact(opts, method, params...) 570 } 571 572 // Addr is a free data retrieval call binding the contract method 0x3b3b57de. 573 // 574 // Solidity: function addr(bytes32 node) view returns(address) 575 func (_AddrResolver *AddrResolverCaller) Addr(opts *bind.CallOpts, node [32]byte) (common.Address, error) { 576 var out []interface{} 577 err := _AddrResolver.contract.Call(opts, &out, "addr", node) 578 579 if err != nil { 580 return *new(common.Address), err 581 } 582 583 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 584 585 return out0, err 586 587 } 588 589 // Addr is a free data retrieval call binding the contract method 0x3b3b57de. 590 // 591 // Solidity: function addr(bytes32 node) view returns(address) 592 func (_AddrResolver *AddrResolverSession) Addr(node [32]byte) (common.Address, error) { 593 return _AddrResolver.Contract.Addr(&_AddrResolver.CallOpts, node) 594 } 595 596 // Addr is a free data retrieval call binding the contract method 0x3b3b57de. 597 // 598 // Solidity: function addr(bytes32 node) view returns(address) 599 func (_AddrResolver *AddrResolverCallerSession) Addr(node [32]byte) (common.Address, error) { 600 return _AddrResolver.Contract.Addr(&_AddrResolver.CallOpts, node) 601 } 602 603 // Addr0 is a free data retrieval call binding the contract method 0xf1cb7e06. 604 // 605 // Solidity: function addr(bytes32 node, uint256 coinType) view returns(bytes) 606 func (_AddrResolver *AddrResolverCaller) Addr0(opts *bind.CallOpts, node [32]byte, coinType *big.Int) ([]byte, error) { 607 var out []interface{} 608 err := _AddrResolver.contract.Call(opts, &out, "addr0", node, coinType) 609 610 if err != nil { 611 return *new([]byte), err 612 } 613 614 out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) 615 616 return out0, err 617 618 } 619 620 // Addr0 is a free data retrieval call binding the contract method 0xf1cb7e06. 621 // 622 // Solidity: function addr(bytes32 node, uint256 coinType) view returns(bytes) 623 func (_AddrResolver *AddrResolverSession) Addr0(node [32]byte, coinType *big.Int) ([]byte, error) { 624 return _AddrResolver.Contract.Addr0(&_AddrResolver.CallOpts, node, coinType) 625 } 626 627 // Addr0 is a free data retrieval call binding the contract method 0xf1cb7e06. 628 // 629 // Solidity: function addr(bytes32 node, uint256 coinType) view returns(bytes) 630 func (_AddrResolver *AddrResolverCallerSession) Addr0(node [32]byte, coinType *big.Int) ([]byte, error) { 631 return _AddrResolver.Contract.Addr0(&_AddrResolver.CallOpts, node, coinType) 632 } 633 634 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 635 // 636 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 637 func (_AddrResolver *AddrResolverCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 638 var out []interface{} 639 err := _AddrResolver.contract.Call(opts, &out, "supportsInterface", interfaceID) 640 641 if err != nil { 642 return *new(bool), err 643 } 644 645 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 646 647 return out0, err 648 649 } 650 651 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 652 // 653 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 654 func (_AddrResolver *AddrResolverSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 655 return _AddrResolver.Contract.SupportsInterface(&_AddrResolver.CallOpts, interfaceID) 656 } 657 658 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 659 // 660 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 661 func (_AddrResolver *AddrResolverCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 662 return _AddrResolver.Contract.SupportsInterface(&_AddrResolver.CallOpts, interfaceID) 663 } 664 665 // SetAddr is a paid mutator transaction binding the contract method 0x8b95dd71. 666 // 667 // Solidity: function setAddr(bytes32 node, uint256 coinType, bytes a) returns() 668 func (_AddrResolver *AddrResolverTransactor) SetAddr(opts *bind.TransactOpts, node [32]byte, coinType *big.Int, a []byte) (*types.Transaction, error) { 669 return _AddrResolver.contract.Transact(opts, "setAddr", node, coinType, a) 670 } 671 672 // SetAddr is a paid mutator transaction binding the contract method 0x8b95dd71. 673 // 674 // Solidity: function setAddr(bytes32 node, uint256 coinType, bytes a) returns() 675 func (_AddrResolver *AddrResolverSession) SetAddr(node [32]byte, coinType *big.Int, a []byte) (*types.Transaction, error) { 676 return _AddrResolver.Contract.SetAddr(&_AddrResolver.TransactOpts, node, coinType, a) 677 } 678 679 // SetAddr is a paid mutator transaction binding the contract method 0x8b95dd71. 680 // 681 // Solidity: function setAddr(bytes32 node, uint256 coinType, bytes a) returns() 682 func (_AddrResolver *AddrResolverTransactorSession) SetAddr(node [32]byte, coinType *big.Int, a []byte) (*types.Transaction, error) { 683 return _AddrResolver.Contract.SetAddr(&_AddrResolver.TransactOpts, node, coinType, a) 684 } 685 686 // SetAddr0 is a paid mutator transaction binding the contract method 0xd5fa2b00. 687 // 688 // Solidity: function setAddr(bytes32 node, address a) returns() 689 func (_AddrResolver *AddrResolverTransactor) SetAddr0(opts *bind.TransactOpts, node [32]byte, a common.Address) (*types.Transaction, error) { 690 return _AddrResolver.contract.Transact(opts, "setAddr0", node, a) 691 } 692 693 // SetAddr0 is a paid mutator transaction binding the contract method 0xd5fa2b00. 694 // 695 // Solidity: function setAddr(bytes32 node, address a) returns() 696 func (_AddrResolver *AddrResolverSession) SetAddr0(node [32]byte, a common.Address) (*types.Transaction, error) { 697 return _AddrResolver.Contract.SetAddr0(&_AddrResolver.TransactOpts, node, a) 698 } 699 700 // SetAddr0 is a paid mutator transaction binding the contract method 0xd5fa2b00. 701 // 702 // Solidity: function setAddr(bytes32 node, address a) returns() 703 func (_AddrResolver *AddrResolverTransactorSession) SetAddr0(node [32]byte, a common.Address) (*types.Transaction, error) { 704 return _AddrResolver.Contract.SetAddr0(&_AddrResolver.TransactOpts, node, a) 705 } 706 707 // AddrResolverAddrChangedIterator is returned from FilterAddrChanged and is used to iterate over the raw logs and unpacked data for AddrChanged events raised by the AddrResolver contract. 708 type AddrResolverAddrChangedIterator struct { 709 Event *AddrResolverAddrChanged // Event containing the contract specifics and raw log 710 711 contract *bind.BoundContract // Generic contract to use for unpacking event data 712 event string // Event name to use for unpacking event data 713 714 logs chan types.Log // Log channel receiving the found contract events 715 sub ethereum.Subscription // Subscription for errors, completion and termination 716 done bool // Whether the subscription completed delivering logs 717 fail error // Occurred error to stop iteration 718 } 719 720 // Next advances the iterator to the subsequent event, returning whether there 721 // are any more events found. In case of a retrieval or parsing error, false is 722 // returned and Error() can be queried for the exact failure. 723 func (it *AddrResolverAddrChangedIterator) Next() bool { 724 // If the iterator failed, stop iterating 725 if it.fail != nil { 726 return false 727 } 728 // If the iterator completed, deliver directly whatever's available 729 if it.done { 730 select { 731 case log := <-it.logs: 732 it.Event = new(AddrResolverAddrChanged) 733 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 734 it.fail = err 735 return false 736 } 737 it.Event.Raw = log 738 return true 739 740 default: 741 return false 742 } 743 } 744 // Iterator still in progress, wait for either a data or an error event 745 select { 746 case log := <-it.logs: 747 it.Event = new(AddrResolverAddrChanged) 748 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 749 it.fail = err 750 return false 751 } 752 it.Event.Raw = log 753 return true 754 755 case err := <-it.sub.Err(): 756 it.done = true 757 it.fail = err 758 return it.Next() 759 } 760 } 761 762 // Error returns any retrieval or parsing error occurred during filtering. 763 func (it *AddrResolverAddrChangedIterator) Error() error { 764 return it.fail 765 } 766 767 // Close terminates the iteration process, releasing any pending underlying 768 // resources. 769 func (it *AddrResolverAddrChangedIterator) Close() error { 770 it.sub.Unsubscribe() 771 return nil 772 } 773 774 // AddrResolverAddrChanged represents a AddrChanged event raised by the AddrResolver contract. 775 type AddrResolverAddrChanged struct { 776 Node [32]byte 777 A common.Address 778 Raw types.Log // Blockchain specific contextual infos 779 } 780 781 // FilterAddrChanged is a free log retrieval operation binding the contract event 0x52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2. 782 // 783 // Solidity: event AddrChanged(bytes32 indexed node, address a) 784 func (_AddrResolver *AddrResolverFilterer) FilterAddrChanged(opts *bind.FilterOpts, node [][32]byte) (*AddrResolverAddrChangedIterator, error) { 785 786 var nodeRule []interface{} 787 for _, nodeItem := range node { 788 nodeRule = append(nodeRule, nodeItem) 789 } 790 791 logs, sub, err := _AddrResolver.contract.FilterLogs(opts, "AddrChanged", nodeRule) 792 if err != nil { 793 return nil, err 794 } 795 return &AddrResolverAddrChangedIterator{contract: _AddrResolver.contract, event: "AddrChanged", logs: logs, sub: sub}, nil 796 } 797 798 // WatchAddrChanged is a free log subscription operation binding the contract event 0x52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2. 799 // 800 // Solidity: event AddrChanged(bytes32 indexed node, address a) 801 func (_AddrResolver *AddrResolverFilterer) WatchAddrChanged(opts *bind.WatchOpts, sink chan<- *AddrResolverAddrChanged, node [][32]byte) (event.Subscription, error) { 802 803 var nodeRule []interface{} 804 for _, nodeItem := range node { 805 nodeRule = append(nodeRule, nodeItem) 806 } 807 808 logs, sub, err := _AddrResolver.contract.WatchLogs(opts, "AddrChanged", nodeRule) 809 if err != nil { 810 return nil, err 811 } 812 return event.NewSubscription(func(quit <-chan struct{}) error { 813 defer sub.Unsubscribe() 814 for { 815 select { 816 case log := <-logs: 817 // New log arrived, parse the event and forward to the user 818 event := new(AddrResolverAddrChanged) 819 if err := _AddrResolver.contract.UnpackLog(event, "AddrChanged", log); err != nil { 820 return err 821 } 822 event.Raw = log 823 824 select { 825 case sink <- event: 826 case err := <-sub.Err(): 827 return err 828 case <-quit: 829 return nil 830 } 831 case err := <-sub.Err(): 832 return err 833 case <-quit: 834 return nil 835 } 836 } 837 }), nil 838 } 839 840 // ParseAddrChanged is a log parse operation binding the contract event 0x52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2. 841 // 842 // Solidity: event AddrChanged(bytes32 indexed node, address a) 843 func (_AddrResolver *AddrResolverFilterer) ParseAddrChanged(log types.Log) (*AddrResolverAddrChanged, error) { 844 event := new(AddrResolverAddrChanged) 845 if err := _AddrResolver.contract.UnpackLog(event, "AddrChanged", log); err != nil { 846 return nil, err 847 } 848 event.Raw = log 849 return event, nil 850 } 851 852 // AddrResolverAddressChangedIterator is returned from FilterAddressChanged and is used to iterate over the raw logs and unpacked data for AddressChanged events raised by the AddrResolver contract. 853 type AddrResolverAddressChangedIterator struct { 854 Event *AddrResolverAddressChanged // Event containing the contract specifics and raw log 855 856 contract *bind.BoundContract // Generic contract to use for unpacking event data 857 event string // Event name to use for unpacking event data 858 859 logs chan types.Log // Log channel receiving the found contract events 860 sub ethereum.Subscription // Subscription for errors, completion and termination 861 done bool // Whether the subscription completed delivering logs 862 fail error // Occurred error to stop iteration 863 } 864 865 // Next advances the iterator to the subsequent event, returning whether there 866 // are any more events found. In case of a retrieval or parsing error, false is 867 // returned and Error() can be queried for the exact failure. 868 func (it *AddrResolverAddressChangedIterator) Next() bool { 869 // If the iterator failed, stop iterating 870 if it.fail != nil { 871 return false 872 } 873 // If the iterator completed, deliver directly whatever's available 874 if it.done { 875 select { 876 case log := <-it.logs: 877 it.Event = new(AddrResolverAddressChanged) 878 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 879 it.fail = err 880 return false 881 } 882 it.Event.Raw = log 883 return true 884 885 default: 886 return false 887 } 888 } 889 // Iterator still in progress, wait for either a data or an error event 890 select { 891 case log := <-it.logs: 892 it.Event = new(AddrResolverAddressChanged) 893 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 894 it.fail = err 895 return false 896 } 897 it.Event.Raw = log 898 return true 899 900 case err := <-it.sub.Err(): 901 it.done = true 902 it.fail = err 903 return it.Next() 904 } 905 } 906 907 // Error returns any retrieval or parsing error occurred during filtering. 908 func (it *AddrResolverAddressChangedIterator) Error() error { 909 return it.fail 910 } 911 912 // Close terminates the iteration process, releasing any pending underlying 913 // resources. 914 func (it *AddrResolverAddressChangedIterator) Close() error { 915 it.sub.Unsubscribe() 916 return nil 917 } 918 919 // AddrResolverAddressChanged represents a AddressChanged event raised by the AddrResolver contract. 920 type AddrResolverAddressChanged struct { 921 Node [32]byte 922 CoinType *big.Int 923 NewAddress []byte 924 Raw types.Log // Blockchain specific contextual infos 925 } 926 927 // FilterAddressChanged is a free log retrieval operation binding the contract event 0x65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752. 928 // 929 // Solidity: event AddressChanged(bytes32 indexed node, uint256 coinType, bytes newAddress) 930 func (_AddrResolver *AddrResolverFilterer) FilterAddressChanged(opts *bind.FilterOpts, node [][32]byte) (*AddrResolverAddressChangedIterator, error) { 931 932 var nodeRule []interface{} 933 for _, nodeItem := range node { 934 nodeRule = append(nodeRule, nodeItem) 935 } 936 937 logs, sub, err := _AddrResolver.contract.FilterLogs(opts, "AddressChanged", nodeRule) 938 if err != nil { 939 return nil, err 940 } 941 return &AddrResolverAddressChangedIterator{contract: _AddrResolver.contract, event: "AddressChanged", logs: logs, sub: sub}, nil 942 } 943 944 // WatchAddressChanged is a free log subscription operation binding the contract event 0x65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752. 945 // 946 // Solidity: event AddressChanged(bytes32 indexed node, uint256 coinType, bytes newAddress) 947 func (_AddrResolver *AddrResolverFilterer) WatchAddressChanged(opts *bind.WatchOpts, sink chan<- *AddrResolverAddressChanged, node [][32]byte) (event.Subscription, error) { 948 949 var nodeRule []interface{} 950 for _, nodeItem := range node { 951 nodeRule = append(nodeRule, nodeItem) 952 } 953 954 logs, sub, err := _AddrResolver.contract.WatchLogs(opts, "AddressChanged", nodeRule) 955 if err != nil { 956 return nil, err 957 } 958 return event.NewSubscription(func(quit <-chan struct{}) error { 959 defer sub.Unsubscribe() 960 for { 961 select { 962 case log := <-logs: 963 // New log arrived, parse the event and forward to the user 964 event := new(AddrResolverAddressChanged) 965 if err := _AddrResolver.contract.UnpackLog(event, "AddressChanged", log); err != nil { 966 return err 967 } 968 event.Raw = log 969 970 select { 971 case sink <- event: 972 case err := <-sub.Err(): 973 return err 974 case <-quit: 975 return nil 976 } 977 case err := <-sub.Err(): 978 return err 979 case <-quit: 980 return nil 981 } 982 } 983 }), nil 984 } 985 986 // ParseAddressChanged is a log parse operation binding the contract event 0x65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752. 987 // 988 // Solidity: event AddressChanged(bytes32 indexed node, uint256 coinType, bytes newAddress) 989 func (_AddrResolver *AddrResolverFilterer) ParseAddressChanged(log types.Log) (*AddrResolverAddressChanged, error) { 990 event := new(AddrResolverAddressChanged) 991 if err := _AddrResolver.contract.UnpackLog(event, "AddressChanged", log); err != nil { 992 return nil, err 993 } 994 event.Raw = log 995 return event, nil 996 } 997 998 // ContentHashResolverABI is the input ABI used to generate the binding from. 999 const ContentHashResolverABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"setContenthash\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"contenthash\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"ContenthashChanged\",\"type\":\"event\"}]" 1000 1001 // ContentHashResolverFuncSigs maps the 4-byte function signature to its string representation. 1002 var ContentHashResolverFuncSigs = map[string]string{ 1003 "bc1c58d1": "contenthash(bytes32)", 1004 "304e6ade": "setContenthash(bytes32,bytes)", 1005 "01ffc9a7": "supportsInterface(bytes4)", 1006 } 1007 1008 // ContentHashResolver is an auto generated Go binding around an Ethereum contract. 1009 type ContentHashResolver struct { 1010 ContentHashResolverCaller // Read-only binding to the contract 1011 ContentHashResolverTransactor // Write-only binding to the contract 1012 ContentHashResolverFilterer // Log filterer for contract events 1013 } 1014 1015 // ContentHashResolverCaller is an auto generated read-only Go binding around an Ethereum contract. 1016 type ContentHashResolverCaller struct { 1017 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1018 } 1019 1020 // ContentHashResolverTransactor is an auto generated write-only Go binding around an Ethereum contract. 1021 type ContentHashResolverTransactor struct { 1022 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1023 } 1024 1025 // ContentHashResolverFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 1026 type ContentHashResolverFilterer struct { 1027 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1028 } 1029 1030 // ContentHashResolverSession is an auto generated Go binding around an Ethereum contract, 1031 // with pre-set call and transact options. 1032 type ContentHashResolverSession struct { 1033 Contract *ContentHashResolver // Generic contract binding to set the session for 1034 CallOpts bind.CallOpts // Call options to use throughout this session 1035 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1036 } 1037 1038 // ContentHashResolverCallerSession is an auto generated read-only Go binding around an Ethereum contract, 1039 // with pre-set call options. 1040 type ContentHashResolverCallerSession struct { 1041 Contract *ContentHashResolverCaller // Generic contract caller binding to set the session for 1042 CallOpts bind.CallOpts // Call options to use throughout this session 1043 } 1044 1045 // ContentHashResolverTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 1046 // with pre-set transact options. 1047 type ContentHashResolverTransactorSession struct { 1048 Contract *ContentHashResolverTransactor // Generic contract transactor binding to set the session for 1049 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1050 } 1051 1052 // ContentHashResolverRaw is an auto generated low-level Go binding around an Ethereum contract. 1053 type ContentHashResolverRaw struct { 1054 Contract *ContentHashResolver // Generic contract binding to access the raw methods on 1055 } 1056 1057 // ContentHashResolverCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 1058 type ContentHashResolverCallerRaw struct { 1059 Contract *ContentHashResolverCaller // Generic read-only contract binding to access the raw methods on 1060 } 1061 1062 // ContentHashResolverTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 1063 type ContentHashResolverTransactorRaw struct { 1064 Contract *ContentHashResolverTransactor // Generic write-only contract binding to access the raw methods on 1065 } 1066 1067 // NewContentHashResolver creates a new instance of ContentHashResolver, bound to a specific deployed contract. 1068 func NewContentHashResolver(address common.Address, backend bind.ContractBackend) (*ContentHashResolver, error) { 1069 contract, err := bindContentHashResolver(address, backend, backend, backend) 1070 if err != nil { 1071 return nil, err 1072 } 1073 return &ContentHashResolver{ContentHashResolverCaller: ContentHashResolverCaller{contract: contract}, ContentHashResolverTransactor: ContentHashResolverTransactor{contract: contract}, ContentHashResolverFilterer: ContentHashResolverFilterer{contract: contract}}, nil 1074 } 1075 1076 // NewContentHashResolverCaller creates a new read-only instance of ContentHashResolver, bound to a specific deployed contract. 1077 func NewContentHashResolverCaller(address common.Address, caller bind.ContractCaller) (*ContentHashResolverCaller, error) { 1078 contract, err := bindContentHashResolver(address, caller, nil, nil) 1079 if err != nil { 1080 return nil, err 1081 } 1082 return &ContentHashResolverCaller{contract: contract}, nil 1083 } 1084 1085 // NewContentHashResolverTransactor creates a new write-only instance of ContentHashResolver, bound to a specific deployed contract. 1086 func NewContentHashResolverTransactor(address common.Address, transactor bind.ContractTransactor) (*ContentHashResolverTransactor, error) { 1087 contract, err := bindContentHashResolver(address, nil, transactor, nil) 1088 if err != nil { 1089 return nil, err 1090 } 1091 return &ContentHashResolverTransactor{contract: contract}, nil 1092 } 1093 1094 // NewContentHashResolverFilterer creates a new log filterer instance of ContentHashResolver, bound to a specific deployed contract. 1095 func NewContentHashResolverFilterer(address common.Address, filterer bind.ContractFilterer) (*ContentHashResolverFilterer, error) { 1096 contract, err := bindContentHashResolver(address, nil, nil, filterer) 1097 if err != nil { 1098 return nil, err 1099 } 1100 return &ContentHashResolverFilterer{contract: contract}, nil 1101 } 1102 1103 // bindContentHashResolver binds a generic wrapper to an already deployed contract. 1104 func bindContentHashResolver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 1105 parsed, err := abi.JSON(strings.NewReader(ContentHashResolverABI)) 1106 if err != nil { 1107 return nil, err 1108 } 1109 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 1110 } 1111 1112 // Call invokes the (constant) contract method with params as input values and 1113 // sets the output to result. The result type might be a single field for simple 1114 // returns, a slice of interfaces for anonymous returns and a struct for named 1115 // returns. 1116 func (_ContentHashResolver *ContentHashResolverRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 1117 return _ContentHashResolver.Contract.ContentHashResolverCaller.contract.Call(opts, result, method, params...) 1118 } 1119 1120 // Transfer initiates a plain transaction to move funds to the contract, calling 1121 // its default method if one is available. 1122 func (_ContentHashResolver *ContentHashResolverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1123 return _ContentHashResolver.Contract.ContentHashResolverTransactor.contract.Transfer(opts) 1124 } 1125 1126 // Transact invokes the (paid) contract method with params as input values. 1127 func (_ContentHashResolver *ContentHashResolverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1128 return _ContentHashResolver.Contract.ContentHashResolverTransactor.contract.Transact(opts, method, params...) 1129 } 1130 1131 // Call invokes the (constant) contract method with params as input values and 1132 // sets the output to result. The result type might be a single field for simple 1133 // returns, a slice of interfaces for anonymous returns and a struct for named 1134 // returns. 1135 func (_ContentHashResolver *ContentHashResolverCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 1136 return _ContentHashResolver.Contract.contract.Call(opts, result, method, params...) 1137 } 1138 1139 // Transfer initiates a plain transaction to move funds to the contract, calling 1140 // its default method if one is available. 1141 func (_ContentHashResolver *ContentHashResolverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1142 return _ContentHashResolver.Contract.contract.Transfer(opts) 1143 } 1144 1145 // Transact invokes the (paid) contract method with params as input values. 1146 func (_ContentHashResolver *ContentHashResolverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1147 return _ContentHashResolver.Contract.contract.Transact(opts, method, params...) 1148 } 1149 1150 // Contenthash is a free data retrieval call binding the contract method 0xbc1c58d1. 1151 // 1152 // Solidity: function contenthash(bytes32 node) view returns(bytes) 1153 func (_ContentHashResolver *ContentHashResolverCaller) Contenthash(opts *bind.CallOpts, node [32]byte) ([]byte, error) { 1154 var out []interface{} 1155 err := _ContentHashResolver.contract.Call(opts, &out, "contenthash", node) 1156 1157 if err != nil { 1158 return *new([]byte), err 1159 } 1160 1161 out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) 1162 1163 return out0, err 1164 1165 } 1166 1167 // Contenthash is a free data retrieval call binding the contract method 0xbc1c58d1. 1168 // 1169 // Solidity: function contenthash(bytes32 node) view returns(bytes) 1170 func (_ContentHashResolver *ContentHashResolverSession) Contenthash(node [32]byte) ([]byte, error) { 1171 return _ContentHashResolver.Contract.Contenthash(&_ContentHashResolver.CallOpts, node) 1172 } 1173 1174 // Contenthash is a free data retrieval call binding the contract method 0xbc1c58d1. 1175 // 1176 // Solidity: function contenthash(bytes32 node) view returns(bytes) 1177 func (_ContentHashResolver *ContentHashResolverCallerSession) Contenthash(node [32]byte) ([]byte, error) { 1178 return _ContentHashResolver.Contract.Contenthash(&_ContentHashResolver.CallOpts, node) 1179 } 1180 1181 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 1182 // 1183 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 1184 func (_ContentHashResolver *ContentHashResolverCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 1185 var out []interface{} 1186 err := _ContentHashResolver.contract.Call(opts, &out, "supportsInterface", interfaceID) 1187 1188 if err != nil { 1189 return *new(bool), err 1190 } 1191 1192 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 1193 1194 return out0, err 1195 1196 } 1197 1198 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 1199 // 1200 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 1201 func (_ContentHashResolver *ContentHashResolverSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 1202 return _ContentHashResolver.Contract.SupportsInterface(&_ContentHashResolver.CallOpts, interfaceID) 1203 } 1204 1205 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 1206 // 1207 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 1208 func (_ContentHashResolver *ContentHashResolverCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 1209 return _ContentHashResolver.Contract.SupportsInterface(&_ContentHashResolver.CallOpts, interfaceID) 1210 } 1211 1212 // SetContenthash is a paid mutator transaction binding the contract method 0x304e6ade. 1213 // 1214 // Solidity: function setContenthash(bytes32 node, bytes hash) returns() 1215 func (_ContentHashResolver *ContentHashResolverTransactor) SetContenthash(opts *bind.TransactOpts, node [32]byte, hash []byte) (*types.Transaction, error) { 1216 return _ContentHashResolver.contract.Transact(opts, "setContenthash", node, hash) 1217 } 1218 1219 // SetContenthash is a paid mutator transaction binding the contract method 0x304e6ade. 1220 // 1221 // Solidity: function setContenthash(bytes32 node, bytes hash) returns() 1222 func (_ContentHashResolver *ContentHashResolverSession) SetContenthash(node [32]byte, hash []byte) (*types.Transaction, error) { 1223 return _ContentHashResolver.Contract.SetContenthash(&_ContentHashResolver.TransactOpts, node, hash) 1224 } 1225 1226 // SetContenthash is a paid mutator transaction binding the contract method 0x304e6ade. 1227 // 1228 // Solidity: function setContenthash(bytes32 node, bytes hash) returns() 1229 func (_ContentHashResolver *ContentHashResolverTransactorSession) SetContenthash(node [32]byte, hash []byte) (*types.Transaction, error) { 1230 return _ContentHashResolver.Contract.SetContenthash(&_ContentHashResolver.TransactOpts, node, hash) 1231 } 1232 1233 // ContentHashResolverContenthashChangedIterator is returned from FilterContenthashChanged and is used to iterate over the raw logs and unpacked data for ContenthashChanged events raised by the ContentHashResolver contract. 1234 type ContentHashResolverContenthashChangedIterator struct { 1235 Event *ContentHashResolverContenthashChanged // Event containing the contract specifics and raw log 1236 1237 contract *bind.BoundContract // Generic contract to use for unpacking event data 1238 event string // Event name to use for unpacking event data 1239 1240 logs chan types.Log // Log channel receiving the found contract events 1241 sub ethereum.Subscription // Subscription for errors, completion and termination 1242 done bool // Whether the subscription completed delivering logs 1243 fail error // Occurred error to stop iteration 1244 } 1245 1246 // Next advances the iterator to the subsequent event, returning whether there 1247 // are any more events found. In case of a retrieval or parsing error, false is 1248 // returned and Error() can be queried for the exact failure. 1249 func (it *ContentHashResolverContenthashChangedIterator) Next() bool { 1250 // If the iterator failed, stop iterating 1251 if it.fail != nil { 1252 return false 1253 } 1254 // If the iterator completed, deliver directly whatever's available 1255 if it.done { 1256 select { 1257 case log := <-it.logs: 1258 it.Event = new(ContentHashResolverContenthashChanged) 1259 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1260 it.fail = err 1261 return false 1262 } 1263 it.Event.Raw = log 1264 return true 1265 1266 default: 1267 return false 1268 } 1269 } 1270 // Iterator still in progress, wait for either a data or an error event 1271 select { 1272 case log := <-it.logs: 1273 it.Event = new(ContentHashResolverContenthashChanged) 1274 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1275 it.fail = err 1276 return false 1277 } 1278 it.Event.Raw = log 1279 return true 1280 1281 case err := <-it.sub.Err(): 1282 it.done = true 1283 it.fail = err 1284 return it.Next() 1285 } 1286 } 1287 1288 // Error returns any retrieval or parsing error occurred during filtering. 1289 func (it *ContentHashResolverContenthashChangedIterator) Error() error { 1290 return it.fail 1291 } 1292 1293 // Close terminates the iteration process, releasing any pending underlying 1294 // resources. 1295 func (it *ContentHashResolverContenthashChangedIterator) Close() error { 1296 it.sub.Unsubscribe() 1297 return nil 1298 } 1299 1300 // ContentHashResolverContenthashChanged represents a ContenthashChanged event raised by the ContentHashResolver contract. 1301 type ContentHashResolverContenthashChanged struct { 1302 Node [32]byte 1303 Hash []byte 1304 Raw types.Log // Blockchain specific contextual infos 1305 } 1306 1307 // FilterContenthashChanged is a free log retrieval operation binding the contract event 0xe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d7578. 1308 // 1309 // Solidity: event ContenthashChanged(bytes32 indexed node, bytes hash) 1310 func (_ContentHashResolver *ContentHashResolverFilterer) FilterContenthashChanged(opts *bind.FilterOpts, node [][32]byte) (*ContentHashResolverContenthashChangedIterator, error) { 1311 1312 var nodeRule []interface{} 1313 for _, nodeItem := range node { 1314 nodeRule = append(nodeRule, nodeItem) 1315 } 1316 1317 logs, sub, err := _ContentHashResolver.contract.FilterLogs(opts, "ContenthashChanged", nodeRule) 1318 if err != nil { 1319 return nil, err 1320 } 1321 return &ContentHashResolverContenthashChangedIterator{contract: _ContentHashResolver.contract, event: "ContenthashChanged", logs: logs, sub: sub}, nil 1322 } 1323 1324 // WatchContenthashChanged is a free log subscription operation binding the contract event 0xe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d7578. 1325 // 1326 // Solidity: event ContenthashChanged(bytes32 indexed node, bytes hash) 1327 func (_ContentHashResolver *ContentHashResolverFilterer) WatchContenthashChanged(opts *bind.WatchOpts, sink chan<- *ContentHashResolverContenthashChanged, node [][32]byte) (event.Subscription, error) { 1328 1329 var nodeRule []interface{} 1330 for _, nodeItem := range node { 1331 nodeRule = append(nodeRule, nodeItem) 1332 } 1333 1334 logs, sub, err := _ContentHashResolver.contract.WatchLogs(opts, "ContenthashChanged", nodeRule) 1335 if err != nil { 1336 return nil, err 1337 } 1338 return event.NewSubscription(func(quit <-chan struct{}) error { 1339 defer sub.Unsubscribe() 1340 for { 1341 select { 1342 case log := <-logs: 1343 // New log arrived, parse the event and forward to the user 1344 event := new(ContentHashResolverContenthashChanged) 1345 if err := _ContentHashResolver.contract.UnpackLog(event, "ContenthashChanged", log); err != nil { 1346 return err 1347 } 1348 event.Raw = log 1349 1350 select { 1351 case sink <- event: 1352 case err := <-sub.Err(): 1353 return err 1354 case <-quit: 1355 return nil 1356 } 1357 case err := <-sub.Err(): 1358 return err 1359 case <-quit: 1360 return nil 1361 } 1362 } 1363 }), nil 1364 } 1365 1366 // ParseContenthashChanged is a log parse operation binding the contract event 0xe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d7578. 1367 // 1368 // Solidity: event ContenthashChanged(bytes32 indexed node, bytes hash) 1369 func (_ContentHashResolver *ContentHashResolverFilterer) ParseContenthashChanged(log types.Log) (*ContentHashResolverContenthashChanged, error) { 1370 event := new(ContentHashResolverContenthashChanged) 1371 if err := _ContentHashResolver.contract.UnpackLog(event, "ContenthashChanged", log); err != nil { 1372 return nil, err 1373 } 1374 event.Raw = log 1375 return event, nil 1376 } 1377 1378 // DNSResolverABI is the input ABI used to generate the binding from. 1379 const DNSResolverABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDNSRecords\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"name\",\"type\":\"bytes32\"}],\"name\":\"hasDNSRecords\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"name\",\"type\":\"bytes32\"},{\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"dnsRecord\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearDNSZone\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"name\":\"resource\",\"type\":\"uint16\"},{\"indexed\":false,\"name\":\"record\",\"type\":\"bytes\"}],\"name\":\"DNSRecordChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"DNSRecordDeleted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"DNSZoneCleared\",\"type\":\"event\"}]" 1380 1381 // DNSResolverFuncSigs maps the 4-byte function signature to its string representation. 1382 var DNSResolverFuncSigs = map[string]string{ 1383 "ad5780af": "clearDNSZone(bytes32)", 1384 "a8fa5682": "dnsRecord(bytes32,bytes32,uint16)", 1385 "4cbf6ba4": "hasDNSRecords(bytes32,bytes32)", 1386 "0af179d7": "setDNSRecords(bytes32,bytes)", 1387 "01ffc9a7": "supportsInterface(bytes4)", 1388 } 1389 1390 // DNSResolver is an auto generated Go binding around an Ethereum contract. 1391 type DNSResolver struct { 1392 DNSResolverCaller // Read-only binding to the contract 1393 DNSResolverTransactor // Write-only binding to the contract 1394 DNSResolverFilterer // Log filterer for contract events 1395 } 1396 1397 // DNSResolverCaller is an auto generated read-only Go binding around an Ethereum contract. 1398 type DNSResolverCaller struct { 1399 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1400 } 1401 1402 // DNSResolverTransactor is an auto generated write-only Go binding around an Ethereum contract. 1403 type DNSResolverTransactor struct { 1404 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1405 } 1406 1407 // DNSResolverFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 1408 type DNSResolverFilterer struct { 1409 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1410 } 1411 1412 // DNSResolverSession is an auto generated Go binding around an Ethereum contract, 1413 // with pre-set call and transact options. 1414 type DNSResolverSession struct { 1415 Contract *DNSResolver // Generic contract binding to set the session for 1416 CallOpts bind.CallOpts // Call options to use throughout this session 1417 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1418 } 1419 1420 // DNSResolverCallerSession is an auto generated read-only Go binding around an Ethereum contract, 1421 // with pre-set call options. 1422 type DNSResolverCallerSession struct { 1423 Contract *DNSResolverCaller // Generic contract caller binding to set the session for 1424 CallOpts bind.CallOpts // Call options to use throughout this session 1425 } 1426 1427 // DNSResolverTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 1428 // with pre-set transact options. 1429 type DNSResolverTransactorSession struct { 1430 Contract *DNSResolverTransactor // Generic contract transactor binding to set the session for 1431 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1432 } 1433 1434 // DNSResolverRaw is an auto generated low-level Go binding around an Ethereum contract. 1435 type DNSResolverRaw struct { 1436 Contract *DNSResolver // Generic contract binding to access the raw methods on 1437 } 1438 1439 // DNSResolverCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 1440 type DNSResolverCallerRaw struct { 1441 Contract *DNSResolverCaller // Generic read-only contract binding to access the raw methods on 1442 } 1443 1444 // DNSResolverTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 1445 type DNSResolverTransactorRaw struct { 1446 Contract *DNSResolverTransactor // Generic write-only contract binding to access the raw methods on 1447 } 1448 1449 // NewDNSResolver creates a new instance of DNSResolver, bound to a specific deployed contract. 1450 func NewDNSResolver(address common.Address, backend bind.ContractBackend) (*DNSResolver, error) { 1451 contract, err := bindDNSResolver(address, backend, backend, backend) 1452 if err != nil { 1453 return nil, err 1454 } 1455 return &DNSResolver{DNSResolverCaller: DNSResolverCaller{contract: contract}, DNSResolverTransactor: DNSResolverTransactor{contract: contract}, DNSResolverFilterer: DNSResolverFilterer{contract: contract}}, nil 1456 } 1457 1458 // NewDNSResolverCaller creates a new read-only instance of DNSResolver, bound to a specific deployed contract. 1459 func NewDNSResolverCaller(address common.Address, caller bind.ContractCaller) (*DNSResolverCaller, error) { 1460 contract, err := bindDNSResolver(address, caller, nil, nil) 1461 if err != nil { 1462 return nil, err 1463 } 1464 return &DNSResolverCaller{contract: contract}, nil 1465 } 1466 1467 // NewDNSResolverTransactor creates a new write-only instance of DNSResolver, bound to a specific deployed contract. 1468 func NewDNSResolverTransactor(address common.Address, transactor bind.ContractTransactor) (*DNSResolverTransactor, error) { 1469 contract, err := bindDNSResolver(address, nil, transactor, nil) 1470 if err != nil { 1471 return nil, err 1472 } 1473 return &DNSResolverTransactor{contract: contract}, nil 1474 } 1475 1476 // NewDNSResolverFilterer creates a new log filterer instance of DNSResolver, bound to a specific deployed contract. 1477 func NewDNSResolverFilterer(address common.Address, filterer bind.ContractFilterer) (*DNSResolverFilterer, error) { 1478 contract, err := bindDNSResolver(address, nil, nil, filterer) 1479 if err != nil { 1480 return nil, err 1481 } 1482 return &DNSResolverFilterer{contract: contract}, nil 1483 } 1484 1485 // bindDNSResolver binds a generic wrapper to an already deployed contract. 1486 func bindDNSResolver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 1487 parsed, err := abi.JSON(strings.NewReader(DNSResolverABI)) 1488 if err != nil { 1489 return nil, err 1490 } 1491 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 1492 } 1493 1494 // Call invokes the (constant) contract method with params as input values and 1495 // sets the output to result. The result type might be a single field for simple 1496 // returns, a slice of interfaces for anonymous returns and a struct for named 1497 // returns. 1498 func (_DNSResolver *DNSResolverRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 1499 return _DNSResolver.Contract.DNSResolverCaller.contract.Call(opts, result, method, params...) 1500 } 1501 1502 // Transfer initiates a plain transaction to move funds to the contract, calling 1503 // its default method if one is available. 1504 func (_DNSResolver *DNSResolverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1505 return _DNSResolver.Contract.DNSResolverTransactor.contract.Transfer(opts) 1506 } 1507 1508 // Transact invokes the (paid) contract method with params as input values. 1509 func (_DNSResolver *DNSResolverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1510 return _DNSResolver.Contract.DNSResolverTransactor.contract.Transact(opts, method, params...) 1511 } 1512 1513 // Call invokes the (constant) contract method with params as input values and 1514 // sets the output to result. The result type might be a single field for simple 1515 // returns, a slice of interfaces for anonymous returns and a struct for named 1516 // returns. 1517 func (_DNSResolver *DNSResolverCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 1518 return _DNSResolver.Contract.contract.Call(opts, result, method, params...) 1519 } 1520 1521 // Transfer initiates a plain transaction to move funds to the contract, calling 1522 // its default method if one is available. 1523 func (_DNSResolver *DNSResolverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1524 return _DNSResolver.Contract.contract.Transfer(opts) 1525 } 1526 1527 // Transact invokes the (paid) contract method with params as input values. 1528 func (_DNSResolver *DNSResolverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1529 return _DNSResolver.Contract.contract.Transact(opts, method, params...) 1530 } 1531 1532 // DnsRecord is a free data retrieval call binding the contract method 0xa8fa5682. 1533 // 1534 // Solidity: function dnsRecord(bytes32 node, bytes32 name, uint16 resource) view returns(bytes) 1535 func (_DNSResolver *DNSResolverCaller) DnsRecord(opts *bind.CallOpts, node [32]byte, name [32]byte, resource uint16) ([]byte, error) { 1536 var out []interface{} 1537 err := _DNSResolver.contract.Call(opts, &out, "dnsRecord", node, name, resource) 1538 1539 if err != nil { 1540 return *new([]byte), err 1541 } 1542 1543 out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) 1544 1545 return out0, err 1546 1547 } 1548 1549 // DnsRecord is a free data retrieval call binding the contract method 0xa8fa5682. 1550 // 1551 // Solidity: function dnsRecord(bytes32 node, bytes32 name, uint16 resource) view returns(bytes) 1552 func (_DNSResolver *DNSResolverSession) DnsRecord(node [32]byte, name [32]byte, resource uint16) ([]byte, error) { 1553 return _DNSResolver.Contract.DnsRecord(&_DNSResolver.CallOpts, node, name, resource) 1554 } 1555 1556 // DnsRecord is a free data retrieval call binding the contract method 0xa8fa5682. 1557 // 1558 // Solidity: function dnsRecord(bytes32 node, bytes32 name, uint16 resource) view returns(bytes) 1559 func (_DNSResolver *DNSResolverCallerSession) DnsRecord(node [32]byte, name [32]byte, resource uint16) ([]byte, error) { 1560 return _DNSResolver.Contract.DnsRecord(&_DNSResolver.CallOpts, node, name, resource) 1561 } 1562 1563 // HasDNSRecords is a free data retrieval call binding the contract method 0x4cbf6ba4. 1564 // 1565 // Solidity: function hasDNSRecords(bytes32 node, bytes32 name) view returns(bool) 1566 func (_DNSResolver *DNSResolverCaller) HasDNSRecords(opts *bind.CallOpts, node [32]byte, name [32]byte) (bool, error) { 1567 var out []interface{} 1568 err := _DNSResolver.contract.Call(opts, &out, "hasDNSRecords", node, name) 1569 1570 if err != nil { 1571 return *new(bool), err 1572 } 1573 1574 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 1575 1576 return out0, err 1577 1578 } 1579 1580 // HasDNSRecords is a free data retrieval call binding the contract method 0x4cbf6ba4. 1581 // 1582 // Solidity: function hasDNSRecords(bytes32 node, bytes32 name) view returns(bool) 1583 func (_DNSResolver *DNSResolverSession) HasDNSRecords(node [32]byte, name [32]byte) (bool, error) { 1584 return _DNSResolver.Contract.HasDNSRecords(&_DNSResolver.CallOpts, node, name) 1585 } 1586 1587 // HasDNSRecords is a free data retrieval call binding the contract method 0x4cbf6ba4. 1588 // 1589 // Solidity: function hasDNSRecords(bytes32 node, bytes32 name) view returns(bool) 1590 func (_DNSResolver *DNSResolverCallerSession) HasDNSRecords(node [32]byte, name [32]byte) (bool, error) { 1591 return _DNSResolver.Contract.HasDNSRecords(&_DNSResolver.CallOpts, node, name) 1592 } 1593 1594 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 1595 // 1596 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 1597 func (_DNSResolver *DNSResolverCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 1598 var out []interface{} 1599 err := _DNSResolver.contract.Call(opts, &out, "supportsInterface", interfaceID) 1600 1601 if err != nil { 1602 return *new(bool), err 1603 } 1604 1605 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 1606 1607 return out0, err 1608 1609 } 1610 1611 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 1612 // 1613 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 1614 func (_DNSResolver *DNSResolverSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 1615 return _DNSResolver.Contract.SupportsInterface(&_DNSResolver.CallOpts, interfaceID) 1616 } 1617 1618 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 1619 // 1620 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 1621 func (_DNSResolver *DNSResolverCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 1622 return _DNSResolver.Contract.SupportsInterface(&_DNSResolver.CallOpts, interfaceID) 1623 } 1624 1625 // ClearDNSZone is a paid mutator transaction binding the contract method 0xad5780af. 1626 // 1627 // Solidity: function clearDNSZone(bytes32 node) returns() 1628 func (_DNSResolver *DNSResolverTransactor) ClearDNSZone(opts *bind.TransactOpts, node [32]byte) (*types.Transaction, error) { 1629 return _DNSResolver.contract.Transact(opts, "clearDNSZone", node) 1630 } 1631 1632 // ClearDNSZone is a paid mutator transaction binding the contract method 0xad5780af. 1633 // 1634 // Solidity: function clearDNSZone(bytes32 node) returns() 1635 func (_DNSResolver *DNSResolverSession) ClearDNSZone(node [32]byte) (*types.Transaction, error) { 1636 return _DNSResolver.Contract.ClearDNSZone(&_DNSResolver.TransactOpts, node) 1637 } 1638 1639 // ClearDNSZone is a paid mutator transaction binding the contract method 0xad5780af. 1640 // 1641 // Solidity: function clearDNSZone(bytes32 node) returns() 1642 func (_DNSResolver *DNSResolverTransactorSession) ClearDNSZone(node [32]byte) (*types.Transaction, error) { 1643 return _DNSResolver.Contract.ClearDNSZone(&_DNSResolver.TransactOpts, node) 1644 } 1645 1646 // SetDNSRecords is a paid mutator transaction binding the contract method 0x0af179d7. 1647 // 1648 // Solidity: function setDNSRecords(bytes32 node, bytes data) returns() 1649 func (_DNSResolver *DNSResolverTransactor) SetDNSRecords(opts *bind.TransactOpts, node [32]byte, data []byte) (*types.Transaction, error) { 1650 return _DNSResolver.contract.Transact(opts, "setDNSRecords", node, data) 1651 } 1652 1653 // SetDNSRecords is a paid mutator transaction binding the contract method 0x0af179d7. 1654 // 1655 // Solidity: function setDNSRecords(bytes32 node, bytes data) returns() 1656 func (_DNSResolver *DNSResolverSession) SetDNSRecords(node [32]byte, data []byte) (*types.Transaction, error) { 1657 return _DNSResolver.Contract.SetDNSRecords(&_DNSResolver.TransactOpts, node, data) 1658 } 1659 1660 // SetDNSRecords is a paid mutator transaction binding the contract method 0x0af179d7. 1661 // 1662 // Solidity: function setDNSRecords(bytes32 node, bytes data) returns() 1663 func (_DNSResolver *DNSResolverTransactorSession) SetDNSRecords(node [32]byte, data []byte) (*types.Transaction, error) { 1664 return _DNSResolver.Contract.SetDNSRecords(&_DNSResolver.TransactOpts, node, data) 1665 } 1666 1667 // DNSResolverDNSRecordChangedIterator is returned from FilterDNSRecordChanged and is used to iterate over the raw logs and unpacked data for DNSRecordChanged events raised by the DNSResolver contract. 1668 type DNSResolverDNSRecordChangedIterator struct { 1669 Event *DNSResolverDNSRecordChanged // Event containing the contract specifics and raw log 1670 1671 contract *bind.BoundContract // Generic contract to use for unpacking event data 1672 event string // Event name to use for unpacking event data 1673 1674 logs chan types.Log // Log channel receiving the found contract events 1675 sub ethereum.Subscription // Subscription for errors, completion and termination 1676 done bool // Whether the subscription completed delivering logs 1677 fail error // Occurred error to stop iteration 1678 } 1679 1680 // Next advances the iterator to the subsequent event, returning whether there 1681 // are any more events found. In case of a retrieval or parsing error, false is 1682 // returned and Error() can be queried for the exact failure. 1683 func (it *DNSResolverDNSRecordChangedIterator) Next() bool { 1684 // If the iterator failed, stop iterating 1685 if it.fail != nil { 1686 return false 1687 } 1688 // If the iterator completed, deliver directly whatever's available 1689 if it.done { 1690 select { 1691 case log := <-it.logs: 1692 it.Event = new(DNSResolverDNSRecordChanged) 1693 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1694 it.fail = err 1695 return false 1696 } 1697 it.Event.Raw = log 1698 return true 1699 1700 default: 1701 return false 1702 } 1703 } 1704 // Iterator still in progress, wait for either a data or an error event 1705 select { 1706 case log := <-it.logs: 1707 it.Event = new(DNSResolverDNSRecordChanged) 1708 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1709 it.fail = err 1710 return false 1711 } 1712 it.Event.Raw = log 1713 return true 1714 1715 case err := <-it.sub.Err(): 1716 it.done = true 1717 it.fail = err 1718 return it.Next() 1719 } 1720 } 1721 1722 // Error returns any retrieval or parsing error occurred during filtering. 1723 func (it *DNSResolverDNSRecordChangedIterator) Error() error { 1724 return it.fail 1725 } 1726 1727 // Close terminates the iteration process, releasing any pending underlying 1728 // resources. 1729 func (it *DNSResolverDNSRecordChangedIterator) Close() error { 1730 it.sub.Unsubscribe() 1731 return nil 1732 } 1733 1734 // DNSResolverDNSRecordChanged represents a DNSRecordChanged event raised by the DNSResolver contract. 1735 type DNSResolverDNSRecordChanged struct { 1736 Node [32]byte 1737 Name []byte 1738 Resource uint16 1739 Record []byte 1740 Raw types.Log // Blockchain specific contextual infos 1741 } 1742 1743 // FilterDNSRecordChanged is a free log retrieval operation binding the contract event 0x52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b. 1744 // 1745 // Solidity: event DNSRecordChanged(bytes32 indexed node, bytes name, uint16 resource, bytes record) 1746 func (_DNSResolver *DNSResolverFilterer) FilterDNSRecordChanged(opts *bind.FilterOpts, node [][32]byte) (*DNSResolverDNSRecordChangedIterator, error) { 1747 1748 var nodeRule []interface{} 1749 for _, nodeItem := range node { 1750 nodeRule = append(nodeRule, nodeItem) 1751 } 1752 1753 logs, sub, err := _DNSResolver.contract.FilterLogs(opts, "DNSRecordChanged", nodeRule) 1754 if err != nil { 1755 return nil, err 1756 } 1757 return &DNSResolverDNSRecordChangedIterator{contract: _DNSResolver.contract, event: "DNSRecordChanged", logs: logs, sub: sub}, nil 1758 } 1759 1760 // WatchDNSRecordChanged is a free log subscription operation binding the contract event 0x52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b. 1761 // 1762 // Solidity: event DNSRecordChanged(bytes32 indexed node, bytes name, uint16 resource, bytes record) 1763 func (_DNSResolver *DNSResolverFilterer) WatchDNSRecordChanged(opts *bind.WatchOpts, sink chan<- *DNSResolverDNSRecordChanged, node [][32]byte) (event.Subscription, error) { 1764 1765 var nodeRule []interface{} 1766 for _, nodeItem := range node { 1767 nodeRule = append(nodeRule, nodeItem) 1768 } 1769 1770 logs, sub, err := _DNSResolver.contract.WatchLogs(opts, "DNSRecordChanged", nodeRule) 1771 if err != nil { 1772 return nil, err 1773 } 1774 return event.NewSubscription(func(quit <-chan struct{}) error { 1775 defer sub.Unsubscribe() 1776 for { 1777 select { 1778 case log := <-logs: 1779 // New log arrived, parse the event and forward to the user 1780 event := new(DNSResolverDNSRecordChanged) 1781 if err := _DNSResolver.contract.UnpackLog(event, "DNSRecordChanged", log); err != nil { 1782 return err 1783 } 1784 event.Raw = log 1785 1786 select { 1787 case sink <- event: 1788 case err := <-sub.Err(): 1789 return err 1790 case <-quit: 1791 return nil 1792 } 1793 case err := <-sub.Err(): 1794 return err 1795 case <-quit: 1796 return nil 1797 } 1798 } 1799 }), nil 1800 } 1801 1802 // ParseDNSRecordChanged is a log parse operation binding the contract event 0x52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b. 1803 // 1804 // Solidity: event DNSRecordChanged(bytes32 indexed node, bytes name, uint16 resource, bytes record) 1805 func (_DNSResolver *DNSResolverFilterer) ParseDNSRecordChanged(log types.Log) (*DNSResolverDNSRecordChanged, error) { 1806 event := new(DNSResolverDNSRecordChanged) 1807 if err := _DNSResolver.contract.UnpackLog(event, "DNSRecordChanged", log); err != nil { 1808 return nil, err 1809 } 1810 event.Raw = log 1811 return event, nil 1812 } 1813 1814 // DNSResolverDNSRecordDeletedIterator is returned from FilterDNSRecordDeleted and is used to iterate over the raw logs and unpacked data for DNSRecordDeleted events raised by the DNSResolver contract. 1815 type DNSResolverDNSRecordDeletedIterator struct { 1816 Event *DNSResolverDNSRecordDeleted // Event containing the contract specifics and raw log 1817 1818 contract *bind.BoundContract // Generic contract to use for unpacking event data 1819 event string // Event name to use for unpacking event data 1820 1821 logs chan types.Log // Log channel receiving the found contract events 1822 sub ethereum.Subscription // Subscription for errors, completion and termination 1823 done bool // Whether the subscription completed delivering logs 1824 fail error // Occurred error to stop iteration 1825 } 1826 1827 // Next advances the iterator to the subsequent event, returning whether there 1828 // are any more events found. In case of a retrieval or parsing error, false is 1829 // returned and Error() can be queried for the exact failure. 1830 func (it *DNSResolverDNSRecordDeletedIterator) Next() bool { 1831 // If the iterator failed, stop iterating 1832 if it.fail != nil { 1833 return false 1834 } 1835 // If the iterator completed, deliver directly whatever's available 1836 if it.done { 1837 select { 1838 case log := <-it.logs: 1839 it.Event = new(DNSResolverDNSRecordDeleted) 1840 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1841 it.fail = err 1842 return false 1843 } 1844 it.Event.Raw = log 1845 return true 1846 1847 default: 1848 return false 1849 } 1850 } 1851 // Iterator still in progress, wait for either a data or an error event 1852 select { 1853 case log := <-it.logs: 1854 it.Event = new(DNSResolverDNSRecordDeleted) 1855 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1856 it.fail = err 1857 return false 1858 } 1859 it.Event.Raw = log 1860 return true 1861 1862 case err := <-it.sub.Err(): 1863 it.done = true 1864 it.fail = err 1865 return it.Next() 1866 } 1867 } 1868 1869 // Error returns any retrieval or parsing error occurred during filtering. 1870 func (it *DNSResolverDNSRecordDeletedIterator) Error() error { 1871 return it.fail 1872 } 1873 1874 // Close terminates the iteration process, releasing any pending underlying 1875 // resources. 1876 func (it *DNSResolverDNSRecordDeletedIterator) Close() error { 1877 it.sub.Unsubscribe() 1878 return nil 1879 } 1880 1881 // DNSResolverDNSRecordDeleted represents a DNSRecordDeleted event raised by the DNSResolver contract. 1882 type DNSResolverDNSRecordDeleted struct { 1883 Node [32]byte 1884 Name []byte 1885 Resource uint16 1886 Raw types.Log // Blockchain specific contextual infos 1887 } 1888 1889 // FilterDNSRecordDeleted is a free log retrieval operation binding the contract event 0x03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a1207. 1890 // 1891 // Solidity: event DNSRecordDeleted(bytes32 indexed node, bytes name, uint16 resource) 1892 func (_DNSResolver *DNSResolverFilterer) FilterDNSRecordDeleted(opts *bind.FilterOpts, node [][32]byte) (*DNSResolverDNSRecordDeletedIterator, error) { 1893 1894 var nodeRule []interface{} 1895 for _, nodeItem := range node { 1896 nodeRule = append(nodeRule, nodeItem) 1897 } 1898 1899 logs, sub, err := _DNSResolver.contract.FilterLogs(opts, "DNSRecordDeleted", nodeRule) 1900 if err != nil { 1901 return nil, err 1902 } 1903 return &DNSResolverDNSRecordDeletedIterator{contract: _DNSResolver.contract, event: "DNSRecordDeleted", logs: logs, sub: sub}, nil 1904 } 1905 1906 // WatchDNSRecordDeleted is a free log subscription operation binding the contract event 0x03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a1207. 1907 // 1908 // Solidity: event DNSRecordDeleted(bytes32 indexed node, bytes name, uint16 resource) 1909 func (_DNSResolver *DNSResolverFilterer) WatchDNSRecordDeleted(opts *bind.WatchOpts, sink chan<- *DNSResolverDNSRecordDeleted, node [][32]byte) (event.Subscription, error) { 1910 1911 var nodeRule []interface{} 1912 for _, nodeItem := range node { 1913 nodeRule = append(nodeRule, nodeItem) 1914 } 1915 1916 logs, sub, err := _DNSResolver.contract.WatchLogs(opts, "DNSRecordDeleted", nodeRule) 1917 if err != nil { 1918 return nil, err 1919 } 1920 return event.NewSubscription(func(quit <-chan struct{}) error { 1921 defer sub.Unsubscribe() 1922 for { 1923 select { 1924 case log := <-logs: 1925 // New log arrived, parse the event and forward to the user 1926 event := new(DNSResolverDNSRecordDeleted) 1927 if err := _DNSResolver.contract.UnpackLog(event, "DNSRecordDeleted", log); err != nil { 1928 return err 1929 } 1930 event.Raw = log 1931 1932 select { 1933 case sink <- event: 1934 case err := <-sub.Err(): 1935 return err 1936 case <-quit: 1937 return nil 1938 } 1939 case err := <-sub.Err(): 1940 return err 1941 case <-quit: 1942 return nil 1943 } 1944 } 1945 }), nil 1946 } 1947 1948 // ParseDNSRecordDeleted is a log parse operation binding the contract event 0x03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a1207. 1949 // 1950 // Solidity: event DNSRecordDeleted(bytes32 indexed node, bytes name, uint16 resource) 1951 func (_DNSResolver *DNSResolverFilterer) ParseDNSRecordDeleted(log types.Log) (*DNSResolverDNSRecordDeleted, error) { 1952 event := new(DNSResolverDNSRecordDeleted) 1953 if err := _DNSResolver.contract.UnpackLog(event, "DNSRecordDeleted", log); err != nil { 1954 return nil, err 1955 } 1956 event.Raw = log 1957 return event, nil 1958 } 1959 1960 // DNSResolverDNSZoneClearedIterator is returned from FilterDNSZoneCleared and is used to iterate over the raw logs and unpacked data for DNSZoneCleared events raised by the DNSResolver contract. 1961 type DNSResolverDNSZoneClearedIterator struct { 1962 Event *DNSResolverDNSZoneCleared // Event containing the contract specifics and raw log 1963 1964 contract *bind.BoundContract // Generic contract to use for unpacking event data 1965 event string // Event name to use for unpacking event data 1966 1967 logs chan types.Log // Log channel receiving the found contract events 1968 sub ethereum.Subscription // Subscription for errors, completion and termination 1969 done bool // Whether the subscription completed delivering logs 1970 fail error // Occurred error to stop iteration 1971 } 1972 1973 // Next advances the iterator to the subsequent event, returning whether there 1974 // are any more events found. In case of a retrieval or parsing error, false is 1975 // returned and Error() can be queried for the exact failure. 1976 func (it *DNSResolverDNSZoneClearedIterator) Next() bool { 1977 // If the iterator failed, stop iterating 1978 if it.fail != nil { 1979 return false 1980 } 1981 // If the iterator completed, deliver directly whatever's available 1982 if it.done { 1983 select { 1984 case log := <-it.logs: 1985 it.Event = new(DNSResolverDNSZoneCleared) 1986 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1987 it.fail = err 1988 return false 1989 } 1990 it.Event.Raw = log 1991 return true 1992 1993 default: 1994 return false 1995 } 1996 } 1997 // Iterator still in progress, wait for either a data or an error event 1998 select { 1999 case log := <-it.logs: 2000 it.Event = new(DNSResolverDNSZoneCleared) 2001 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2002 it.fail = err 2003 return false 2004 } 2005 it.Event.Raw = log 2006 return true 2007 2008 case err := <-it.sub.Err(): 2009 it.done = true 2010 it.fail = err 2011 return it.Next() 2012 } 2013 } 2014 2015 // Error returns any retrieval or parsing error occurred during filtering. 2016 func (it *DNSResolverDNSZoneClearedIterator) Error() error { 2017 return it.fail 2018 } 2019 2020 // Close terminates the iteration process, releasing any pending underlying 2021 // resources. 2022 func (it *DNSResolverDNSZoneClearedIterator) Close() error { 2023 it.sub.Unsubscribe() 2024 return nil 2025 } 2026 2027 // DNSResolverDNSZoneCleared represents a DNSZoneCleared event raised by the DNSResolver contract. 2028 type DNSResolverDNSZoneCleared struct { 2029 Node [32]byte 2030 Raw types.Log // Blockchain specific contextual infos 2031 } 2032 2033 // FilterDNSZoneCleared is a free log retrieval operation binding the contract event 0xb757169b8492ca2f1c6619d9d76ce22803035c3b1d5f6930dffe7b127c1a1983. 2034 // 2035 // Solidity: event DNSZoneCleared(bytes32 indexed node) 2036 func (_DNSResolver *DNSResolverFilterer) FilterDNSZoneCleared(opts *bind.FilterOpts, node [][32]byte) (*DNSResolverDNSZoneClearedIterator, error) { 2037 2038 var nodeRule []interface{} 2039 for _, nodeItem := range node { 2040 nodeRule = append(nodeRule, nodeItem) 2041 } 2042 2043 logs, sub, err := _DNSResolver.contract.FilterLogs(opts, "DNSZoneCleared", nodeRule) 2044 if err != nil { 2045 return nil, err 2046 } 2047 return &DNSResolverDNSZoneClearedIterator{contract: _DNSResolver.contract, event: "DNSZoneCleared", logs: logs, sub: sub}, nil 2048 } 2049 2050 // WatchDNSZoneCleared is a free log subscription operation binding the contract event 0xb757169b8492ca2f1c6619d9d76ce22803035c3b1d5f6930dffe7b127c1a1983. 2051 // 2052 // Solidity: event DNSZoneCleared(bytes32 indexed node) 2053 func (_DNSResolver *DNSResolverFilterer) WatchDNSZoneCleared(opts *bind.WatchOpts, sink chan<- *DNSResolverDNSZoneCleared, node [][32]byte) (event.Subscription, error) { 2054 2055 var nodeRule []interface{} 2056 for _, nodeItem := range node { 2057 nodeRule = append(nodeRule, nodeItem) 2058 } 2059 2060 logs, sub, err := _DNSResolver.contract.WatchLogs(opts, "DNSZoneCleared", nodeRule) 2061 if err != nil { 2062 return nil, err 2063 } 2064 return event.NewSubscription(func(quit <-chan struct{}) error { 2065 defer sub.Unsubscribe() 2066 for { 2067 select { 2068 case log := <-logs: 2069 // New log arrived, parse the event and forward to the user 2070 event := new(DNSResolverDNSZoneCleared) 2071 if err := _DNSResolver.contract.UnpackLog(event, "DNSZoneCleared", log); err != nil { 2072 return err 2073 } 2074 event.Raw = log 2075 2076 select { 2077 case sink <- event: 2078 case err := <-sub.Err(): 2079 return err 2080 case <-quit: 2081 return nil 2082 } 2083 case err := <-sub.Err(): 2084 return err 2085 case <-quit: 2086 return nil 2087 } 2088 } 2089 }), nil 2090 } 2091 2092 // ParseDNSZoneCleared is a log parse operation binding the contract event 0xb757169b8492ca2f1c6619d9d76ce22803035c3b1d5f6930dffe7b127c1a1983. 2093 // 2094 // Solidity: event DNSZoneCleared(bytes32 indexed node) 2095 func (_DNSResolver *DNSResolverFilterer) ParseDNSZoneCleared(log types.Log) (*DNSResolverDNSZoneCleared, error) { 2096 event := new(DNSResolverDNSZoneCleared) 2097 if err := _DNSResolver.contract.UnpackLog(event, "DNSZoneCleared", log); err != nil { 2098 return nil, err 2099 } 2100 event.Raw = log 2101 return event, nil 2102 } 2103 2104 // ENSABI is the input ABI used to generate the binding from. 2105 const ENSABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"resolver\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"label\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setSubnodeOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setTTL\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"ttl\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"label\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"resolver\",\"type\":\"address\"},{\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setSubnodeRecord\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"operator\",\"type\":\"address\"},{\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"resolver\",\"type\":\"address\"},{\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setRecord\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"recordExists\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"label\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"NewOwner\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"NewResolver\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"NewTTL\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"}]" 2106 2107 // ENSFuncSigs maps the 4-byte function signature to its string representation. 2108 var ENSFuncSigs = map[string]string{ 2109 "e985e9c5": "isApprovedForAll(address,address)", 2110 "02571be3": "owner(bytes32)", 2111 "f79fe538": "recordExists(bytes32)", 2112 "0178b8bf": "resolver(bytes32)", 2113 "a22cb465": "setApprovalForAll(address,bool)", 2114 "5b0fc9c3": "setOwner(bytes32,address)", 2115 "cf408823": "setRecord(bytes32,address,address,uint64)", 2116 "1896f70a": "setResolver(bytes32,address)", 2117 "06ab5923": "setSubnodeOwner(bytes32,bytes32,address)", 2118 "5ef2c7f0": "setSubnodeRecord(bytes32,bytes32,address,address,uint64)", 2119 "14ab9038": "setTTL(bytes32,uint64)", 2120 "16a25cbd": "ttl(bytes32)", 2121 } 2122 2123 // ENS is an auto generated Go binding around an Ethereum contract. 2124 type ENS struct { 2125 ENSCaller // Read-only binding to the contract 2126 ENSTransactor // Write-only binding to the contract 2127 ENSFilterer // Log filterer for contract events 2128 } 2129 2130 // ENSCaller is an auto generated read-only Go binding around an Ethereum contract. 2131 type ENSCaller struct { 2132 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2133 } 2134 2135 // ENSTransactor is an auto generated write-only Go binding around an Ethereum contract. 2136 type ENSTransactor struct { 2137 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2138 } 2139 2140 // ENSFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 2141 type ENSFilterer struct { 2142 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2143 } 2144 2145 // ENSSession is an auto generated Go binding around an Ethereum contract, 2146 // with pre-set call and transact options. 2147 type ENSSession struct { 2148 Contract *ENS // Generic contract binding to set the session for 2149 CallOpts bind.CallOpts // Call options to use throughout this session 2150 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 2151 } 2152 2153 // ENSCallerSession is an auto generated read-only Go binding around an Ethereum contract, 2154 // with pre-set call options. 2155 type ENSCallerSession struct { 2156 Contract *ENSCaller // Generic contract caller binding to set the session for 2157 CallOpts bind.CallOpts // Call options to use throughout this session 2158 } 2159 2160 // ENSTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 2161 // with pre-set transact options. 2162 type ENSTransactorSession struct { 2163 Contract *ENSTransactor // Generic contract transactor binding to set the session for 2164 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 2165 } 2166 2167 // ENSRaw is an auto generated low-level Go binding around an Ethereum contract. 2168 type ENSRaw struct { 2169 Contract *ENS // Generic contract binding to access the raw methods on 2170 } 2171 2172 // ENSCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 2173 type ENSCallerRaw struct { 2174 Contract *ENSCaller // Generic read-only contract binding to access the raw methods on 2175 } 2176 2177 // ENSTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 2178 type ENSTransactorRaw struct { 2179 Contract *ENSTransactor // Generic write-only contract binding to access the raw methods on 2180 } 2181 2182 // NewENS creates a new instance of ENS, bound to a specific deployed contract. 2183 func NewENS(address common.Address, backend bind.ContractBackend) (*ENS, error) { 2184 contract, err := bindENS(address, backend, backend, backend) 2185 if err != nil { 2186 return nil, err 2187 } 2188 return &ENS{ENSCaller: ENSCaller{contract: contract}, ENSTransactor: ENSTransactor{contract: contract}, ENSFilterer: ENSFilterer{contract: contract}}, nil 2189 } 2190 2191 // NewENSCaller creates a new read-only instance of ENS, bound to a specific deployed contract. 2192 func NewENSCaller(address common.Address, caller bind.ContractCaller) (*ENSCaller, error) { 2193 contract, err := bindENS(address, caller, nil, nil) 2194 if err != nil { 2195 return nil, err 2196 } 2197 return &ENSCaller{contract: contract}, nil 2198 } 2199 2200 // NewENSTransactor creates a new write-only instance of ENS, bound to a specific deployed contract. 2201 func NewENSTransactor(address common.Address, transactor bind.ContractTransactor) (*ENSTransactor, error) { 2202 contract, err := bindENS(address, nil, transactor, nil) 2203 if err != nil { 2204 return nil, err 2205 } 2206 return &ENSTransactor{contract: contract}, nil 2207 } 2208 2209 // NewENSFilterer creates a new log filterer instance of ENS, bound to a specific deployed contract. 2210 func NewENSFilterer(address common.Address, filterer bind.ContractFilterer) (*ENSFilterer, error) { 2211 contract, err := bindENS(address, nil, nil, filterer) 2212 if err != nil { 2213 return nil, err 2214 } 2215 return &ENSFilterer{contract: contract}, nil 2216 } 2217 2218 // bindENS binds a generic wrapper to an already deployed contract. 2219 func bindENS(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 2220 parsed, err := abi.JSON(strings.NewReader(ENSABI)) 2221 if err != nil { 2222 return nil, err 2223 } 2224 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 2225 } 2226 2227 // Call invokes the (constant) contract method with params as input values and 2228 // sets the output to result. The result type might be a single field for simple 2229 // returns, a slice of interfaces for anonymous returns and a struct for named 2230 // returns. 2231 func (_ENS *ENSRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 2232 return _ENS.Contract.ENSCaller.contract.Call(opts, result, method, params...) 2233 } 2234 2235 // Transfer initiates a plain transaction to move funds to the contract, calling 2236 // its default method if one is available. 2237 func (_ENS *ENSRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 2238 return _ENS.Contract.ENSTransactor.contract.Transfer(opts) 2239 } 2240 2241 // Transact invokes the (paid) contract method with params as input values. 2242 func (_ENS *ENSRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 2243 return _ENS.Contract.ENSTransactor.contract.Transact(opts, method, params...) 2244 } 2245 2246 // Call invokes the (constant) contract method with params as input values and 2247 // sets the output to result. The result type might be a single field for simple 2248 // returns, a slice of interfaces for anonymous returns and a struct for named 2249 // returns. 2250 func (_ENS *ENSCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 2251 return _ENS.Contract.contract.Call(opts, result, method, params...) 2252 } 2253 2254 // Transfer initiates a plain transaction to move funds to the contract, calling 2255 // its default method if one is available. 2256 func (_ENS *ENSTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 2257 return _ENS.Contract.contract.Transfer(opts) 2258 } 2259 2260 // Transact invokes the (paid) contract method with params as input values. 2261 func (_ENS *ENSTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 2262 return _ENS.Contract.contract.Transact(opts, method, params...) 2263 } 2264 2265 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 2266 // 2267 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 2268 func (_ENS *ENSCaller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error) { 2269 var out []interface{} 2270 err := _ENS.contract.Call(opts, &out, "isApprovedForAll", owner, operator) 2271 2272 if err != nil { 2273 return *new(bool), err 2274 } 2275 2276 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 2277 2278 return out0, err 2279 2280 } 2281 2282 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 2283 // 2284 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 2285 func (_ENS *ENSSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 2286 return _ENS.Contract.IsApprovedForAll(&_ENS.CallOpts, owner, operator) 2287 } 2288 2289 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 2290 // 2291 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 2292 func (_ENS *ENSCallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 2293 return _ENS.Contract.IsApprovedForAll(&_ENS.CallOpts, owner, operator) 2294 } 2295 2296 // Owner is a free data retrieval call binding the contract method 0x02571be3. 2297 // 2298 // Solidity: function owner(bytes32 node) view returns(address) 2299 func (_ENS *ENSCaller) Owner(opts *bind.CallOpts, node [32]byte) (common.Address, error) { 2300 var out []interface{} 2301 err := _ENS.contract.Call(opts, &out, "owner", node) 2302 2303 if err != nil { 2304 return *new(common.Address), err 2305 } 2306 2307 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 2308 2309 return out0, err 2310 2311 } 2312 2313 // Owner is a free data retrieval call binding the contract method 0x02571be3. 2314 // 2315 // Solidity: function owner(bytes32 node) view returns(address) 2316 func (_ENS *ENSSession) Owner(node [32]byte) (common.Address, error) { 2317 return _ENS.Contract.Owner(&_ENS.CallOpts, node) 2318 } 2319 2320 // Owner is a free data retrieval call binding the contract method 0x02571be3. 2321 // 2322 // Solidity: function owner(bytes32 node) view returns(address) 2323 func (_ENS *ENSCallerSession) Owner(node [32]byte) (common.Address, error) { 2324 return _ENS.Contract.Owner(&_ENS.CallOpts, node) 2325 } 2326 2327 // RecordExists is a free data retrieval call binding the contract method 0xf79fe538. 2328 // 2329 // Solidity: function recordExists(bytes32 node) view returns(bool) 2330 func (_ENS *ENSCaller) RecordExists(opts *bind.CallOpts, node [32]byte) (bool, error) { 2331 var out []interface{} 2332 err := _ENS.contract.Call(opts, &out, "recordExists", node) 2333 2334 if err != nil { 2335 return *new(bool), err 2336 } 2337 2338 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 2339 2340 return out0, err 2341 2342 } 2343 2344 // RecordExists is a free data retrieval call binding the contract method 0xf79fe538. 2345 // 2346 // Solidity: function recordExists(bytes32 node) view returns(bool) 2347 func (_ENS *ENSSession) RecordExists(node [32]byte) (bool, error) { 2348 return _ENS.Contract.RecordExists(&_ENS.CallOpts, node) 2349 } 2350 2351 // RecordExists is a free data retrieval call binding the contract method 0xf79fe538. 2352 // 2353 // Solidity: function recordExists(bytes32 node) view returns(bool) 2354 func (_ENS *ENSCallerSession) RecordExists(node [32]byte) (bool, error) { 2355 return _ENS.Contract.RecordExists(&_ENS.CallOpts, node) 2356 } 2357 2358 // Resolver is a free data retrieval call binding the contract method 0x0178b8bf. 2359 // 2360 // Solidity: function resolver(bytes32 node) view returns(address) 2361 func (_ENS *ENSCaller) Resolver(opts *bind.CallOpts, node [32]byte) (common.Address, error) { 2362 var out []interface{} 2363 err := _ENS.contract.Call(opts, &out, "resolver", node) 2364 2365 if err != nil { 2366 return *new(common.Address), err 2367 } 2368 2369 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 2370 2371 return out0, err 2372 2373 } 2374 2375 // Resolver is a free data retrieval call binding the contract method 0x0178b8bf. 2376 // 2377 // Solidity: function resolver(bytes32 node) view returns(address) 2378 func (_ENS *ENSSession) Resolver(node [32]byte) (common.Address, error) { 2379 return _ENS.Contract.Resolver(&_ENS.CallOpts, node) 2380 } 2381 2382 // Resolver is a free data retrieval call binding the contract method 0x0178b8bf. 2383 // 2384 // Solidity: function resolver(bytes32 node) view returns(address) 2385 func (_ENS *ENSCallerSession) Resolver(node [32]byte) (common.Address, error) { 2386 return _ENS.Contract.Resolver(&_ENS.CallOpts, node) 2387 } 2388 2389 // Ttl is a free data retrieval call binding the contract method 0x16a25cbd. 2390 // 2391 // Solidity: function ttl(bytes32 node) view returns(uint64) 2392 func (_ENS *ENSCaller) Ttl(opts *bind.CallOpts, node [32]byte) (uint64, error) { 2393 var out []interface{} 2394 err := _ENS.contract.Call(opts, &out, "ttl", node) 2395 2396 if err != nil { 2397 return *new(uint64), err 2398 } 2399 2400 out0 := *abi.ConvertType(out[0], new(uint64)).(*uint64) 2401 2402 return out0, err 2403 2404 } 2405 2406 // Ttl is a free data retrieval call binding the contract method 0x16a25cbd. 2407 // 2408 // Solidity: function ttl(bytes32 node) view returns(uint64) 2409 func (_ENS *ENSSession) Ttl(node [32]byte) (uint64, error) { 2410 return _ENS.Contract.Ttl(&_ENS.CallOpts, node) 2411 } 2412 2413 // Ttl is a free data retrieval call binding the contract method 0x16a25cbd. 2414 // 2415 // Solidity: function ttl(bytes32 node) view returns(uint64) 2416 func (_ENS *ENSCallerSession) Ttl(node [32]byte) (uint64, error) { 2417 return _ENS.Contract.Ttl(&_ENS.CallOpts, node) 2418 } 2419 2420 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 2421 // 2422 // Solidity: function setApprovalForAll(address operator, bool approved) returns() 2423 func (_ENS *ENSTransactor) SetApprovalForAll(opts *bind.TransactOpts, operator common.Address, approved bool) (*types.Transaction, error) { 2424 return _ENS.contract.Transact(opts, "setApprovalForAll", operator, approved) 2425 } 2426 2427 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 2428 // 2429 // Solidity: function setApprovalForAll(address operator, bool approved) returns() 2430 func (_ENS *ENSSession) SetApprovalForAll(operator common.Address, approved bool) (*types.Transaction, error) { 2431 return _ENS.Contract.SetApprovalForAll(&_ENS.TransactOpts, operator, approved) 2432 } 2433 2434 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 2435 // 2436 // Solidity: function setApprovalForAll(address operator, bool approved) returns() 2437 func (_ENS *ENSTransactorSession) SetApprovalForAll(operator common.Address, approved bool) (*types.Transaction, error) { 2438 return _ENS.Contract.SetApprovalForAll(&_ENS.TransactOpts, operator, approved) 2439 } 2440 2441 // SetOwner is a paid mutator transaction binding the contract method 0x5b0fc9c3. 2442 // 2443 // Solidity: function setOwner(bytes32 node, address owner) returns() 2444 func (_ENS *ENSTransactor) SetOwner(opts *bind.TransactOpts, node [32]byte, owner common.Address) (*types.Transaction, error) { 2445 return _ENS.contract.Transact(opts, "setOwner", node, owner) 2446 } 2447 2448 // SetOwner is a paid mutator transaction binding the contract method 0x5b0fc9c3. 2449 // 2450 // Solidity: function setOwner(bytes32 node, address owner) returns() 2451 func (_ENS *ENSSession) SetOwner(node [32]byte, owner common.Address) (*types.Transaction, error) { 2452 return _ENS.Contract.SetOwner(&_ENS.TransactOpts, node, owner) 2453 } 2454 2455 // SetOwner is a paid mutator transaction binding the contract method 0x5b0fc9c3. 2456 // 2457 // Solidity: function setOwner(bytes32 node, address owner) returns() 2458 func (_ENS *ENSTransactorSession) SetOwner(node [32]byte, owner common.Address) (*types.Transaction, error) { 2459 return _ENS.Contract.SetOwner(&_ENS.TransactOpts, node, owner) 2460 } 2461 2462 // SetRecord is a paid mutator transaction binding the contract method 0xcf408823. 2463 // 2464 // Solidity: function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) returns() 2465 func (_ENS *ENSTransactor) SetRecord(opts *bind.TransactOpts, node [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 2466 return _ENS.contract.Transact(opts, "setRecord", node, owner, resolver, ttl) 2467 } 2468 2469 // SetRecord is a paid mutator transaction binding the contract method 0xcf408823. 2470 // 2471 // Solidity: function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) returns() 2472 func (_ENS *ENSSession) SetRecord(node [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 2473 return _ENS.Contract.SetRecord(&_ENS.TransactOpts, node, owner, resolver, ttl) 2474 } 2475 2476 // SetRecord is a paid mutator transaction binding the contract method 0xcf408823. 2477 // 2478 // Solidity: function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) returns() 2479 func (_ENS *ENSTransactorSession) SetRecord(node [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 2480 return _ENS.Contract.SetRecord(&_ENS.TransactOpts, node, owner, resolver, ttl) 2481 } 2482 2483 // SetResolver is a paid mutator transaction binding the contract method 0x1896f70a. 2484 // 2485 // Solidity: function setResolver(bytes32 node, address resolver) returns() 2486 func (_ENS *ENSTransactor) SetResolver(opts *bind.TransactOpts, node [32]byte, resolver common.Address) (*types.Transaction, error) { 2487 return _ENS.contract.Transact(opts, "setResolver", node, resolver) 2488 } 2489 2490 // SetResolver is a paid mutator transaction binding the contract method 0x1896f70a. 2491 // 2492 // Solidity: function setResolver(bytes32 node, address resolver) returns() 2493 func (_ENS *ENSSession) SetResolver(node [32]byte, resolver common.Address) (*types.Transaction, error) { 2494 return _ENS.Contract.SetResolver(&_ENS.TransactOpts, node, resolver) 2495 } 2496 2497 // SetResolver is a paid mutator transaction binding the contract method 0x1896f70a. 2498 // 2499 // Solidity: function setResolver(bytes32 node, address resolver) returns() 2500 func (_ENS *ENSTransactorSession) SetResolver(node [32]byte, resolver common.Address) (*types.Transaction, error) { 2501 return _ENS.Contract.SetResolver(&_ENS.TransactOpts, node, resolver) 2502 } 2503 2504 // SetSubnodeOwner is a paid mutator transaction binding the contract method 0x06ab5923. 2505 // 2506 // Solidity: function setSubnodeOwner(bytes32 node, bytes32 label, address owner) returns(bytes32) 2507 func (_ENS *ENSTransactor) SetSubnodeOwner(opts *bind.TransactOpts, node [32]byte, label [32]byte, owner common.Address) (*types.Transaction, error) { 2508 return _ENS.contract.Transact(opts, "setSubnodeOwner", node, label, owner) 2509 } 2510 2511 // SetSubnodeOwner is a paid mutator transaction binding the contract method 0x06ab5923. 2512 // 2513 // Solidity: function setSubnodeOwner(bytes32 node, bytes32 label, address owner) returns(bytes32) 2514 func (_ENS *ENSSession) SetSubnodeOwner(node [32]byte, label [32]byte, owner common.Address) (*types.Transaction, error) { 2515 return _ENS.Contract.SetSubnodeOwner(&_ENS.TransactOpts, node, label, owner) 2516 } 2517 2518 // SetSubnodeOwner is a paid mutator transaction binding the contract method 0x06ab5923. 2519 // 2520 // Solidity: function setSubnodeOwner(bytes32 node, bytes32 label, address owner) returns(bytes32) 2521 func (_ENS *ENSTransactorSession) SetSubnodeOwner(node [32]byte, label [32]byte, owner common.Address) (*types.Transaction, error) { 2522 return _ENS.Contract.SetSubnodeOwner(&_ENS.TransactOpts, node, label, owner) 2523 } 2524 2525 // SetSubnodeRecord is a paid mutator transaction binding the contract method 0x5ef2c7f0. 2526 // 2527 // Solidity: function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) returns() 2528 func (_ENS *ENSTransactor) SetSubnodeRecord(opts *bind.TransactOpts, node [32]byte, label [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 2529 return _ENS.contract.Transact(opts, "setSubnodeRecord", node, label, owner, resolver, ttl) 2530 } 2531 2532 // SetSubnodeRecord is a paid mutator transaction binding the contract method 0x5ef2c7f0. 2533 // 2534 // Solidity: function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) returns() 2535 func (_ENS *ENSSession) SetSubnodeRecord(node [32]byte, label [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 2536 return _ENS.Contract.SetSubnodeRecord(&_ENS.TransactOpts, node, label, owner, resolver, ttl) 2537 } 2538 2539 // SetSubnodeRecord is a paid mutator transaction binding the contract method 0x5ef2c7f0. 2540 // 2541 // Solidity: function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) returns() 2542 func (_ENS *ENSTransactorSession) SetSubnodeRecord(node [32]byte, label [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 2543 return _ENS.Contract.SetSubnodeRecord(&_ENS.TransactOpts, node, label, owner, resolver, ttl) 2544 } 2545 2546 // SetTTL is a paid mutator transaction binding the contract method 0x14ab9038. 2547 // 2548 // Solidity: function setTTL(bytes32 node, uint64 ttl) returns() 2549 func (_ENS *ENSTransactor) SetTTL(opts *bind.TransactOpts, node [32]byte, ttl uint64) (*types.Transaction, error) { 2550 return _ENS.contract.Transact(opts, "setTTL", node, ttl) 2551 } 2552 2553 // SetTTL is a paid mutator transaction binding the contract method 0x14ab9038. 2554 // 2555 // Solidity: function setTTL(bytes32 node, uint64 ttl) returns() 2556 func (_ENS *ENSSession) SetTTL(node [32]byte, ttl uint64) (*types.Transaction, error) { 2557 return _ENS.Contract.SetTTL(&_ENS.TransactOpts, node, ttl) 2558 } 2559 2560 // SetTTL is a paid mutator transaction binding the contract method 0x14ab9038. 2561 // 2562 // Solidity: function setTTL(bytes32 node, uint64 ttl) returns() 2563 func (_ENS *ENSTransactorSession) SetTTL(node [32]byte, ttl uint64) (*types.Transaction, error) { 2564 return _ENS.Contract.SetTTL(&_ENS.TransactOpts, node, ttl) 2565 } 2566 2567 // ENSApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the ENS contract. 2568 type ENSApprovalForAllIterator struct { 2569 Event *ENSApprovalForAll // Event containing the contract specifics and raw log 2570 2571 contract *bind.BoundContract // Generic contract to use for unpacking event data 2572 event string // Event name to use for unpacking event data 2573 2574 logs chan types.Log // Log channel receiving the found contract events 2575 sub ethereum.Subscription // Subscription for errors, completion and termination 2576 done bool // Whether the subscription completed delivering logs 2577 fail error // Occurred error to stop iteration 2578 } 2579 2580 // Next advances the iterator to the subsequent event, returning whether there 2581 // are any more events found. In case of a retrieval or parsing error, false is 2582 // returned and Error() can be queried for the exact failure. 2583 func (it *ENSApprovalForAllIterator) Next() bool { 2584 // If the iterator failed, stop iterating 2585 if it.fail != nil { 2586 return false 2587 } 2588 // If the iterator completed, deliver directly whatever's available 2589 if it.done { 2590 select { 2591 case log := <-it.logs: 2592 it.Event = new(ENSApprovalForAll) 2593 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2594 it.fail = err 2595 return false 2596 } 2597 it.Event.Raw = log 2598 return true 2599 2600 default: 2601 return false 2602 } 2603 } 2604 // Iterator still in progress, wait for either a data or an error event 2605 select { 2606 case log := <-it.logs: 2607 it.Event = new(ENSApprovalForAll) 2608 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2609 it.fail = err 2610 return false 2611 } 2612 it.Event.Raw = log 2613 return true 2614 2615 case err := <-it.sub.Err(): 2616 it.done = true 2617 it.fail = err 2618 return it.Next() 2619 } 2620 } 2621 2622 // Error returns any retrieval or parsing error occurred during filtering. 2623 func (it *ENSApprovalForAllIterator) Error() error { 2624 return it.fail 2625 } 2626 2627 // Close terminates the iteration process, releasing any pending underlying 2628 // resources. 2629 func (it *ENSApprovalForAllIterator) Close() error { 2630 it.sub.Unsubscribe() 2631 return nil 2632 } 2633 2634 // ENSApprovalForAll represents a ApprovalForAll event raised by the ENS contract. 2635 type ENSApprovalForAll struct { 2636 Owner common.Address 2637 Operator common.Address 2638 Approved bool 2639 Raw types.Log // Blockchain specific contextual infos 2640 } 2641 2642 // FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 2643 // 2644 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 2645 func (_ENS *ENSFilterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*ENSApprovalForAllIterator, error) { 2646 2647 var ownerRule []interface{} 2648 for _, ownerItem := range owner { 2649 ownerRule = append(ownerRule, ownerItem) 2650 } 2651 var operatorRule []interface{} 2652 for _, operatorItem := range operator { 2653 operatorRule = append(operatorRule, operatorItem) 2654 } 2655 2656 logs, sub, err := _ENS.contract.FilterLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 2657 if err != nil { 2658 return nil, err 2659 } 2660 return &ENSApprovalForAllIterator{contract: _ENS.contract, event: "ApprovalForAll", logs: logs, sub: sub}, nil 2661 } 2662 2663 // WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 2664 // 2665 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 2666 func (_ENS *ENSFilterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *ENSApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error) { 2667 2668 var ownerRule []interface{} 2669 for _, ownerItem := range owner { 2670 ownerRule = append(ownerRule, ownerItem) 2671 } 2672 var operatorRule []interface{} 2673 for _, operatorItem := range operator { 2674 operatorRule = append(operatorRule, operatorItem) 2675 } 2676 2677 logs, sub, err := _ENS.contract.WatchLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 2678 if err != nil { 2679 return nil, err 2680 } 2681 return event.NewSubscription(func(quit <-chan struct{}) error { 2682 defer sub.Unsubscribe() 2683 for { 2684 select { 2685 case log := <-logs: 2686 // New log arrived, parse the event and forward to the user 2687 event := new(ENSApprovalForAll) 2688 if err := _ENS.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 2689 return err 2690 } 2691 event.Raw = log 2692 2693 select { 2694 case sink <- event: 2695 case err := <-sub.Err(): 2696 return err 2697 case <-quit: 2698 return nil 2699 } 2700 case err := <-sub.Err(): 2701 return err 2702 case <-quit: 2703 return nil 2704 } 2705 } 2706 }), nil 2707 } 2708 2709 // ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 2710 // 2711 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 2712 func (_ENS *ENSFilterer) ParseApprovalForAll(log types.Log) (*ENSApprovalForAll, error) { 2713 event := new(ENSApprovalForAll) 2714 if err := _ENS.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 2715 return nil, err 2716 } 2717 event.Raw = log 2718 return event, nil 2719 } 2720 2721 // ENSNewOwnerIterator is returned from FilterNewOwner and is used to iterate over the raw logs and unpacked data for NewOwner events raised by the ENS contract. 2722 type ENSNewOwnerIterator struct { 2723 Event *ENSNewOwner // Event containing the contract specifics and raw log 2724 2725 contract *bind.BoundContract // Generic contract to use for unpacking event data 2726 event string // Event name to use for unpacking event data 2727 2728 logs chan types.Log // Log channel receiving the found contract events 2729 sub ethereum.Subscription // Subscription for errors, completion and termination 2730 done bool // Whether the subscription completed delivering logs 2731 fail error // Occurred error to stop iteration 2732 } 2733 2734 // Next advances the iterator to the subsequent event, returning whether there 2735 // are any more events found. In case of a retrieval or parsing error, false is 2736 // returned and Error() can be queried for the exact failure. 2737 func (it *ENSNewOwnerIterator) Next() bool { 2738 // If the iterator failed, stop iterating 2739 if it.fail != nil { 2740 return false 2741 } 2742 // If the iterator completed, deliver directly whatever's available 2743 if it.done { 2744 select { 2745 case log := <-it.logs: 2746 it.Event = new(ENSNewOwner) 2747 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2748 it.fail = err 2749 return false 2750 } 2751 it.Event.Raw = log 2752 return true 2753 2754 default: 2755 return false 2756 } 2757 } 2758 // Iterator still in progress, wait for either a data or an error event 2759 select { 2760 case log := <-it.logs: 2761 it.Event = new(ENSNewOwner) 2762 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2763 it.fail = err 2764 return false 2765 } 2766 it.Event.Raw = log 2767 return true 2768 2769 case err := <-it.sub.Err(): 2770 it.done = true 2771 it.fail = err 2772 return it.Next() 2773 } 2774 } 2775 2776 // Error returns any retrieval or parsing error occurred during filtering. 2777 func (it *ENSNewOwnerIterator) Error() error { 2778 return it.fail 2779 } 2780 2781 // Close terminates the iteration process, releasing any pending underlying 2782 // resources. 2783 func (it *ENSNewOwnerIterator) Close() error { 2784 it.sub.Unsubscribe() 2785 return nil 2786 } 2787 2788 // ENSNewOwner represents a NewOwner event raised by the ENS contract. 2789 type ENSNewOwner struct { 2790 Node [32]byte 2791 Label [32]byte 2792 Owner common.Address 2793 Raw types.Log // Blockchain specific contextual infos 2794 } 2795 2796 // FilterNewOwner is a free log retrieval operation binding the contract event 0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82. 2797 // 2798 // Solidity: event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner) 2799 func (_ENS *ENSFilterer) FilterNewOwner(opts *bind.FilterOpts, node [][32]byte, label [][32]byte) (*ENSNewOwnerIterator, error) { 2800 2801 var nodeRule []interface{} 2802 for _, nodeItem := range node { 2803 nodeRule = append(nodeRule, nodeItem) 2804 } 2805 var labelRule []interface{} 2806 for _, labelItem := range label { 2807 labelRule = append(labelRule, labelItem) 2808 } 2809 2810 logs, sub, err := _ENS.contract.FilterLogs(opts, "NewOwner", nodeRule, labelRule) 2811 if err != nil { 2812 return nil, err 2813 } 2814 return &ENSNewOwnerIterator{contract: _ENS.contract, event: "NewOwner", logs: logs, sub: sub}, nil 2815 } 2816 2817 // WatchNewOwner is a free log subscription operation binding the contract event 0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82. 2818 // 2819 // Solidity: event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner) 2820 func (_ENS *ENSFilterer) WatchNewOwner(opts *bind.WatchOpts, sink chan<- *ENSNewOwner, node [][32]byte, label [][32]byte) (event.Subscription, error) { 2821 2822 var nodeRule []interface{} 2823 for _, nodeItem := range node { 2824 nodeRule = append(nodeRule, nodeItem) 2825 } 2826 var labelRule []interface{} 2827 for _, labelItem := range label { 2828 labelRule = append(labelRule, labelItem) 2829 } 2830 2831 logs, sub, err := _ENS.contract.WatchLogs(opts, "NewOwner", nodeRule, labelRule) 2832 if err != nil { 2833 return nil, err 2834 } 2835 return event.NewSubscription(func(quit <-chan struct{}) error { 2836 defer sub.Unsubscribe() 2837 for { 2838 select { 2839 case log := <-logs: 2840 // New log arrived, parse the event and forward to the user 2841 event := new(ENSNewOwner) 2842 if err := _ENS.contract.UnpackLog(event, "NewOwner", log); err != nil { 2843 return err 2844 } 2845 event.Raw = log 2846 2847 select { 2848 case sink <- event: 2849 case err := <-sub.Err(): 2850 return err 2851 case <-quit: 2852 return nil 2853 } 2854 case err := <-sub.Err(): 2855 return err 2856 case <-quit: 2857 return nil 2858 } 2859 } 2860 }), nil 2861 } 2862 2863 // ParseNewOwner is a log parse operation binding the contract event 0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82. 2864 // 2865 // Solidity: event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner) 2866 func (_ENS *ENSFilterer) ParseNewOwner(log types.Log) (*ENSNewOwner, error) { 2867 event := new(ENSNewOwner) 2868 if err := _ENS.contract.UnpackLog(event, "NewOwner", log); err != nil { 2869 return nil, err 2870 } 2871 event.Raw = log 2872 return event, nil 2873 } 2874 2875 // ENSNewResolverIterator is returned from FilterNewResolver and is used to iterate over the raw logs and unpacked data for NewResolver events raised by the ENS contract. 2876 type ENSNewResolverIterator struct { 2877 Event *ENSNewResolver // Event containing the contract specifics and raw log 2878 2879 contract *bind.BoundContract // Generic contract to use for unpacking event data 2880 event string // Event name to use for unpacking event data 2881 2882 logs chan types.Log // Log channel receiving the found contract events 2883 sub ethereum.Subscription // Subscription for errors, completion and termination 2884 done bool // Whether the subscription completed delivering logs 2885 fail error // Occurred error to stop iteration 2886 } 2887 2888 // Next advances the iterator to the subsequent event, returning whether there 2889 // are any more events found. In case of a retrieval or parsing error, false is 2890 // returned and Error() can be queried for the exact failure. 2891 func (it *ENSNewResolverIterator) Next() bool { 2892 // If the iterator failed, stop iterating 2893 if it.fail != nil { 2894 return false 2895 } 2896 // If the iterator completed, deliver directly whatever's available 2897 if it.done { 2898 select { 2899 case log := <-it.logs: 2900 it.Event = new(ENSNewResolver) 2901 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2902 it.fail = err 2903 return false 2904 } 2905 it.Event.Raw = log 2906 return true 2907 2908 default: 2909 return false 2910 } 2911 } 2912 // Iterator still in progress, wait for either a data or an error event 2913 select { 2914 case log := <-it.logs: 2915 it.Event = new(ENSNewResolver) 2916 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2917 it.fail = err 2918 return false 2919 } 2920 it.Event.Raw = log 2921 return true 2922 2923 case err := <-it.sub.Err(): 2924 it.done = true 2925 it.fail = err 2926 return it.Next() 2927 } 2928 } 2929 2930 // Error returns any retrieval or parsing error occurred during filtering. 2931 func (it *ENSNewResolverIterator) Error() error { 2932 return it.fail 2933 } 2934 2935 // Close terminates the iteration process, releasing any pending underlying 2936 // resources. 2937 func (it *ENSNewResolverIterator) Close() error { 2938 it.sub.Unsubscribe() 2939 return nil 2940 } 2941 2942 // ENSNewResolver represents a NewResolver event raised by the ENS contract. 2943 type ENSNewResolver struct { 2944 Node [32]byte 2945 Resolver common.Address 2946 Raw types.Log // Blockchain specific contextual infos 2947 } 2948 2949 // FilterNewResolver is a free log retrieval operation binding the contract event 0x335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0. 2950 // 2951 // Solidity: event NewResolver(bytes32 indexed node, address resolver) 2952 func (_ENS *ENSFilterer) FilterNewResolver(opts *bind.FilterOpts, node [][32]byte) (*ENSNewResolverIterator, error) { 2953 2954 var nodeRule []interface{} 2955 for _, nodeItem := range node { 2956 nodeRule = append(nodeRule, nodeItem) 2957 } 2958 2959 logs, sub, err := _ENS.contract.FilterLogs(opts, "NewResolver", nodeRule) 2960 if err != nil { 2961 return nil, err 2962 } 2963 return &ENSNewResolverIterator{contract: _ENS.contract, event: "NewResolver", logs: logs, sub: sub}, nil 2964 } 2965 2966 // WatchNewResolver is a free log subscription operation binding the contract event 0x335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0. 2967 // 2968 // Solidity: event NewResolver(bytes32 indexed node, address resolver) 2969 func (_ENS *ENSFilterer) WatchNewResolver(opts *bind.WatchOpts, sink chan<- *ENSNewResolver, node [][32]byte) (event.Subscription, error) { 2970 2971 var nodeRule []interface{} 2972 for _, nodeItem := range node { 2973 nodeRule = append(nodeRule, nodeItem) 2974 } 2975 2976 logs, sub, err := _ENS.contract.WatchLogs(opts, "NewResolver", nodeRule) 2977 if err != nil { 2978 return nil, err 2979 } 2980 return event.NewSubscription(func(quit <-chan struct{}) error { 2981 defer sub.Unsubscribe() 2982 for { 2983 select { 2984 case log := <-logs: 2985 // New log arrived, parse the event and forward to the user 2986 event := new(ENSNewResolver) 2987 if err := _ENS.contract.UnpackLog(event, "NewResolver", log); err != nil { 2988 return err 2989 } 2990 event.Raw = log 2991 2992 select { 2993 case sink <- event: 2994 case err := <-sub.Err(): 2995 return err 2996 case <-quit: 2997 return nil 2998 } 2999 case err := <-sub.Err(): 3000 return err 3001 case <-quit: 3002 return nil 3003 } 3004 } 3005 }), nil 3006 } 3007 3008 // ParseNewResolver is a log parse operation binding the contract event 0x335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0. 3009 // 3010 // Solidity: event NewResolver(bytes32 indexed node, address resolver) 3011 func (_ENS *ENSFilterer) ParseNewResolver(log types.Log) (*ENSNewResolver, error) { 3012 event := new(ENSNewResolver) 3013 if err := _ENS.contract.UnpackLog(event, "NewResolver", log); err != nil { 3014 return nil, err 3015 } 3016 event.Raw = log 3017 return event, nil 3018 } 3019 3020 // ENSNewTTLIterator is returned from FilterNewTTL and is used to iterate over the raw logs and unpacked data for NewTTL events raised by the ENS contract. 3021 type ENSNewTTLIterator struct { 3022 Event *ENSNewTTL // Event containing the contract specifics and raw log 3023 3024 contract *bind.BoundContract // Generic contract to use for unpacking event data 3025 event string // Event name to use for unpacking event data 3026 3027 logs chan types.Log // Log channel receiving the found contract events 3028 sub ethereum.Subscription // Subscription for errors, completion and termination 3029 done bool // Whether the subscription completed delivering logs 3030 fail error // Occurred error to stop iteration 3031 } 3032 3033 // Next advances the iterator to the subsequent event, returning whether there 3034 // are any more events found. In case of a retrieval or parsing error, false is 3035 // returned and Error() can be queried for the exact failure. 3036 func (it *ENSNewTTLIterator) Next() bool { 3037 // If the iterator failed, stop iterating 3038 if it.fail != nil { 3039 return false 3040 } 3041 // If the iterator completed, deliver directly whatever's available 3042 if it.done { 3043 select { 3044 case log := <-it.logs: 3045 it.Event = new(ENSNewTTL) 3046 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3047 it.fail = err 3048 return false 3049 } 3050 it.Event.Raw = log 3051 return true 3052 3053 default: 3054 return false 3055 } 3056 } 3057 // Iterator still in progress, wait for either a data or an error event 3058 select { 3059 case log := <-it.logs: 3060 it.Event = new(ENSNewTTL) 3061 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3062 it.fail = err 3063 return false 3064 } 3065 it.Event.Raw = log 3066 return true 3067 3068 case err := <-it.sub.Err(): 3069 it.done = true 3070 it.fail = err 3071 return it.Next() 3072 } 3073 } 3074 3075 // Error returns any retrieval or parsing error occurred during filtering. 3076 func (it *ENSNewTTLIterator) Error() error { 3077 return it.fail 3078 } 3079 3080 // Close terminates the iteration process, releasing any pending underlying 3081 // resources. 3082 func (it *ENSNewTTLIterator) Close() error { 3083 it.sub.Unsubscribe() 3084 return nil 3085 } 3086 3087 // ENSNewTTL represents a NewTTL event raised by the ENS contract. 3088 type ENSNewTTL struct { 3089 Node [32]byte 3090 Ttl uint64 3091 Raw types.Log // Blockchain specific contextual infos 3092 } 3093 3094 // FilterNewTTL is a free log retrieval operation binding the contract event 0x1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68. 3095 // 3096 // Solidity: event NewTTL(bytes32 indexed node, uint64 ttl) 3097 func (_ENS *ENSFilterer) FilterNewTTL(opts *bind.FilterOpts, node [][32]byte) (*ENSNewTTLIterator, error) { 3098 3099 var nodeRule []interface{} 3100 for _, nodeItem := range node { 3101 nodeRule = append(nodeRule, nodeItem) 3102 } 3103 3104 logs, sub, err := _ENS.contract.FilterLogs(opts, "NewTTL", nodeRule) 3105 if err != nil { 3106 return nil, err 3107 } 3108 return &ENSNewTTLIterator{contract: _ENS.contract, event: "NewTTL", logs: logs, sub: sub}, nil 3109 } 3110 3111 // WatchNewTTL is a free log subscription operation binding the contract event 0x1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68. 3112 // 3113 // Solidity: event NewTTL(bytes32 indexed node, uint64 ttl) 3114 func (_ENS *ENSFilterer) WatchNewTTL(opts *bind.WatchOpts, sink chan<- *ENSNewTTL, node [][32]byte) (event.Subscription, error) { 3115 3116 var nodeRule []interface{} 3117 for _, nodeItem := range node { 3118 nodeRule = append(nodeRule, nodeItem) 3119 } 3120 3121 logs, sub, err := _ENS.contract.WatchLogs(opts, "NewTTL", nodeRule) 3122 if err != nil { 3123 return nil, err 3124 } 3125 return event.NewSubscription(func(quit <-chan struct{}) error { 3126 defer sub.Unsubscribe() 3127 for { 3128 select { 3129 case log := <-logs: 3130 // New log arrived, parse the event and forward to the user 3131 event := new(ENSNewTTL) 3132 if err := _ENS.contract.UnpackLog(event, "NewTTL", log); err != nil { 3133 return err 3134 } 3135 event.Raw = log 3136 3137 select { 3138 case sink <- event: 3139 case err := <-sub.Err(): 3140 return err 3141 case <-quit: 3142 return nil 3143 } 3144 case err := <-sub.Err(): 3145 return err 3146 case <-quit: 3147 return nil 3148 } 3149 } 3150 }), nil 3151 } 3152 3153 // ParseNewTTL is a log parse operation binding the contract event 0x1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68. 3154 // 3155 // Solidity: event NewTTL(bytes32 indexed node, uint64 ttl) 3156 func (_ENS *ENSFilterer) ParseNewTTL(log types.Log) (*ENSNewTTL, error) { 3157 event := new(ENSNewTTL) 3158 if err := _ENS.contract.UnpackLog(event, "NewTTL", log); err != nil { 3159 return nil, err 3160 } 3161 event.Raw = log 3162 return event, nil 3163 } 3164 3165 // ENSTransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ENS contract. 3166 type ENSTransferIterator struct { 3167 Event *ENSTransfer // Event containing the contract specifics and raw log 3168 3169 contract *bind.BoundContract // Generic contract to use for unpacking event data 3170 event string // Event name to use for unpacking event data 3171 3172 logs chan types.Log // Log channel receiving the found contract events 3173 sub ethereum.Subscription // Subscription for errors, completion and termination 3174 done bool // Whether the subscription completed delivering logs 3175 fail error // Occurred error to stop iteration 3176 } 3177 3178 // Next advances the iterator to the subsequent event, returning whether there 3179 // are any more events found. In case of a retrieval or parsing error, false is 3180 // returned and Error() can be queried for the exact failure. 3181 func (it *ENSTransferIterator) Next() bool { 3182 // If the iterator failed, stop iterating 3183 if it.fail != nil { 3184 return false 3185 } 3186 // If the iterator completed, deliver directly whatever's available 3187 if it.done { 3188 select { 3189 case log := <-it.logs: 3190 it.Event = new(ENSTransfer) 3191 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3192 it.fail = err 3193 return false 3194 } 3195 it.Event.Raw = log 3196 return true 3197 3198 default: 3199 return false 3200 } 3201 } 3202 // Iterator still in progress, wait for either a data or an error event 3203 select { 3204 case log := <-it.logs: 3205 it.Event = new(ENSTransfer) 3206 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3207 it.fail = err 3208 return false 3209 } 3210 it.Event.Raw = log 3211 return true 3212 3213 case err := <-it.sub.Err(): 3214 it.done = true 3215 it.fail = err 3216 return it.Next() 3217 } 3218 } 3219 3220 // Error returns any retrieval or parsing error occurred during filtering. 3221 func (it *ENSTransferIterator) Error() error { 3222 return it.fail 3223 } 3224 3225 // Close terminates the iteration process, releasing any pending underlying 3226 // resources. 3227 func (it *ENSTransferIterator) Close() error { 3228 it.sub.Unsubscribe() 3229 return nil 3230 } 3231 3232 // ENSTransfer represents a Transfer event raised by the ENS contract. 3233 type ENSTransfer struct { 3234 Node [32]byte 3235 Owner common.Address 3236 Raw types.Log // Blockchain specific contextual infos 3237 } 3238 3239 // FilterTransfer is a free log retrieval operation binding the contract event 0xd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266. 3240 // 3241 // Solidity: event Transfer(bytes32 indexed node, address owner) 3242 func (_ENS *ENSFilterer) FilterTransfer(opts *bind.FilterOpts, node [][32]byte) (*ENSTransferIterator, error) { 3243 3244 var nodeRule []interface{} 3245 for _, nodeItem := range node { 3246 nodeRule = append(nodeRule, nodeItem) 3247 } 3248 3249 logs, sub, err := _ENS.contract.FilterLogs(opts, "Transfer", nodeRule) 3250 if err != nil { 3251 return nil, err 3252 } 3253 return &ENSTransferIterator{contract: _ENS.contract, event: "Transfer", logs: logs, sub: sub}, nil 3254 } 3255 3256 // WatchTransfer is a free log subscription operation binding the contract event 0xd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266. 3257 // 3258 // Solidity: event Transfer(bytes32 indexed node, address owner) 3259 func (_ENS *ENSFilterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ENSTransfer, node [][32]byte) (event.Subscription, error) { 3260 3261 var nodeRule []interface{} 3262 for _, nodeItem := range node { 3263 nodeRule = append(nodeRule, nodeItem) 3264 } 3265 3266 logs, sub, err := _ENS.contract.WatchLogs(opts, "Transfer", nodeRule) 3267 if err != nil { 3268 return nil, err 3269 } 3270 return event.NewSubscription(func(quit <-chan struct{}) error { 3271 defer sub.Unsubscribe() 3272 for { 3273 select { 3274 case log := <-logs: 3275 // New log arrived, parse the event and forward to the user 3276 event := new(ENSTransfer) 3277 if err := _ENS.contract.UnpackLog(event, "Transfer", log); err != nil { 3278 return err 3279 } 3280 event.Raw = log 3281 3282 select { 3283 case sink <- event: 3284 case err := <-sub.Err(): 3285 return err 3286 case <-quit: 3287 return nil 3288 } 3289 case err := <-sub.Err(): 3290 return err 3291 case <-quit: 3292 return nil 3293 } 3294 } 3295 }), nil 3296 } 3297 3298 // ParseTransfer is a log parse operation binding the contract event 0xd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266. 3299 // 3300 // Solidity: event Transfer(bytes32 indexed node, address owner) 3301 func (_ENS *ENSFilterer) ParseTransfer(log types.Log) (*ENSTransfer, error) { 3302 event := new(ENSTransfer) 3303 if err := _ENS.contract.UnpackLog(event, "Transfer", log); err != nil { 3304 return nil, err 3305 } 3306 event.Raw = log 3307 return event, nil 3308 } 3309 3310 // ENSRegistryABI is the input ABI used to generate the binding from. 3311 const ENSRegistryABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"resolver\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"label\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setSubnodeOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setTTL\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"ttl\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"label\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"resolver\",\"type\":\"address\"},{\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setSubnodeRecord\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"operator\",\"type\":\"address\"},{\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"resolver\",\"type\":\"address\"},{\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setRecord\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"recordExists\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"label\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"NewOwner\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"NewResolver\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"NewTTL\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"}]" 3312 3313 // ENSRegistryFuncSigs maps the 4-byte function signature to its string representation. 3314 var ENSRegistryFuncSigs = map[string]string{ 3315 "e985e9c5": "isApprovedForAll(address,address)", 3316 "02571be3": "owner(bytes32)", 3317 "f79fe538": "recordExists(bytes32)", 3318 "0178b8bf": "resolver(bytes32)", 3319 "a22cb465": "setApprovalForAll(address,bool)", 3320 "5b0fc9c3": "setOwner(bytes32,address)", 3321 "cf408823": "setRecord(bytes32,address,address,uint64)", 3322 "1896f70a": "setResolver(bytes32,address)", 3323 "06ab5923": "setSubnodeOwner(bytes32,bytes32,address)", 3324 "5ef2c7f0": "setSubnodeRecord(bytes32,bytes32,address,address,uint64)", 3325 "14ab9038": "setTTL(bytes32,uint64)", 3326 "16a25cbd": "ttl(bytes32)", 3327 } 3328 3329 // ENSRegistry is an auto generated Go binding around an Ethereum contract. 3330 type ENSRegistry struct { 3331 ENSRegistryCaller // Read-only binding to the contract 3332 ENSRegistryTransactor // Write-only binding to the contract 3333 ENSRegistryFilterer // Log filterer for contract events 3334 } 3335 3336 // ENSRegistryCaller is an auto generated read-only Go binding around an Ethereum contract. 3337 type ENSRegistryCaller struct { 3338 contract *bind.BoundContract // Generic contract wrapper for the low level calls 3339 } 3340 3341 // ENSRegistryTransactor is an auto generated write-only Go binding around an Ethereum contract. 3342 type ENSRegistryTransactor struct { 3343 contract *bind.BoundContract // Generic contract wrapper for the low level calls 3344 } 3345 3346 // ENSRegistryFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 3347 type ENSRegistryFilterer struct { 3348 contract *bind.BoundContract // Generic contract wrapper for the low level calls 3349 } 3350 3351 // ENSRegistrySession is an auto generated Go binding around an Ethereum contract, 3352 // with pre-set call and transact options. 3353 type ENSRegistrySession struct { 3354 Contract *ENSRegistry // Generic contract binding to set the session for 3355 CallOpts bind.CallOpts // Call options to use throughout this session 3356 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 3357 } 3358 3359 // ENSRegistryCallerSession is an auto generated read-only Go binding around an Ethereum contract, 3360 // with pre-set call options. 3361 type ENSRegistryCallerSession struct { 3362 Contract *ENSRegistryCaller // Generic contract caller binding to set the session for 3363 CallOpts bind.CallOpts // Call options to use throughout this session 3364 } 3365 3366 // ENSRegistryTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 3367 // with pre-set transact options. 3368 type ENSRegistryTransactorSession struct { 3369 Contract *ENSRegistryTransactor // Generic contract transactor binding to set the session for 3370 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 3371 } 3372 3373 // ENSRegistryRaw is an auto generated low-level Go binding around an Ethereum contract. 3374 type ENSRegistryRaw struct { 3375 Contract *ENSRegistry // Generic contract binding to access the raw methods on 3376 } 3377 3378 // ENSRegistryCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 3379 type ENSRegistryCallerRaw struct { 3380 Contract *ENSRegistryCaller // Generic read-only contract binding to access the raw methods on 3381 } 3382 3383 // ENSRegistryTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 3384 type ENSRegistryTransactorRaw struct { 3385 Contract *ENSRegistryTransactor // Generic write-only contract binding to access the raw methods on 3386 } 3387 3388 // NewENSRegistry creates a new instance of ENSRegistry, bound to a specific deployed contract. 3389 func NewENSRegistry(address common.Address, backend bind.ContractBackend) (*ENSRegistry, error) { 3390 contract, err := bindENSRegistry(address, backend, backend, backend) 3391 if err != nil { 3392 return nil, err 3393 } 3394 return &ENSRegistry{ENSRegistryCaller: ENSRegistryCaller{contract: contract}, ENSRegistryTransactor: ENSRegistryTransactor{contract: contract}, ENSRegistryFilterer: ENSRegistryFilterer{contract: contract}}, nil 3395 } 3396 3397 // NewENSRegistryCaller creates a new read-only instance of ENSRegistry, bound to a specific deployed contract. 3398 func NewENSRegistryCaller(address common.Address, caller bind.ContractCaller) (*ENSRegistryCaller, error) { 3399 contract, err := bindENSRegistry(address, caller, nil, nil) 3400 if err != nil { 3401 return nil, err 3402 } 3403 return &ENSRegistryCaller{contract: contract}, nil 3404 } 3405 3406 // NewENSRegistryTransactor creates a new write-only instance of ENSRegistry, bound to a specific deployed contract. 3407 func NewENSRegistryTransactor(address common.Address, transactor bind.ContractTransactor) (*ENSRegistryTransactor, error) { 3408 contract, err := bindENSRegistry(address, nil, transactor, nil) 3409 if err != nil { 3410 return nil, err 3411 } 3412 return &ENSRegistryTransactor{contract: contract}, nil 3413 } 3414 3415 // NewENSRegistryFilterer creates a new log filterer instance of ENSRegistry, bound to a specific deployed contract. 3416 func NewENSRegistryFilterer(address common.Address, filterer bind.ContractFilterer) (*ENSRegistryFilterer, error) { 3417 contract, err := bindENSRegistry(address, nil, nil, filterer) 3418 if err != nil { 3419 return nil, err 3420 } 3421 return &ENSRegistryFilterer{contract: contract}, nil 3422 } 3423 3424 // bindENSRegistry binds a generic wrapper to an already deployed contract. 3425 func bindENSRegistry(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 3426 parsed, err := abi.JSON(strings.NewReader(ENSRegistryABI)) 3427 if err != nil { 3428 return nil, err 3429 } 3430 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 3431 } 3432 3433 // Call invokes the (constant) contract method with params as input values and 3434 // sets the output to result. The result type might be a single field for simple 3435 // returns, a slice of interfaces for anonymous returns and a struct for named 3436 // returns. 3437 func (_ENSRegistry *ENSRegistryRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 3438 return _ENSRegistry.Contract.ENSRegistryCaller.contract.Call(opts, result, method, params...) 3439 } 3440 3441 // Transfer initiates a plain transaction to move funds to the contract, calling 3442 // its default method if one is available. 3443 func (_ENSRegistry *ENSRegistryRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 3444 return _ENSRegistry.Contract.ENSRegistryTransactor.contract.Transfer(opts) 3445 } 3446 3447 // Transact invokes the (paid) contract method with params as input values. 3448 func (_ENSRegistry *ENSRegistryRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 3449 return _ENSRegistry.Contract.ENSRegistryTransactor.contract.Transact(opts, method, params...) 3450 } 3451 3452 // Call invokes the (constant) contract method with params as input values and 3453 // sets the output to result. The result type might be a single field for simple 3454 // returns, a slice of interfaces for anonymous returns and a struct for named 3455 // returns. 3456 func (_ENSRegistry *ENSRegistryCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 3457 return _ENSRegistry.Contract.contract.Call(opts, result, method, params...) 3458 } 3459 3460 // Transfer initiates a plain transaction to move funds to the contract, calling 3461 // its default method if one is available. 3462 func (_ENSRegistry *ENSRegistryTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 3463 return _ENSRegistry.Contract.contract.Transfer(opts) 3464 } 3465 3466 // Transact invokes the (paid) contract method with params as input values. 3467 func (_ENSRegistry *ENSRegistryTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 3468 return _ENSRegistry.Contract.contract.Transact(opts, method, params...) 3469 } 3470 3471 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 3472 // 3473 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 3474 func (_ENSRegistry *ENSRegistryCaller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error) { 3475 var out []interface{} 3476 err := _ENSRegistry.contract.Call(opts, &out, "isApprovedForAll", owner, operator) 3477 3478 if err != nil { 3479 return *new(bool), err 3480 } 3481 3482 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 3483 3484 return out0, err 3485 3486 } 3487 3488 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 3489 // 3490 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 3491 func (_ENSRegistry *ENSRegistrySession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 3492 return _ENSRegistry.Contract.IsApprovedForAll(&_ENSRegistry.CallOpts, owner, operator) 3493 } 3494 3495 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 3496 // 3497 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 3498 func (_ENSRegistry *ENSRegistryCallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 3499 return _ENSRegistry.Contract.IsApprovedForAll(&_ENSRegistry.CallOpts, owner, operator) 3500 } 3501 3502 // Owner is a free data retrieval call binding the contract method 0x02571be3. 3503 // 3504 // Solidity: function owner(bytes32 node) view returns(address) 3505 func (_ENSRegistry *ENSRegistryCaller) Owner(opts *bind.CallOpts, node [32]byte) (common.Address, error) { 3506 var out []interface{} 3507 err := _ENSRegistry.contract.Call(opts, &out, "owner", node) 3508 3509 if err != nil { 3510 return *new(common.Address), err 3511 } 3512 3513 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 3514 3515 return out0, err 3516 3517 } 3518 3519 // Owner is a free data retrieval call binding the contract method 0x02571be3. 3520 // 3521 // Solidity: function owner(bytes32 node) view returns(address) 3522 func (_ENSRegistry *ENSRegistrySession) Owner(node [32]byte) (common.Address, error) { 3523 return _ENSRegistry.Contract.Owner(&_ENSRegistry.CallOpts, node) 3524 } 3525 3526 // Owner is a free data retrieval call binding the contract method 0x02571be3. 3527 // 3528 // Solidity: function owner(bytes32 node) view returns(address) 3529 func (_ENSRegistry *ENSRegistryCallerSession) Owner(node [32]byte) (common.Address, error) { 3530 return _ENSRegistry.Contract.Owner(&_ENSRegistry.CallOpts, node) 3531 } 3532 3533 // RecordExists is a free data retrieval call binding the contract method 0xf79fe538. 3534 // 3535 // Solidity: function recordExists(bytes32 node) view returns(bool) 3536 func (_ENSRegistry *ENSRegistryCaller) RecordExists(opts *bind.CallOpts, node [32]byte) (bool, error) { 3537 var out []interface{} 3538 err := _ENSRegistry.contract.Call(opts, &out, "recordExists", node) 3539 3540 if err != nil { 3541 return *new(bool), err 3542 } 3543 3544 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 3545 3546 return out0, err 3547 3548 } 3549 3550 // RecordExists is a free data retrieval call binding the contract method 0xf79fe538. 3551 // 3552 // Solidity: function recordExists(bytes32 node) view returns(bool) 3553 func (_ENSRegistry *ENSRegistrySession) RecordExists(node [32]byte) (bool, error) { 3554 return _ENSRegistry.Contract.RecordExists(&_ENSRegistry.CallOpts, node) 3555 } 3556 3557 // RecordExists is a free data retrieval call binding the contract method 0xf79fe538. 3558 // 3559 // Solidity: function recordExists(bytes32 node) view returns(bool) 3560 func (_ENSRegistry *ENSRegistryCallerSession) RecordExists(node [32]byte) (bool, error) { 3561 return _ENSRegistry.Contract.RecordExists(&_ENSRegistry.CallOpts, node) 3562 } 3563 3564 // Resolver is a free data retrieval call binding the contract method 0x0178b8bf. 3565 // 3566 // Solidity: function resolver(bytes32 node) view returns(address) 3567 func (_ENSRegistry *ENSRegistryCaller) Resolver(opts *bind.CallOpts, node [32]byte) (common.Address, error) { 3568 var out []interface{} 3569 err := _ENSRegistry.contract.Call(opts, &out, "resolver", node) 3570 3571 if err != nil { 3572 return *new(common.Address), err 3573 } 3574 3575 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 3576 3577 return out0, err 3578 3579 } 3580 3581 // Resolver is a free data retrieval call binding the contract method 0x0178b8bf. 3582 // 3583 // Solidity: function resolver(bytes32 node) view returns(address) 3584 func (_ENSRegistry *ENSRegistrySession) Resolver(node [32]byte) (common.Address, error) { 3585 return _ENSRegistry.Contract.Resolver(&_ENSRegistry.CallOpts, node) 3586 } 3587 3588 // Resolver is a free data retrieval call binding the contract method 0x0178b8bf. 3589 // 3590 // Solidity: function resolver(bytes32 node) view returns(address) 3591 func (_ENSRegistry *ENSRegistryCallerSession) Resolver(node [32]byte) (common.Address, error) { 3592 return _ENSRegistry.Contract.Resolver(&_ENSRegistry.CallOpts, node) 3593 } 3594 3595 // Ttl is a free data retrieval call binding the contract method 0x16a25cbd. 3596 // 3597 // Solidity: function ttl(bytes32 node) view returns(uint64) 3598 func (_ENSRegistry *ENSRegistryCaller) Ttl(opts *bind.CallOpts, node [32]byte) (uint64, error) { 3599 var out []interface{} 3600 err := _ENSRegistry.contract.Call(opts, &out, "ttl", node) 3601 3602 if err != nil { 3603 return *new(uint64), err 3604 } 3605 3606 out0 := *abi.ConvertType(out[0], new(uint64)).(*uint64) 3607 3608 return out0, err 3609 3610 } 3611 3612 // Ttl is a free data retrieval call binding the contract method 0x16a25cbd. 3613 // 3614 // Solidity: function ttl(bytes32 node) view returns(uint64) 3615 func (_ENSRegistry *ENSRegistrySession) Ttl(node [32]byte) (uint64, error) { 3616 return _ENSRegistry.Contract.Ttl(&_ENSRegistry.CallOpts, node) 3617 } 3618 3619 // Ttl is a free data retrieval call binding the contract method 0x16a25cbd. 3620 // 3621 // Solidity: function ttl(bytes32 node) view returns(uint64) 3622 func (_ENSRegistry *ENSRegistryCallerSession) Ttl(node [32]byte) (uint64, error) { 3623 return _ENSRegistry.Contract.Ttl(&_ENSRegistry.CallOpts, node) 3624 } 3625 3626 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 3627 // 3628 // Solidity: function setApprovalForAll(address operator, bool approved) returns() 3629 func (_ENSRegistry *ENSRegistryTransactor) SetApprovalForAll(opts *bind.TransactOpts, operator common.Address, approved bool) (*types.Transaction, error) { 3630 return _ENSRegistry.contract.Transact(opts, "setApprovalForAll", operator, approved) 3631 } 3632 3633 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 3634 // 3635 // Solidity: function setApprovalForAll(address operator, bool approved) returns() 3636 func (_ENSRegistry *ENSRegistrySession) SetApprovalForAll(operator common.Address, approved bool) (*types.Transaction, error) { 3637 return _ENSRegistry.Contract.SetApprovalForAll(&_ENSRegistry.TransactOpts, operator, approved) 3638 } 3639 3640 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 3641 // 3642 // Solidity: function setApprovalForAll(address operator, bool approved) returns() 3643 func (_ENSRegistry *ENSRegistryTransactorSession) SetApprovalForAll(operator common.Address, approved bool) (*types.Transaction, error) { 3644 return _ENSRegistry.Contract.SetApprovalForAll(&_ENSRegistry.TransactOpts, operator, approved) 3645 } 3646 3647 // SetOwner is a paid mutator transaction binding the contract method 0x5b0fc9c3. 3648 // 3649 // Solidity: function setOwner(bytes32 node, address owner) returns() 3650 func (_ENSRegistry *ENSRegistryTransactor) SetOwner(opts *bind.TransactOpts, node [32]byte, owner common.Address) (*types.Transaction, error) { 3651 return _ENSRegistry.contract.Transact(opts, "setOwner", node, owner) 3652 } 3653 3654 // SetOwner is a paid mutator transaction binding the contract method 0x5b0fc9c3. 3655 // 3656 // Solidity: function setOwner(bytes32 node, address owner) returns() 3657 func (_ENSRegistry *ENSRegistrySession) SetOwner(node [32]byte, owner common.Address) (*types.Transaction, error) { 3658 return _ENSRegistry.Contract.SetOwner(&_ENSRegistry.TransactOpts, node, owner) 3659 } 3660 3661 // SetOwner is a paid mutator transaction binding the contract method 0x5b0fc9c3. 3662 // 3663 // Solidity: function setOwner(bytes32 node, address owner) returns() 3664 func (_ENSRegistry *ENSRegistryTransactorSession) SetOwner(node [32]byte, owner common.Address) (*types.Transaction, error) { 3665 return _ENSRegistry.Contract.SetOwner(&_ENSRegistry.TransactOpts, node, owner) 3666 } 3667 3668 // SetRecord is a paid mutator transaction binding the contract method 0xcf408823. 3669 // 3670 // Solidity: function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) returns() 3671 func (_ENSRegistry *ENSRegistryTransactor) SetRecord(opts *bind.TransactOpts, node [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 3672 return _ENSRegistry.contract.Transact(opts, "setRecord", node, owner, resolver, ttl) 3673 } 3674 3675 // SetRecord is a paid mutator transaction binding the contract method 0xcf408823. 3676 // 3677 // Solidity: function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) returns() 3678 func (_ENSRegistry *ENSRegistrySession) SetRecord(node [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 3679 return _ENSRegistry.Contract.SetRecord(&_ENSRegistry.TransactOpts, node, owner, resolver, ttl) 3680 } 3681 3682 // SetRecord is a paid mutator transaction binding the contract method 0xcf408823. 3683 // 3684 // Solidity: function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) returns() 3685 func (_ENSRegistry *ENSRegistryTransactorSession) SetRecord(node [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 3686 return _ENSRegistry.Contract.SetRecord(&_ENSRegistry.TransactOpts, node, owner, resolver, ttl) 3687 } 3688 3689 // SetResolver is a paid mutator transaction binding the contract method 0x1896f70a. 3690 // 3691 // Solidity: function setResolver(bytes32 node, address resolver) returns() 3692 func (_ENSRegistry *ENSRegistryTransactor) SetResolver(opts *bind.TransactOpts, node [32]byte, resolver common.Address) (*types.Transaction, error) { 3693 return _ENSRegistry.contract.Transact(opts, "setResolver", node, resolver) 3694 } 3695 3696 // SetResolver is a paid mutator transaction binding the contract method 0x1896f70a. 3697 // 3698 // Solidity: function setResolver(bytes32 node, address resolver) returns() 3699 func (_ENSRegistry *ENSRegistrySession) SetResolver(node [32]byte, resolver common.Address) (*types.Transaction, error) { 3700 return _ENSRegistry.Contract.SetResolver(&_ENSRegistry.TransactOpts, node, resolver) 3701 } 3702 3703 // SetResolver is a paid mutator transaction binding the contract method 0x1896f70a. 3704 // 3705 // Solidity: function setResolver(bytes32 node, address resolver) returns() 3706 func (_ENSRegistry *ENSRegistryTransactorSession) SetResolver(node [32]byte, resolver common.Address) (*types.Transaction, error) { 3707 return _ENSRegistry.Contract.SetResolver(&_ENSRegistry.TransactOpts, node, resolver) 3708 } 3709 3710 // SetSubnodeOwner is a paid mutator transaction binding the contract method 0x06ab5923. 3711 // 3712 // Solidity: function setSubnodeOwner(bytes32 node, bytes32 label, address owner) returns(bytes32) 3713 func (_ENSRegistry *ENSRegistryTransactor) SetSubnodeOwner(opts *bind.TransactOpts, node [32]byte, label [32]byte, owner common.Address) (*types.Transaction, error) { 3714 return _ENSRegistry.contract.Transact(opts, "setSubnodeOwner", node, label, owner) 3715 } 3716 3717 // SetSubnodeOwner is a paid mutator transaction binding the contract method 0x06ab5923. 3718 // 3719 // Solidity: function setSubnodeOwner(bytes32 node, bytes32 label, address owner) returns(bytes32) 3720 func (_ENSRegistry *ENSRegistrySession) SetSubnodeOwner(node [32]byte, label [32]byte, owner common.Address) (*types.Transaction, error) { 3721 return _ENSRegistry.Contract.SetSubnodeOwner(&_ENSRegistry.TransactOpts, node, label, owner) 3722 } 3723 3724 // SetSubnodeOwner is a paid mutator transaction binding the contract method 0x06ab5923. 3725 // 3726 // Solidity: function setSubnodeOwner(bytes32 node, bytes32 label, address owner) returns(bytes32) 3727 func (_ENSRegistry *ENSRegistryTransactorSession) SetSubnodeOwner(node [32]byte, label [32]byte, owner common.Address) (*types.Transaction, error) { 3728 return _ENSRegistry.Contract.SetSubnodeOwner(&_ENSRegistry.TransactOpts, node, label, owner) 3729 } 3730 3731 // SetSubnodeRecord is a paid mutator transaction binding the contract method 0x5ef2c7f0. 3732 // 3733 // Solidity: function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) returns() 3734 func (_ENSRegistry *ENSRegistryTransactor) SetSubnodeRecord(opts *bind.TransactOpts, node [32]byte, label [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 3735 return _ENSRegistry.contract.Transact(opts, "setSubnodeRecord", node, label, owner, resolver, ttl) 3736 } 3737 3738 // SetSubnodeRecord is a paid mutator transaction binding the contract method 0x5ef2c7f0. 3739 // 3740 // Solidity: function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) returns() 3741 func (_ENSRegistry *ENSRegistrySession) SetSubnodeRecord(node [32]byte, label [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 3742 return _ENSRegistry.Contract.SetSubnodeRecord(&_ENSRegistry.TransactOpts, node, label, owner, resolver, ttl) 3743 } 3744 3745 // SetSubnodeRecord is a paid mutator transaction binding the contract method 0x5ef2c7f0. 3746 // 3747 // Solidity: function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) returns() 3748 func (_ENSRegistry *ENSRegistryTransactorSession) SetSubnodeRecord(node [32]byte, label [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 3749 return _ENSRegistry.Contract.SetSubnodeRecord(&_ENSRegistry.TransactOpts, node, label, owner, resolver, ttl) 3750 } 3751 3752 // SetTTL is a paid mutator transaction binding the contract method 0x14ab9038. 3753 // 3754 // Solidity: function setTTL(bytes32 node, uint64 ttl) returns() 3755 func (_ENSRegistry *ENSRegistryTransactor) SetTTL(opts *bind.TransactOpts, node [32]byte, ttl uint64) (*types.Transaction, error) { 3756 return _ENSRegistry.contract.Transact(opts, "setTTL", node, ttl) 3757 } 3758 3759 // SetTTL is a paid mutator transaction binding the contract method 0x14ab9038. 3760 // 3761 // Solidity: function setTTL(bytes32 node, uint64 ttl) returns() 3762 func (_ENSRegistry *ENSRegistrySession) SetTTL(node [32]byte, ttl uint64) (*types.Transaction, error) { 3763 return _ENSRegistry.Contract.SetTTL(&_ENSRegistry.TransactOpts, node, ttl) 3764 } 3765 3766 // SetTTL is a paid mutator transaction binding the contract method 0x14ab9038. 3767 // 3768 // Solidity: function setTTL(bytes32 node, uint64 ttl) returns() 3769 func (_ENSRegistry *ENSRegistryTransactorSession) SetTTL(node [32]byte, ttl uint64) (*types.Transaction, error) { 3770 return _ENSRegistry.Contract.SetTTL(&_ENSRegistry.TransactOpts, node, ttl) 3771 } 3772 3773 // ENSRegistryApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the ENSRegistry contract. 3774 type ENSRegistryApprovalForAllIterator struct { 3775 Event *ENSRegistryApprovalForAll // Event containing the contract specifics and raw log 3776 3777 contract *bind.BoundContract // Generic contract to use for unpacking event data 3778 event string // Event name to use for unpacking event data 3779 3780 logs chan types.Log // Log channel receiving the found contract events 3781 sub ethereum.Subscription // Subscription for errors, completion and termination 3782 done bool // Whether the subscription completed delivering logs 3783 fail error // Occurred error to stop iteration 3784 } 3785 3786 // Next advances the iterator to the subsequent event, returning whether there 3787 // are any more events found. In case of a retrieval or parsing error, false is 3788 // returned and Error() can be queried for the exact failure. 3789 func (it *ENSRegistryApprovalForAllIterator) Next() bool { 3790 // If the iterator failed, stop iterating 3791 if it.fail != nil { 3792 return false 3793 } 3794 // If the iterator completed, deliver directly whatever's available 3795 if it.done { 3796 select { 3797 case log := <-it.logs: 3798 it.Event = new(ENSRegistryApprovalForAll) 3799 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3800 it.fail = err 3801 return false 3802 } 3803 it.Event.Raw = log 3804 return true 3805 3806 default: 3807 return false 3808 } 3809 } 3810 // Iterator still in progress, wait for either a data or an error event 3811 select { 3812 case log := <-it.logs: 3813 it.Event = new(ENSRegistryApprovalForAll) 3814 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3815 it.fail = err 3816 return false 3817 } 3818 it.Event.Raw = log 3819 return true 3820 3821 case err := <-it.sub.Err(): 3822 it.done = true 3823 it.fail = err 3824 return it.Next() 3825 } 3826 } 3827 3828 // Error returns any retrieval or parsing error occurred during filtering. 3829 func (it *ENSRegistryApprovalForAllIterator) Error() error { 3830 return it.fail 3831 } 3832 3833 // Close terminates the iteration process, releasing any pending underlying 3834 // resources. 3835 func (it *ENSRegistryApprovalForAllIterator) Close() error { 3836 it.sub.Unsubscribe() 3837 return nil 3838 } 3839 3840 // ENSRegistryApprovalForAll represents a ApprovalForAll event raised by the ENSRegistry contract. 3841 type ENSRegistryApprovalForAll struct { 3842 Owner common.Address 3843 Operator common.Address 3844 Approved bool 3845 Raw types.Log // Blockchain specific contextual infos 3846 } 3847 3848 // FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 3849 // 3850 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 3851 func (_ENSRegistry *ENSRegistryFilterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*ENSRegistryApprovalForAllIterator, error) { 3852 3853 var ownerRule []interface{} 3854 for _, ownerItem := range owner { 3855 ownerRule = append(ownerRule, ownerItem) 3856 } 3857 var operatorRule []interface{} 3858 for _, operatorItem := range operator { 3859 operatorRule = append(operatorRule, operatorItem) 3860 } 3861 3862 logs, sub, err := _ENSRegistry.contract.FilterLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 3863 if err != nil { 3864 return nil, err 3865 } 3866 return &ENSRegistryApprovalForAllIterator{contract: _ENSRegistry.contract, event: "ApprovalForAll", logs: logs, sub: sub}, nil 3867 } 3868 3869 // WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 3870 // 3871 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 3872 func (_ENSRegistry *ENSRegistryFilterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *ENSRegistryApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error) { 3873 3874 var ownerRule []interface{} 3875 for _, ownerItem := range owner { 3876 ownerRule = append(ownerRule, ownerItem) 3877 } 3878 var operatorRule []interface{} 3879 for _, operatorItem := range operator { 3880 operatorRule = append(operatorRule, operatorItem) 3881 } 3882 3883 logs, sub, err := _ENSRegistry.contract.WatchLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 3884 if err != nil { 3885 return nil, err 3886 } 3887 return event.NewSubscription(func(quit <-chan struct{}) error { 3888 defer sub.Unsubscribe() 3889 for { 3890 select { 3891 case log := <-logs: 3892 // New log arrived, parse the event and forward to the user 3893 event := new(ENSRegistryApprovalForAll) 3894 if err := _ENSRegistry.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 3895 return err 3896 } 3897 event.Raw = log 3898 3899 select { 3900 case sink <- event: 3901 case err := <-sub.Err(): 3902 return err 3903 case <-quit: 3904 return nil 3905 } 3906 case err := <-sub.Err(): 3907 return err 3908 case <-quit: 3909 return nil 3910 } 3911 } 3912 }), nil 3913 } 3914 3915 // ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 3916 // 3917 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 3918 func (_ENSRegistry *ENSRegistryFilterer) ParseApprovalForAll(log types.Log) (*ENSRegistryApprovalForAll, error) { 3919 event := new(ENSRegistryApprovalForAll) 3920 if err := _ENSRegistry.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 3921 return nil, err 3922 } 3923 event.Raw = log 3924 return event, nil 3925 } 3926 3927 // ENSRegistryNewOwnerIterator is returned from FilterNewOwner and is used to iterate over the raw logs and unpacked data for NewOwner events raised by the ENSRegistry contract. 3928 type ENSRegistryNewOwnerIterator struct { 3929 Event *ENSRegistryNewOwner // Event containing the contract specifics and raw log 3930 3931 contract *bind.BoundContract // Generic contract to use for unpacking event data 3932 event string // Event name to use for unpacking event data 3933 3934 logs chan types.Log // Log channel receiving the found contract events 3935 sub ethereum.Subscription // Subscription for errors, completion and termination 3936 done bool // Whether the subscription completed delivering logs 3937 fail error // Occurred error to stop iteration 3938 } 3939 3940 // Next advances the iterator to the subsequent event, returning whether there 3941 // are any more events found. In case of a retrieval or parsing error, false is 3942 // returned and Error() can be queried for the exact failure. 3943 func (it *ENSRegistryNewOwnerIterator) Next() bool { 3944 // If the iterator failed, stop iterating 3945 if it.fail != nil { 3946 return false 3947 } 3948 // If the iterator completed, deliver directly whatever's available 3949 if it.done { 3950 select { 3951 case log := <-it.logs: 3952 it.Event = new(ENSRegistryNewOwner) 3953 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3954 it.fail = err 3955 return false 3956 } 3957 it.Event.Raw = log 3958 return true 3959 3960 default: 3961 return false 3962 } 3963 } 3964 // Iterator still in progress, wait for either a data or an error event 3965 select { 3966 case log := <-it.logs: 3967 it.Event = new(ENSRegistryNewOwner) 3968 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3969 it.fail = err 3970 return false 3971 } 3972 it.Event.Raw = log 3973 return true 3974 3975 case err := <-it.sub.Err(): 3976 it.done = true 3977 it.fail = err 3978 return it.Next() 3979 } 3980 } 3981 3982 // Error returns any retrieval or parsing error occurred during filtering. 3983 func (it *ENSRegistryNewOwnerIterator) Error() error { 3984 return it.fail 3985 } 3986 3987 // Close terminates the iteration process, releasing any pending underlying 3988 // resources. 3989 func (it *ENSRegistryNewOwnerIterator) Close() error { 3990 it.sub.Unsubscribe() 3991 return nil 3992 } 3993 3994 // ENSRegistryNewOwner represents a NewOwner event raised by the ENSRegistry contract. 3995 type ENSRegistryNewOwner struct { 3996 Node [32]byte 3997 Label [32]byte 3998 Owner common.Address 3999 Raw types.Log // Blockchain specific contextual infos 4000 } 4001 4002 // FilterNewOwner is a free log retrieval operation binding the contract event 0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82. 4003 // 4004 // Solidity: event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner) 4005 func (_ENSRegistry *ENSRegistryFilterer) FilterNewOwner(opts *bind.FilterOpts, node [][32]byte, label [][32]byte) (*ENSRegistryNewOwnerIterator, error) { 4006 4007 var nodeRule []interface{} 4008 for _, nodeItem := range node { 4009 nodeRule = append(nodeRule, nodeItem) 4010 } 4011 var labelRule []interface{} 4012 for _, labelItem := range label { 4013 labelRule = append(labelRule, labelItem) 4014 } 4015 4016 logs, sub, err := _ENSRegistry.contract.FilterLogs(opts, "NewOwner", nodeRule, labelRule) 4017 if err != nil { 4018 return nil, err 4019 } 4020 return &ENSRegistryNewOwnerIterator{contract: _ENSRegistry.contract, event: "NewOwner", logs: logs, sub: sub}, nil 4021 } 4022 4023 // WatchNewOwner is a free log subscription operation binding the contract event 0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82. 4024 // 4025 // Solidity: event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner) 4026 func (_ENSRegistry *ENSRegistryFilterer) WatchNewOwner(opts *bind.WatchOpts, sink chan<- *ENSRegistryNewOwner, node [][32]byte, label [][32]byte) (event.Subscription, error) { 4027 4028 var nodeRule []interface{} 4029 for _, nodeItem := range node { 4030 nodeRule = append(nodeRule, nodeItem) 4031 } 4032 var labelRule []interface{} 4033 for _, labelItem := range label { 4034 labelRule = append(labelRule, labelItem) 4035 } 4036 4037 logs, sub, err := _ENSRegistry.contract.WatchLogs(opts, "NewOwner", nodeRule, labelRule) 4038 if err != nil { 4039 return nil, err 4040 } 4041 return event.NewSubscription(func(quit <-chan struct{}) error { 4042 defer sub.Unsubscribe() 4043 for { 4044 select { 4045 case log := <-logs: 4046 // New log arrived, parse the event and forward to the user 4047 event := new(ENSRegistryNewOwner) 4048 if err := _ENSRegistry.contract.UnpackLog(event, "NewOwner", log); err != nil { 4049 return err 4050 } 4051 event.Raw = log 4052 4053 select { 4054 case sink <- event: 4055 case err := <-sub.Err(): 4056 return err 4057 case <-quit: 4058 return nil 4059 } 4060 case err := <-sub.Err(): 4061 return err 4062 case <-quit: 4063 return nil 4064 } 4065 } 4066 }), nil 4067 } 4068 4069 // ParseNewOwner is a log parse operation binding the contract event 0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82. 4070 // 4071 // Solidity: event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner) 4072 func (_ENSRegistry *ENSRegistryFilterer) ParseNewOwner(log types.Log) (*ENSRegistryNewOwner, error) { 4073 event := new(ENSRegistryNewOwner) 4074 if err := _ENSRegistry.contract.UnpackLog(event, "NewOwner", log); err != nil { 4075 return nil, err 4076 } 4077 event.Raw = log 4078 return event, nil 4079 } 4080 4081 // ENSRegistryNewResolverIterator is returned from FilterNewResolver and is used to iterate over the raw logs and unpacked data for NewResolver events raised by the ENSRegistry contract. 4082 type ENSRegistryNewResolverIterator struct { 4083 Event *ENSRegistryNewResolver // Event containing the contract specifics and raw log 4084 4085 contract *bind.BoundContract // Generic contract to use for unpacking event data 4086 event string // Event name to use for unpacking event data 4087 4088 logs chan types.Log // Log channel receiving the found contract events 4089 sub ethereum.Subscription // Subscription for errors, completion and termination 4090 done bool // Whether the subscription completed delivering logs 4091 fail error // Occurred error to stop iteration 4092 } 4093 4094 // Next advances the iterator to the subsequent event, returning whether there 4095 // are any more events found. In case of a retrieval or parsing error, false is 4096 // returned and Error() can be queried for the exact failure. 4097 func (it *ENSRegistryNewResolverIterator) Next() bool { 4098 // If the iterator failed, stop iterating 4099 if it.fail != nil { 4100 return false 4101 } 4102 // If the iterator completed, deliver directly whatever's available 4103 if it.done { 4104 select { 4105 case log := <-it.logs: 4106 it.Event = new(ENSRegistryNewResolver) 4107 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4108 it.fail = err 4109 return false 4110 } 4111 it.Event.Raw = log 4112 return true 4113 4114 default: 4115 return false 4116 } 4117 } 4118 // Iterator still in progress, wait for either a data or an error event 4119 select { 4120 case log := <-it.logs: 4121 it.Event = new(ENSRegistryNewResolver) 4122 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4123 it.fail = err 4124 return false 4125 } 4126 it.Event.Raw = log 4127 return true 4128 4129 case err := <-it.sub.Err(): 4130 it.done = true 4131 it.fail = err 4132 return it.Next() 4133 } 4134 } 4135 4136 // Error returns any retrieval or parsing error occurred during filtering. 4137 func (it *ENSRegistryNewResolverIterator) Error() error { 4138 return it.fail 4139 } 4140 4141 // Close terminates the iteration process, releasing any pending underlying 4142 // resources. 4143 func (it *ENSRegistryNewResolverIterator) Close() error { 4144 it.sub.Unsubscribe() 4145 return nil 4146 } 4147 4148 // ENSRegistryNewResolver represents a NewResolver event raised by the ENSRegistry contract. 4149 type ENSRegistryNewResolver struct { 4150 Node [32]byte 4151 Resolver common.Address 4152 Raw types.Log // Blockchain specific contextual infos 4153 } 4154 4155 // FilterNewResolver is a free log retrieval operation binding the contract event 0x335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0. 4156 // 4157 // Solidity: event NewResolver(bytes32 indexed node, address resolver) 4158 func (_ENSRegistry *ENSRegistryFilterer) FilterNewResolver(opts *bind.FilterOpts, node [][32]byte) (*ENSRegistryNewResolverIterator, error) { 4159 4160 var nodeRule []interface{} 4161 for _, nodeItem := range node { 4162 nodeRule = append(nodeRule, nodeItem) 4163 } 4164 4165 logs, sub, err := _ENSRegistry.contract.FilterLogs(opts, "NewResolver", nodeRule) 4166 if err != nil { 4167 return nil, err 4168 } 4169 return &ENSRegistryNewResolverIterator{contract: _ENSRegistry.contract, event: "NewResolver", logs: logs, sub: sub}, nil 4170 } 4171 4172 // WatchNewResolver is a free log subscription operation binding the contract event 0x335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0. 4173 // 4174 // Solidity: event NewResolver(bytes32 indexed node, address resolver) 4175 func (_ENSRegistry *ENSRegistryFilterer) WatchNewResolver(opts *bind.WatchOpts, sink chan<- *ENSRegistryNewResolver, node [][32]byte) (event.Subscription, error) { 4176 4177 var nodeRule []interface{} 4178 for _, nodeItem := range node { 4179 nodeRule = append(nodeRule, nodeItem) 4180 } 4181 4182 logs, sub, err := _ENSRegistry.contract.WatchLogs(opts, "NewResolver", nodeRule) 4183 if err != nil { 4184 return nil, err 4185 } 4186 return event.NewSubscription(func(quit <-chan struct{}) error { 4187 defer sub.Unsubscribe() 4188 for { 4189 select { 4190 case log := <-logs: 4191 // New log arrived, parse the event and forward to the user 4192 event := new(ENSRegistryNewResolver) 4193 if err := _ENSRegistry.contract.UnpackLog(event, "NewResolver", log); err != nil { 4194 return err 4195 } 4196 event.Raw = log 4197 4198 select { 4199 case sink <- event: 4200 case err := <-sub.Err(): 4201 return err 4202 case <-quit: 4203 return nil 4204 } 4205 case err := <-sub.Err(): 4206 return err 4207 case <-quit: 4208 return nil 4209 } 4210 } 4211 }), nil 4212 } 4213 4214 // ParseNewResolver is a log parse operation binding the contract event 0x335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0. 4215 // 4216 // Solidity: event NewResolver(bytes32 indexed node, address resolver) 4217 func (_ENSRegistry *ENSRegistryFilterer) ParseNewResolver(log types.Log) (*ENSRegistryNewResolver, error) { 4218 event := new(ENSRegistryNewResolver) 4219 if err := _ENSRegistry.contract.UnpackLog(event, "NewResolver", log); err != nil { 4220 return nil, err 4221 } 4222 event.Raw = log 4223 return event, nil 4224 } 4225 4226 // ENSRegistryNewTTLIterator is returned from FilterNewTTL and is used to iterate over the raw logs and unpacked data for NewTTL events raised by the ENSRegistry contract. 4227 type ENSRegistryNewTTLIterator struct { 4228 Event *ENSRegistryNewTTL // Event containing the contract specifics and raw log 4229 4230 contract *bind.BoundContract // Generic contract to use for unpacking event data 4231 event string // Event name to use for unpacking event data 4232 4233 logs chan types.Log // Log channel receiving the found contract events 4234 sub ethereum.Subscription // Subscription for errors, completion and termination 4235 done bool // Whether the subscription completed delivering logs 4236 fail error // Occurred error to stop iteration 4237 } 4238 4239 // Next advances the iterator to the subsequent event, returning whether there 4240 // are any more events found. In case of a retrieval or parsing error, false is 4241 // returned and Error() can be queried for the exact failure. 4242 func (it *ENSRegistryNewTTLIterator) Next() bool { 4243 // If the iterator failed, stop iterating 4244 if it.fail != nil { 4245 return false 4246 } 4247 // If the iterator completed, deliver directly whatever's available 4248 if it.done { 4249 select { 4250 case log := <-it.logs: 4251 it.Event = new(ENSRegistryNewTTL) 4252 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4253 it.fail = err 4254 return false 4255 } 4256 it.Event.Raw = log 4257 return true 4258 4259 default: 4260 return false 4261 } 4262 } 4263 // Iterator still in progress, wait for either a data or an error event 4264 select { 4265 case log := <-it.logs: 4266 it.Event = new(ENSRegistryNewTTL) 4267 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4268 it.fail = err 4269 return false 4270 } 4271 it.Event.Raw = log 4272 return true 4273 4274 case err := <-it.sub.Err(): 4275 it.done = true 4276 it.fail = err 4277 return it.Next() 4278 } 4279 } 4280 4281 // Error returns any retrieval or parsing error occurred during filtering. 4282 func (it *ENSRegistryNewTTLIterator) Error() error { 4283 return it.fail 4284 } 4285 4286 // Close terminates the iteration process, releasing any pending underlying 4287 // resources. 4288 func (it *ENSRegistryNewTTLIterator) Close() error { 4289 it.sub.Unsubscribe() 4290 return nil 4291 } 4292 4293 // ENSRegistryNewTTL represents a NewTTL event raised by the ENSRegistry contract. 4294 type ENSRegistryNewTTL struct { 4295 Node [32]byte 4296 Ttl uint64 4297 Raw types.Log // Blockchain specific contextual infos 4298 } 4299 4300 // FilterNewTTL is a free log retrieval operation binding the contract event 0x1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68. 4301 // 4302 // Solidity: event NewTTL(bytes32 indexed node, uint64 ttl) 4303 func (_ENSRegistry *ENSRegistryFilterer) FilterNewTTL(opts *bind.FilterOpts, node [][32]byte) (*ENSRegistryNewTTLIterator, error) { 4304 4305 var nodeRule []interface{} 4306 for _, nodeItem := range node { 4307 nodeRule = append(nodeRule, nodeItem) 4308 } 4309 4310 logs, sub, err := _ENSRegistry.contract.FilterLogs(opts, "NewTTL", nodeRule) 4311 if err != nil { 4312 return nil, err 4313 } 4314 return &ENSRegistryNewTTLIterator{contract: _ENSRegistry.contract, event: "NewTTL", logs: logs, sub: sub}, nil 4315 } 4316 4317 // WatchNewTTL is a free log subscription operation binding the contract event 0x1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68. 4318 // 4319 // Solidity: event NewTTL(bytes32 indexed node, uint64 ttl) 4320 func (_ENSRegistry *ENSRegistryFilterer) WatchNewTTL(opts *bind.WatchOpts, sink chan<- *ENSRegistryNewTTL, node [][32]byte) (event.Subscription, error) { 4321 4322 var nodeRule []interface{} 4323 for _, nodeItem := range node { 4324 nodeRule = append(nodeRule, nodeItem) 4325 } 4326 4327 logs, sub, err := _ENSRegistry.contract.WatchLogs(opts, "NewTTL", nodeRule) 4328 if err != nil { 4329 return nil, err 4330 } 4331 return event.NewSubscription(func(quit <-chan struct{}) error { 4332 defer sub.Unsubscribe() 4333 for { 4334 select { 4335 case log := <-logs: 4336 // New log arrived, parse the event and forward to the user 4337 event := new(ENSRegistryNewTTL) 4338 if err := _ENSRegistry.contract.UnpackLog(event, "NewTTL", log); err != nil { 4339 return err 4340 } 4341 event.Raw = log 4342 4343 select { 4344 case sink <- event: 4345 case err := <-sub.Err(): 4346 return err 4347 case <-quit: 4348 return nil 4349 } 4350 case err := <-sub.Err(): 4351 return err 4352 case <-quit: 4353 return nil 4354 } 4355 } 4356 }), nil 4357 } 4358 4359 // ParseNewTTL is a log parse operation binding the contract event 0x1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68. 4360 // 4361 // Solidity: event NewTTL(bytes32 indexed node, uint64 ttl) 4362 func (_ENSRegistry *ENSRegistryFilterer) ParseNewTTL(log types.Log) (*ENSRegistryNewTTL, error) { 4363 event := new(ENSRegistryNewTTL) 4364 if err := _ENSRegistry.contract.UnpackLog(event, "NewTTL", log); err != nil { 4365 return nil, err 4366 } 4367 event.Raw = log 4368 return event, nil 4369 } 4370 4371 // ENSRegistryTransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ENSRegistry contract. 4372 type ENSRegistryTransferIterator struct { 4373 Event *ENSRegistryTransfer // Event containing the contract specifics and raw log 4374 4375 contract *bind.BoundContract // Generic contract to use for unpacking event data 4376 event string // Event name to use for unpacking event data 4377 4378 logs chan types.Log // Log channel receiving the found contract events 4379 sub ethereum.Subscription // Subscription for errors, completion and termination 4380 done bool // Whether the subscription completed delivering logs 4381 fail error // Occurred error to stop iteration 4382 } 4383 4384 // Next advances the iterator to the subsequent event, returning whether there 4385 // are any more events found. In case of a retrieval or parsing error, false is 4386 // returned and Error() can be queried for the exact failure. 4387 func (it *ENSRegistryTransferIterator) Next() bool { 4388 // If the iterator failed, stop iterating 4389 if it.fail != nil { 4390 return false 4391 } 4392 // If the iterator completed, deliver directly whatever's available 4393 if it.done { 4394 select { 4395 case log := <-it.logs: 4396 it.Event = new(ENSRegistryTransfer) 4397 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4398 it.fail = err 4399 return false 4400 } 4401 it.Event.Raw = log 4402 return true 4403 4404 default: 4405 return false 4406 } 4407 } 4408 // Iterator still in progress, wait for either a data or an error event 4409 select { 4410 case log := <-it.logs: 4411 it.Event = new(ENSRegistryTransfer) 4412 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4413 it.fail = err 4414 return false 4415 } 4416 it.Event.Raw = log 4417 return true 4418 4419 case err := <-it.sub.Err(): 4420 it.done = true 4421 it.fail = err 4422 return it.Next() 4423 } 4424 } 4425 4426 // Error returns any retrieval or parsing error occurred during filtering. 4427 func (it *ENSRegistryTransferIterator) Error() error { 4428 return it.fail 4429 } 4430 4431 // Close terminates the iteration process, releasing any pending underlying 4432 // resources. 4433 func (it *ENSRegistryTransferIterator) Close() error { 4434 it.sub.Unsubscribe() 4435 return nil 4436 } 4437 4438 // ENSRegistryTransfer represents a Transfer event raised by the ENSRegistry contract. 4439 type ENSRegistryTransfer struct { 4440 Node [32]byte 4441 Owner common.Address 4442 Raw types.Log // Blockchain specific contextual infos 4443 } 4444 4445 // FilterTransfer is a free log retrieval operation binding the contract event 0xd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266. 4446 // 4447 // Solidity: event Transfer(bytes32 indexed node, address owner) 4448 func (_ENSRegistry *ENSRegistryFilterer) FilterTransfer(opts *bind.FilterOpts, node [][32]byte) (*ENSRegistryTransferIterator, error) { 4449 4450 var nodeRule []interface{} 4451 for _, nodeItem := range node { 4452 nodeRule = append(nodeRule, nodeItem) 4453 } 4454 4455 logs, sub, err := _ENSRegistry.contract.FilterLogs(opts, "Transfer", nodeRule) 4456 if err != nil { 4457 return nil, err 4458 } 4459 return &ENSRegistryTransferIterator{contract: _ENSRegistry.contract, event: "Transfer", logs: logs, sub: sub}, nil 4460 } 4461 4462 // WatchTransfer is a free log subscription operation binding the contract event 0xd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266. 4463 // 4464 // Solidity: event Transfer(bytes32 indexed node, address owner) 4465 func (_ENSRegistry *ENSRegistryFilterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ENSRegistryTransfer, node [][32]byte) (event.Subscription, error) { 4466 4467 var nodeRule []interface{} 4468 for _, nodeItem := range node { 4469 nodeRule = append(nodeRule, nodeItem) 4470 } 4471 4472 logs, sub, err := _ENSRegistry.contract.WatchLogs(opts, "Transfer", nodeRule) 4473 if err != nil { 4474 return nil, err 4475 } 4476 return event.NewSubscription(func(quit <-chan struct{}) error { 4477 defer sub.Unsubscribe() 4478 for { 4479 select { 4480 case log := <-logs: 4481 // New log arrived, parse the event and forward to the user 4482 event := new(ENSRegistryTransfer) 4483 if err := _ENSRegistry.contract.UnpackLog(event, "Transfer", log); err != nil { 4484 return err 4485 } 4486 event.Raw = log 4487 4488 select { 4489 case sink <- event: 4490 case err := <-sub.Err(): 4491 return err 4492 case <-quit: 4493 return nil 4494 } 4495 case err := <-sub.Err(): 4496 return err 4497 case <-quit: 4498 return nil 4499 } 4500 } 4501 }), nil 4502 } 4503 4504 // ParseTransfer is a log parse operation binding the contract event 0xd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266. 4505 // 4506 // Solidity: event Transfer(bytes32 indexed node, address owner) 4507 func (_ENSRegistry *ENSRegistryFilterer) ParseTransfer(log types.Log) (*ENSRegistryTransfer, error) { 4508 event := new(ENSRegistryTransfer) 4509 if err := _ENSRegistry.contract.UnpackLog(event, "Transfer", log); err != nil { 4510 return nil, err 4511 } 4512 event.Raw = log 4513 return event, nil 4514 } 4515 4516 // ENSRegistryWithFallbackABI is the input ABI used to generate the binding from. 4517 const ENSRegistryWithFallbackABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"resolver\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"label\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setSubnodeOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setTTL\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"ttl\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"setResolver\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"setOwner\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"label\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"resolver\",\"type\":\"address\"},{\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setSubnodeRecord\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"operator\",\"type\":\"address\"},{\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"resolver\",\"type\":\"address\"},{\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"setRecord\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"recordExists\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"label\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"NewOwner\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"resolver\",\"type\":\"address\"}],\"name\":\"NewResolver\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"ttl\",\"type\":\"uint64\"}],\"name\":\"NewTTL\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"}]" 4518 4519 // ENSRegistryWithFallbackFuncSigs maps the 4-byte function signature to its string representation. 4520 var ENSRegistryWithFallbackFuncSigs = map[string]string{ 4521 "e985e9c5": "isApprovedForAll(address,address)", 4522 "02571be3": "owner(bytes32)", 4523 "f79fe538": "recordExists(bytes32)", 4524 "0178b8bf": "resolver(bytes32)", 4525 "a22cb465": "setApprovalForAll(address,bool)", 4526 "5b0fc9c3": "setOwner(bytes32,address)", 4527 "cf408823": "setRecord(bytes32,address,address,uint64)", 4528 "1896f70a": "setResolver(bytes32,address)", 4529 "06ab5923": "setSubnodeOwner(bytes32,bytes32,address)", 4530 "5ef2c7f0": "setSubnodeRecord(bytes32,bytes32,address,address,uint64)", 4531 "14ab9038": "setTTL(bytes32,uint64)", 4532 "16a25cbd": "ttl(bytes32)", 4533 } 4534 4535 // ENSRegistryWithFallback is an auto generated Go binding around an Ethereum contract. 4536 type ENSRegistryWithFallback struct { 4537 ENSRegistryWithFallbackCaller // Read-only binding to the contract 4538 ENSRegistryWithFallbackTransactor // Write-only binding to the contract 4539 ENSRegistryWithFallbackFilterer // Log filterer for contract events 4540 } 4541 4542 // ENSRegistryWithFallbackCaller is an auto generated read-only Go binding around an Ethereum contract. 4543 type ENSRegistryWithFallbackCaller struct { 4544 contract *bind.BoundContract // Generic contract wrapper for the low level calls 4545 } 4546 4547 // ENSRegistryWithFallbackTransactor is an auto generated write-only Go binding around an Ethereum contract. 4548 type ENSRegistryWithFallbackTransactor struct { 4549 contract *bind.BoundContract // Generic contract wrapper for the low level calls 4550 } 4551 4552 // ENSRegistryWithFallbackFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 4553 type ENSRegistryWithFallbackFilterer struct { 4554 contract *bind.BoundContract // Generic contract wrapper for the low level calls 4555 } 4556 4557 // ENSRegistryWithFallbackSession is an auto generated Go binding around an Ethereum contract, 4558 // with pre-set call and transact options. 4559 type ENSRegistryWithFallbackSession struct { 4560 Contract *ENSRegistryWithFallback // Generic contract binding to set the session for 4561 CallOpts bind.CallOpts // Call options to use throughout this session 4562 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 4563 } 4564 4565 // ENSRegistryWithFallbackCallerSession is an auto generated read-only Go binding around an Ethereum contract, 4566 // with pre-set call options. 4567 type ENSRegistryWithFallbackCallerSession struct { 4568 Contract *ENSRegistryWithFallbackCaller // Generic contract caller binding to set the session for 4569 CallOpts bind.CallOpts // Call options to use throughout this session 4570 } 4571 4572 // ENSRegistryWithFallbackTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 4573 // with pre-set transact options. 4574 type ENSRegistryWithFallbackTransactorSession struct { 4575 Contract *ENSRegistryWithFallbackTransactor // Generic contract transactor binding to set the session for 4576 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 4577 } 4578 4579 // ENSRegistryWithFallbackRaw is an auto generated low-level Go binding around an Ethereum contract. 4580 type ENSRegistryWithFallbackRaw struct { 4581 Contract *ENSRegistryWithFallback // Generic contract binding to access the raw methods on 4582 } 4583 4584 // ENSRegistryWithFallbackCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 4585 type ENSRegistryWithFallbackCallerRaw struct { 4586 Contract *ENSRegistryWithFallbackCaller // Generic read-only contract binding to access the raw methods on 4587 } 4588 4589 // ENSRegistryWithFallbackTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 4590 type ENSRegistryWithFallbackTransactorRaw struct { 4591 Contract *ENSRegistryWithFallbackTransactor // Generic write-only contract binding to access the raw methods on 4592 } 4593 4594 // NewENSRegistryWithFallback creates a new instance of ENSRegistryWithFallback, bound to a specific deployed contract. 4595 func NewENSRegistryWithFallback(address common.Address, backend bind.ContractBackend) (*ENSRegistryWithFallback, error) { 4596 contract, err := bindENSRegistryWithFallback(address, backend, backend, backend) 4597 if err != nil { 4598 return nil, err 4599 } 4600 return &ENSRegistryWithFallback{ENSRegistryWithFallbackCaller: ENSRegistryWithFallbackCaller{contract: contract}, ENSRegistryWithFallbackTransactor: ENSRegistryWithFallbackTransactor{contract: contract}, ENSRegistryWithFallbackFilterer: ENSRegistryWithFallbackFilterer{contract: contract}}, nil 4601 } 4602 4603 // NewENSRegistryWithFallbackCaller creates a new read-only instance of ENSRegistryWithFallback, bound to a specific deployed contract. 4604 func NewENSRegistryWithFallbackCaller(address common.Address, caller bind.ContractCaller) (*ENSRegistryWithFallbackCaller, error) { 4605 contract, err := bindENSRegistryWithFallback(address, caller, nil, nil) 4606 if err != nil { 4607 return nil, err 4608 } 4609 return &ENSRegistryWithFallbackCaller{contract: contract}, nil 4610 } 4611 4612 // NewENSRegistryWithFallbackTransactor creates a new write-only instance of ENSRegistryWithFallback, bound to a specific deployed contract. 4613 func NewENSRegistryWithFallbackTransactor(address common.Address, transactor bind.ContractTransactor) (*ENSRegistryWithFallbackTransactor, error) { 4614 contract, err := bindENSRegistryWithFallback(address, nil, transactor, nil) 4615 if err != nil { 4616 return nil, err 4617 } 4618 return &ENSRegistryWithFallbackTransactor{contract: contract}, nil 4619 } 4620 4621 // NewENSRegistryWithFallbackFilterer creates a new log filterer instance of ENSRegistryWithFallback, bound to a specific deployed contract. 4622 func NewENSRegistryWithFallbackFilterer(address common.Address, filterer bind.ContractFilterer) (*ENSRegistryWithFallbackFilterer, error) { 4623 contract, err := bindENSRegistryWithFallback(address, nil, nil, filterer) 4624 if err != nil { 4625 return nil, err 4626 } 4627 return &ENSRegistryWithFallbackFilterer{contract: contract}, nil 4628 } 4629 4630 // bindENSRegistryWithFallback binds a generic wrapper to an already deployed contract. 4631 func bindENSRegistryWithFallback(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 4632 parsed, err := abi.JSON(strings.NewReader(ENSRegistryWithFallbackABI)) 4633 if err != nil { 4634 return nil, err 4635 } 4636 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 4637 } 4638 4639 // Call invokes the (constant) contract method with params as input values and 4640 // sets the output to result. The result type might be a single field for simple 4641 // returns, a slice of interfaces for anonymous returns and a struct for named 4642 // returns. 4643 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 4644 return _ENSRegistryWithFallback.Contract.ENSRegistryWithFallbackCaller.contract.Call(opts, result, method, params...) 4645 } 4646 4647 // Transfer initiates a plain transaction to move funds to the contract, calling 4648 // its default method if one is available. 4649 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 4650 return _ENSRegistryWithFallback.Contract.ENSRegistryWithFallbackTransactor.contract.Transfer(opts) 4651 } 4652 4653 // Transact invokes the (paid) contract method with params as input values. 4654 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 4655 return _ENSRegistryWithFallback.Contract.ENSRegistryWithFallbackTransactor.contract.Transact(opts, method, params...) 4656 } 4657 4658 // Call invokes the (constant) contract method with params as input values and 4659 // sets the output to result. The result type might be a single field for simple 4660 // returns, a slice of interfaces for anonymous returns and a struct for named 4661 // returns. 4662 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 4663 return _ENSRegistryWithFallback.Contract.contract.Call(opts, result, method, params...) 4664 } 4665 4666 // Transfer initiates a plain transaction to move funds to the contract, calling 4667 // its default method if one is available. 4668 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 4669 return _ENSRegistryWithFallback.Contract.contract.Transfer(opts) 4670 } 4671 4672 // Transact invokes the (paid) contract method with params as input values. 4673 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 4674 return _ENSRegistryWithFallback.Contract.contract.Transact(opts, method, params...) 4675 } 4676 4677 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 4678 // 4679 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 4680 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCaller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error) { 4681 var out []interface{} 4682 err := _ENSRegistryWithFallback.contract.Call(opts, &out, "isApprovedForAll", owner, operator) 4683 4684 if err != nil { 4685 return *new(bool), err 4686 } 4687 4688 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 4689 4690 return out0, err 4691 4692 } 4693 4694 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 4695 // 4696 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 4697 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 4698 return _ENSRegistryWithFallback.Contract.IsApprovedForAll(&_ENSRegistryWithFallback.CallOpts, owner, operator) 4699 } 4700 4701 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 4702 // 4703 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 4704 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 4705 return _ENSRegistryWithFallback.Contract.IsApprovedForAll(&_ENSRegistryWithFallback.CallOpts, owner, operator) 4706 } 4707 4708 // Owner is a free data retrieval call binding the contract method 0x02571be3. 4709 // 4710 // Solidity: function owner(bytes32 node) view returns(address) 4711 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCaller) Owner(opts *bind.CallOpts, node [32]byte) (common.Address, error) { 4712 var out []interface{} 4713 err := _ENSRegistryWithFallback.contract.Call(opts, &out, "owner", node) 4714 4715 if err != nil { 4716 return *new(common.Address), err 4717 } 4718 4719 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 4720 4721 return out0, err 4722 4723 } 4724 4725 // Owner is a free data retrieval call binding the contract method 0x02571be3. 4726 // 4727 // Solidity: function owner(bytes32 node) view returns(address) 4728 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) Owner(node [32]byte) (common.Address, error) { 4729 return _ENSRegistryWithFallback.Contract.Owner(&_ENSRegistryWithFallback.CallOpts, node) 4730 } 4731 4732 // Owner is a free data retrieval call binding the contract method 0x02571be3. 4733 // 4734 // Solidity: function owner(bytes32 node) view returns(address) 4735 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCallerSession) Owner(node [32]byte) (common.Address, error) { 4736 return _ENSRegistryWithFallback.Contract.Owner(&_ENSRegistryWithFallback.CallOpts, node) 4737 } 4738 4739 // RecordExists is a free data retrieval call binding the contract method 0xf79fe538. 4740 // 4741 // Solidity: function recordExists(bytes32 node) view returns(bool) 4742 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCaller) RecordExists(opts *bind.CallOpts, node [32]byte) (bool, error) { 4743 var out []interface{} 4744 err := _ENSRegistryWithFallback.contract.Call(opts, &out, "recordExists", node) 4745 4746 if err != nil { 4747 return *new(bool), err 4748 } 4749 4750 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 4751 4752 return out0, err 4753 4754 } 4755 4756 // RecordExists is a free data retrieval call binding the contract method 0xf79fe538. 4757 // 4758 // Solidity: function recordExists(bytes32 node) view returns(bool) 4759 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) RecordExists(node [32]byte) (bool, error) { 4760 return _ENSRegistryWithFallback.Contract.RecordExists(&_ENSRegistryWithFallback.CallOpts, node) 4761 } 4762 4763 // RecordExists is a free data retrieval call binding the contract method 0xf79fe538. 4764 // 4765 // Solidity: function recordExists(bytes32 node) view returns(bool) 4766 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCallerSession) RecordExists(node [32]byte) (bool, error) { 4767 return _ENSRegistryWithFallback.Contract.RecordExists(&_ENSRegistryWithFallback.CallOpts, node) 4768 } 4769 4770 // Resolver is a free data retrieval call binding the contract method 0x0178b8bf. 4771 // 4772 // Solidity: function resolver(bytes32 node) view returns(address) 4773 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCaller) Resolver(opts *bind.CallOpts, node [32]byte) (common.Address, error) { 4774 var out []interface{} 4775 err := _ENSRegistryWithFallback.contract.Call(opts, &out, "resolver", node) 4776 4777 if err != nil { 4778 return *new(common.Address), err 4779 } 4780 4781 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 4782 4783 return out0, err 4784 4785 } 4786 4787 // Resolver is a free data retrieval call binding the contract method 0x0178b8bf. 4788 // 4789 // Solidity: function resolver(bytes32 node) view returns(address) 4790 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) Resolver(node [32]byte) (common.Address, error) { 4791 return _ENSRegistryWithFallback.Contract.Resolver(&_ENSRegistryWithFallback.CallOpts, node) 4792 } 4793 4794 // Resolver is a free data retrieval call binding the contract method 0x0178b8bf. 4795 // 4796 // Solidity: function resolver(bytes32 node) view returns(address) 4797 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCallerSession) Resolver(node [32]byte) (common.Address, error) { 4798 return _ENSRegistryWithFallback.Contract.Resolver(&_ENSRegistryWithFallback.CallOpts, node) 4799 } 4800 4801 // Ttl is a free data retrieval call binding the contract method 0x16a25cbd. 4802 // 4803 // Solidity: function ttl(bytes32 node) view returns(uint64) 4804 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCaller) Ttl(opts *bind.CallOpts, node [32]byte) (uint64, error) { 4805 var out []interface{} 4806 err := _ENSRegistryWithFallback.contract.Call(opts, &out, "ttl", node) 4807 4808 if err != nil { 4809 return *new(uint64), err 4810 } 4811 4812 out0 := *abi.ConvertType(out[0], new(uint64)).(*uint64) 4813 4814 return out0, err 4815 4816 } 4817 4818 // Ttl is a free data retrieval call binding the contract method 0x16a25cbd. 4819 // 4820 // Solidity: function ttl(bytes32 node) view returns(uint64) 4821 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) Ttl(node [32]byte) (uint64, error) { 4822 return _ENSRegistryWithFallback.Contract.Ttl(&_ENSRegistryWithFallback.CallOpts, node) 4823 } 4824 4825 // Ttl is a free data retrieval call binding the contract method 0x16a25cbd. 4826 // 4827 // Solidity: function ttl(bytes32 node) view returns(uint64) 4828 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackCallerSession) Ttl(node [32]byte) (uint64, error) { 4829 return _ENSRegistryWithFallback.Contract.Ttl(&_ENSRegistryWithFallback.CallOpts, node) 4830 } 4831 4832 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 4833 // 4834 // Solidity: function setApprovalForAll(address operator, bool approved) returns() 4835 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactor) SetApprovalForAll(opts *bind.TransactOpts, operator common.Address, approved bool) (*types.Transaction, error) { 4836 return _ENSRegistryWithFallback.contract.Transact(opts, "setApprovalForAll", operator, approved) 4837 } 4838 4839 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 4840 // 4841 // Solidity: function setApprovalForAll(address operator, bool approved) returns() 4842 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) SetApprovalForAll(operator common.Address, approved bool) (*types.Transaction, error) { 4843 return _ENSRegistryWithFallback.Contract.SetApprovalForAll(&_ENSRegistryWithFallback.TransactOpts, operator, approved) 4844 } 4845 4846 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 4847 // 4848 // Solidity: function setApprovalForAll(address operator, bool approved) returns() 4849 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactorSession) SetApprovalForAll(operator common.Address, approved bool) (*types.Transaction, error) { 4850 return _ENSRegistryWithFallback.Contract.SetApprovalForAll(&_ENSRegistryWithFallback.TransactOpts, operator, approved) 4851 } 4852 4853 // SetOwner is a paid mutator transaction binding the contract method 0x5b0fc9c3. 4854 // 4855 // Solidity: function setOwner(bytes32 node, address owner) returns() 4856 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactor) SetOwner(opts *bind.TransactOpts, node [32]byte, owner common.Address) (*types.Transaction, error) { 4857 return _ENSRegistryWithFallback.contract.Transact(opts, "setOwner", node, owner) 4858 } 4859 4860 // SetOwner is a paid mutator transaction binding the contract method 0x5b0fc9c3. 4861 // 4862 // Solidity: function setOwner(bytes32 node, address owner) returns() 4863 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) SetOwner(node [32]byte, owner common.Address) (*types.Transaction, error) { 4864 return _ENSRegistryWithFallback.Contract.SetOwner(&_ENSRegistryWithFallback.TransactOpts, node, owner) 4865 } 4866 4867 // SetOwner is a paid mutator transaction binding the contract method 0x5b0fc9c3. 4868 // 4869 // Solidity: function setOwner(bytes32 node, address owner) returns() 4870 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactorSession) SetOwner(node [32]byte, owner common.Address) (*types.Transaction, error) { 4871 return _ENSRegistryWithFallback.Contract.SetOwner(&_ENSRegistryWithFallback.TransactOpts, node, owner) 4872 } 4873 4874 // SetRecord is a paid mutator transaction binding the contract method 0xcf408823. 4875 // 4876 // Solidity: function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) returns() 4877 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactor) SetRecord(opts *bind.TransactOpts, node [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 4878 return _ENSRegistryWithFallback.contract.Transact(opts, "setRecord", node, owner, resolver, ttl) 4879 } 4880 4881 // SetRecord is a paid mutator transaction binding the contract method 0xcf408823. 4882 // 4883 // Solidity: function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) returns() 4884 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) SetRecord(node [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 4885 return _ENSRegistryWithFallback.Contract.SetRecord(&_ENSRegistryWithFallback.TransactOpts, node, owner, resolver, ttl) 4886 } 4887 4888 // SetRecord is a paid mutator transaction binding the contract method 0xcf408823. 4889 // 4890 // Solidity: function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) returns() 4891 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactorSession) SetRecord(node [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 4892 return _ENSRegistryWithFallback.Contract.SetRecord(&_ENSRegistryWithFallback.TransactOpts, node, owner, resolver, ttl) 4893 } 4894 4895 // SetResolver is a paid mutator transaction binding the contract method 0x1896f70a. 4896 // 4897 // Solidity: function setResolver(bytes32 node, address resolver) returns() 4898 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactor) SetResolver(opts *bind.TransactOpts, node [32]byte, resolver common.Address) (*types.Transaction, error) { 4899 return _ENSRegistryWithFallback.contract.Transact(opts, "setResolver", node, resolver) 4900 } 4901 4902 // SetResolver is a paid mutator transaction binding the contract method 0x1896f70a. 4903 // 4904 // Solidity: function setResolver(bytes32 node, address resolver) returns() 4905 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) SetResolver(node [32]byte, resolver common.Address) (*types.Transaction, error) { 4906 return _ENSRegistryWithFallback.Contract.SetResolver(&_ENSRegistryWithFallback.TransactOpts, node, resolver) 4907 } 4908 4909 // SetResolver is a paid mutator transaction binding the contract method 0x1896f70a. 4910 // 4911 // Solidity: function setResolver(bytes32 node, address resolver) returns() 4912 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactorSession) SetResolver(node [32]byte, resolver common.Address) (*types.Transaction, error) { 4913 return _ENSRegistryWithFallback.Contract.SetResolver(&_ENSRegistryWithFallback.TransactOpts, node, resolver) 4914 } 4915 4916 // SetSubnodeOwner is a paid mutator transaction binding the contract method 0x06ab5923. 4917 // 4918 // Solidity: function setSubnodeOwner(bytes32 node, bytes32 label, address owner) returns(bytes32) 4919 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactor) SetSubnodeOwner(opts *bind.TransactOpts, node [32]byte, label [32]byte, owner common.Address) (*types.Transaction, error) { 4920 return _ENSRegistryWithFallback.contract.Transact(opts, "setSubnodeOwner", node, label, owner) 4921 } 4922 4923 // SetSubnodeOwner is a paid mutator transaction binding the contract method 0x06ab5923. 4924 // 4925 // Solidity: function setSubnodeOwner(bytes32 node, bytes32 label, address owner) returns(bytes32) 4926 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) SetSubnodeOwner(node [32]byte, label [32]byte, owner common.Address) (*types.Transaction, error) { 4927 return _ENSRegistryWithFallback.Contract.SetSubnodeOwner(&_ENSRegistryWithFallback.TransactOpts, node, label, owner) 4928 } 4929 4930 // SetSubnodeOwner is a paid mutator transaction binding the contract method 0x06ab5923. 4931 // 4932 // Solidity: function setSubnodeOwner(bytes32 node, bytes32 label, address owner) returns(bytes32) 4933 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactorSession) SetSubnodeOwner(node [32]byte, label [32]byte, owner common.Address) (*types.Transaction, error) { 4934 return _ENSRegistryWithFallback.Contract.SetSubnodeOwner(&_ENSRegistryWithFallback.TransactOpts, node, label, owner) 4935 } 4936 4937 // SetSubnodeRecord is a paid mutator transaction binding the contract method 0x5ef2c7f0. 4938 // 4939 // Solidity: function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) returns() 4940 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactor) SetSubnodeRecord(opts *bind.TransactOpts, node [32]byte, label [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 4941 return _ENSRegistryWithFallback.contract.Transact(opts, "setSubnodeRecord", node, label, owner, resolver, ttl) 4942 } 4943 4944 // SetSubnodeRecord is a paid mutator transaction binding the contract method 0x5ef2c7f0. 4945 // 4946 // Solidity: function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) returns() 4947 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) SetSubnodeRecord(node [32]byte, label [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 4948 return _ENSRegistryWithFallback.Contract.SetSubnodeRecord(&_ENSRegistryWithFallback.TransactOpts, node, label, owner, resolver, ttl) 4949 } 4950 4951 // SetSubnodeRecord is a paid mutator transaction binding the contract method 0x5ef2c7f0. 4952 // 4953 // Solidity: function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) returns() 4954 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactorSession) SetSubnodeRecord(node [32]byte, label [32]byte, owner common.Address, resolver common.Address, ttl uint64) (*types.Transaction, error) { 4955 return _ENSRegistryWithFallback.Contract.SetSubnodeRecord(&_ENSRegistryWithFallback.TransactOpts, node, label, owner, resolver, ttl) 4956 } 4957 4958 // SetTTL is a paid mutator transaction binding the contract method 0x14ab9038. 4959 // 4960 // Solidity: function setTTL(bytes32 node, uint64 ttl) returns() 4961 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactor) SetTTL(opts *bind.TransactOpts, node [32]byte, ttl uint64) (*types.Transaction, error) { 4962 return _ENSRegistryWithFallback.contract.Transact(opts, "setTTL", node, ttl) 4963 } 4964 4965 // SetTTL is a paid mutator transaction binding the contract method 0x14ab9038. 4966 // 4967 // Solidity: function setTTL(bytes32 node, uint64 ttl) returns() 4968 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackSession) SetTTL(node [32]byte, ttl uint64) (*types.Transaction, error) { 4969 return _ENSRegistryWithFallback.Contract.SetTTL(&_ENSRegistryWithFallback.TransactOpts, node, ttl) 4970 } 4971 4972 // SetTTL is a paid mutator transaction binding the contract method 0x14ab9038. 4973 // 4974 // Solidity: function setTTL(bytes32 node, uint64 ttl) returns() 4975 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackTransactorSession) SetTTL(node [32]byte, ttl uint64) (*types.Transaction, error) { 4976 return _ENSRegistryWithFallback.Contract.SetTTL(&_ENSRegistryWithFallback.TransactOpts, node, ttl) 4977 } 4978 4979 // ENSRegistryWithFallbackApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the ENSRegistryWithFallback contract. 4980 type ENSRegistryWithFallbackApprovalForAllIterator struct { 4981 Event *ENSRegistryWithFallbackApprovalForAll // Event containing the contract specifics and raw log 4982 4983 contract *bind.BoundContract // Generic contract to use for unpacking event data 4984 event string // Event name to use for unpacking event data 4985 4986 logs chan types.Log // Log channel receiving the found contract events 4987 sub ethereum.Subscription // Subscription for errors, completion and termination 4988 done bool // Whether the subscription completed delivering logs 4989 fail error // Occurred error to stop iteration 4990 } 4991 4992 // Next advances the iterator to the subsequent event, returning whether there 4993 // are any more events found. In case of a retrieval or parsing error, false is 4994 // returned and Error() can be queried for the exact failure. 4995 func (it *ENSRegistryWithFallbackApprovalForAllIterator) Next() bool { 4996 // If the iterator failed, stop iterating 4997 if it.fail != nil { 4998 return false 4999 } 5000 // If the iterator completed, deliver directly whatever's available 5001 if it.done { 5002 select { 5003 case log := <-it.logs: 5004 it.Event = new(ENSRegistryWithFallbackApprovalForAll) 5005 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5006 it.fail = err 5007 return false 5008 } 5009 it.Event.Raw = log 5010 return true 5011 5012 default: 5013 return false 5014 } 5015 } 5016 // Iterator still in progress, wait for either a data or an error event 5017 select { 5018 case log := <-it.logs: 5019 it.Event = new(ENSRegistryWithFallbackApprovalForAll) 5020 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5021 it.fail = err 5022 return false 5023 } 5024 it.Event.Raw = log 5025 return true 5026 5027 case err := <-it.sub.Err(): 5028 it.done = true 5029 it.fail = err 5030 return it.Next() 5031 } 5032 } 5033 5034 // Error returns any retrieval or parsing error occurred during filtering. 5035 func (it *ENSRegistryWithFallbackApprovalForAllIterator) Error() error { 5036 return it.fail 5037 } 5038 5039 // Close terminates the iteration process, releasing any pending underlying 5040 // resources. 5041 func (it *ENSRegistryWithFallbackApprovalForAllIterator) Close() error { 5042 it.sub.Unsubscribe() 5043 return nil 5044 } 5045 5046 // ENSRegistryWithFallbackApprovalForAll represents a ApprovalForAll event raised by the ENSRegistryWithFallback contract. 5047 type ENSRegistryWithFallbackApprovalForAll struct { 5048 Owner common.Address 5049 Operator common.Address 5050 Approved bool 5051 Raw types.Log // Blockchain specific contextual infos 5052 } 5053 5054 // FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 5055 // 5056 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 5057 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*ENSRegistryWithFallbackApprovalForAllIterator, error) { 5058 5059 var ownerRule []interface{} 5060 for _, ownerItem := range owner { 5061 ownerRule = append(ownerRule, ownerItem) 5062 } 5063 var operatorRule []interface{} 5064 for _, operatorItem := range operator { 5065 operatorRule = append(operatorRule, operatorItem) 5066 } 5067 5068 logs, sub, err := _ENSRegistryWithFallback.contract.FilterLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 5069 if err != nil { 5070 return nil, err 5071 } 5072 return &ENSRegistryWithFallbackApprovalForAllIterator{contract: _ENSRegistryWithFallback.contract, event: "ApprovalForAll", logs: logs, sub: sub}, nil 5073 } 5074 5075 // WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 5076 // 5077 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 5078 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *ENSRegistryWithFallbackApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error) { 5079 5080 var ownerRule []interface{} 5081 for _, ownerItem := range owner { 5082 ownerRule = append(ownerRule, ownerItem) 5083 } 5084 var operatorRule []interface{} 5085 for _, operatorItem := range operator { 5086 operatorRule = append(operatorRule, operatorItem) 5087 } 5088 5089 logs, sub, err := _ENSRegistryWithFallback.contract.WatchLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 5090 if err != nil { 5091 return nil, err 5092 } 5093 return event.NewSubscription(func(quit <-chan struct{}) error { 5094 defer sub.Unsubscribe() 5095 for { 5096 select { 5097 case log := <-logs: 5098 // New log arrived, parse the event and forward to the user 5099 event := new(ENSRegistryWithFallbackApprovalForAll) 5100 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 5101 return err 5102 } 5103 event.Raw = log 5104 5105 select { 5106 case sink <- event: 5107 case err := <-sub.Err(): 5108 return err 5109 case <-quit: 5110 return nil 5111 } 5112 case err := <-sub.Err(): 5113 return err 5114 case <-quit: 5115 return nil 5116 } 5117 } 5118 }), nil 5119 } 5120 5121 // ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 5122 // 5123 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 5124 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) ParseApprovalForAll(log types.Log) (*ENSRegistryWithFallbackApprovalForAll, error) { 5125 event := new(ENSRegistryWithFallbackApprovalForAll) 5126 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 5127 return nil, err 5128 } 5129 event.Raw = log 5130 return event, nil 5131 } 5132 5133 // ENSRegistryWithFallbackNewOwnerIterator is returned from FilterNewOwner and is used to iterate over the raw logs and unpacked data for NewOwner events raised by the ENSRegistryWithFallback contract. 5134 type ENSRegistryWithFallbackNewOwnerIterator struct { 5135 Event *ENSRegistryWithFallbackNewOwner // Event containing the contract specifics and raw log 5136 5137 contract *bind.BoundContract // Generic contract to use for unpacking event data 5138 event string // Event name to use for unpacking event data 5139 5140 logs chan types.Log // Log channel receiving the found contract events 5141 sub ethereum.Subscription // Subscription for errors, completion and termination 5142 done bool // Whether the subscription completed delivering logs 5143 fail error // Occurred error to stop iteration 5144 } 5145 5146 // Next advances the iterator to the subsequent event, returning whether there 5147 // are any more events found. In case of a retrieval or parsing error, false is 5148 // returned and Error() can be queried for the exact failure. 5149 func (it *ENSRegistryWithFallbackNewOwnerIterator) Next() bool { 5150 // If the iterator failed, stop iterating 5151 if it.fail != nil { 5152 return false 5153 } 5154 // If the iterator completed, deliver directly whatever's available 5155 if it.done { 5156 select { 5157 case log := <-it.logs: 5158 it.Event = new(ENSRegistryWithFallbackNewOwner) 5159 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5160 it.fail = err 5161 return false 5162 } 5163 it.Event.Raw = log 5164 return true 5165 5166 default: 5167 return false 5168 } 5169 } 5170 // Iterator still in progress, wait for either a data or an error event 5171 select { 5172 case log := <-it.logs: 5173 it.Event = new(ENSRegistryWithFallbackNewOwner) 5174 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5175 it.fail = err 5176 return false 5177 } 5178 it.Event.Raw = log 5179 return true 5180 5181 case err := <-it.sub.Err(): 5182 it.done = true 5183 it.fail = err 5184 return it.Next() 5185 } 5186 } 5187 5188 // Error returns any retrieval or parsing error occurred during filtering. 5189 func (it *ENSRegistryWithFallbackNewOwnerIterator) Error() error { 5190 return it.fail 5191 } 5192 5193 // Close terminates the iteration process, releasing any pending underlying 5194 // resources. 5195 func (it *ENSRegistryWithFallbackNewOwnerIterator) Close() error { 5196 it.sub.Unsubscribe() 5197 return nil 5198 } 5199 5200 // ENSRegistryWithFallbackNewOwner represents a NewOwner event raised by the ENSRegistryWithFallback contract. 5201 type ENSRegistryWithFallbackNewOwner struct { 5202 Node [32]byte 5203 Label [32]byte 5204 Owner common.Address 5205 Raw types.Log // Blockchain specific contextual infos 5206 } 5207 5208 // FilterNewOwner is a free log retrieval operation binding the contract event 0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82. 5209 // 5210 // Solidity: event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner) 5211 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) FilterNewOwner(opts *bind.FilterOpts, node [][32]byte, label [][32]byte) (*ENSRegistryWithFallbackNewOwnerIterator, error) { 5212 5213 var nodeRule []interface{} 5214 for _, nodeItem := range node { 5215 nodeRule = append(nodeRule, nodeItem) 5216 } 5217 var labelRule []interface{} 5218 for _, labelItem := range label { 5219 labelRule = append(labelRule, labelItem) 5220 } 5221 5222 logs, sub, err := _ENSRegistryWithFallback.contract.FilterLogs(opts, "NewOwner", nodeRule, labelRule) 5223 if err != nil { 5224 return nil, err 5225 } 5226 return &ENSRegistryWithFallbackNewOwnerIterator{contract: _ENSRegistryWithFallback.contract, event: "NewOwner", logs: logs, sub: sub}, nil 5227 } 5228 5229 // WatchNewOwner is a free log subscription operation binding the contract event 0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82. 5230 // 5231 // Solidity: event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner) 5232 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) WatchNewOwner(opts *bind.WatchOpts, sink chan<- *ENSRegistryWithFallbackNewOwner, node [][32]byte, label [][32]byte) (event.Subscription, error) { 5233 5234 var nodeRule []interface{} 5235 for _, nodeItem := range node { 5236 nodeRule = append(nodeRule, nodeItem) 5237 } 5238 var labelRule []interface{} 5239 for _, labelItem := range label { 5240 labelRule = append(labelRule, labelItem) 5241 } 5242 5243 logs, sub, err := _ENSRegistryWithFallback.contract.WatchLogs(opts, "NewOwner", nodeRule, labelRule) 5244 if err != nil { 5245 return nil, err 5246 } 5247 return event.NewSubscription(func(quit <-chan struct{}) error { 5248 defer sub.Unsubscribe() 5249 for { 5250 select { 5251 case log := <-logs: 5252 // New log arrived, parse the event and forward to the user 5253 event := new(ENSRegistryWithFallbackNewOwner) 5254 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "NewOwner", log); err != nil { 5255 return err 5256 } 5257 event.Raw = log 5258 5259 select { 5260 case sink <- event: 5261 case err := <-sub.Err(): 5262 return err 5263 case <-quit: 5264 return nil 5265 } 5266 case err := <-sub.Err(): 5267 return err 5268 case <-quit: 5269 return nil 5270 } 5271 } 5272 }), nil 5273 } 5274 5275 // ParseNewOwner is a log parse operation binding the contract event 0xce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82. 5276 // 5277 // Solidity: event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner) 5278 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) ParseNewOwner(log types.Log) (*ENSRegistryWithFallbackNewOwner, error) { 5279 event := new(ENSRegistryWithFallbackNewOwner) 5280 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "NewOwner", log); err != nil { 5281 return nil, err 5282 } 5283 event.Raw = log 5284 return event, nil 5285 } 5286 5287 // ENSRegistryWithFallbackNewResolverIterator is returned from FilterNewResolver and is used to iterate over the raw logs and unpacked data for NewResolver events raised by the ENSRegistryWithFallback contract. 5288 type ENSRegistryWithFallbackNewResolverIterator struct { 5289 Event *ENSRegistryWithFallbackNewResolver // Event containing the contract specifics and raw log 5290 5291 contract *bind.BoundContract // Generic contract to use for unpacking event data 5292 event string // Event name to use for unpacking event data 5293 5294 logs chan types.Log // Log channel receiving the found contract events 5295 sub ethereum.Subscription // Subscription for errors, completion and termination 5296 done bool // Whether the subscription completed delivering logs 5297 fail error // Occurred error to stop iteration 5298 } 5299 5300 // Next advances the iterator to the subsequent event, returning whether there 5301 // are any more events found. In case of a retrieval or parsing error, false is 5302 // returned and Error() can be queried for the exact failure. 5303 func (it *ENSRegistryWithFallbackNewResolverIterator) Next() bool { 5304 // If the iterator failed, stop iterating 5305 if it.fail != nil { 5306 return false 5307 } 5308 // If the iterator completed, deliver directly whatever's available 5309 if it.done { 5310 select { 5311 case log := <-it.logs: 5312 it.Event = new(ENSRegistryWithFallbackNewResolver) 5313 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5314 it.fail = err 5315 return false 5316 } 5317 it.Event.Raw = log 5318 return true 5319 5320 default: 5321 return false 5322 } 5323 } 5324 // Iterator still in progress, wait for either a data or an error event 5325 select { 5326 case log := <-it.logs: 5327 it.Event = new(ENSRegistryWithFallbackNewResolver) 5328 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5329 it.fail = err 5330 return false 5331 } 5332 it.Event.Raw = log 5333 return true 5334 5335 case err := <-it.sub.Err(): 5336 it.done = true 5337 it.fail = err 5338 return it.Next() 5339 } 5340 } 5341 5342 // Error returns any retrieval or parsing error occurred during filtering. 5343 func (it *ENSRegistryWithFallbackNewResolverIterator) Error() error { 5344 return it.fail 5345 } 5346 5347 // Close terminates the iteration process, releasing any pending underlying 5348 // resources. 5349 func (it *ENSRegistryWithFallbackNewResolverIterator) Close() error { 5350 it.sub.Unsubscribe() 5351 return nil 5352 } 5353 5354 // ENSRegistryWithFallbackNewResolver represents a NewResolver event raised by the ENSRegistryWithFallback contract. 5355 type ENSRegistryWithFallbackNewResolver struct { 5356 Node [32]byte 5357 Resolver common.Address 5358 Raw types.Log // Blockchain specific contextual infos 5359 } 5360 5361 // FilterNewResolver is a free log retrieval operation binding the contract event 0x335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0. 5362 // 5363 // Solidity: event NewResolver(bytes32 indexed node, address resolver) 5364 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) FilterNewResolver(opts *bind.FilterOpts, node [][32]byte) (*ENSRegistryWithFallbackNewResolverIterator, error) { 5365 5366 var nodeRule []interface{} 5367 for _, nodeItem := range node { 5368 nodeRule = append(nodeRule, nodeItem) 5369 } 5370 5371 logs, sub, err := _ENSRegistryWithFallback.contract.FilterLogs(opts, "NewResolver", nodeRule) 5372 if err != nil { 5373 return nil, err 5374 } 5375 return &ENSRegistryWithFallbackNewResolverIterator{contract: _ENSRegistryWithFallback.contract, event: "NewResolver", logs: logs, sub: sub}, nil 5376 } 5377 5378 // WatchNewResolver is a free log subscription operation binding the contract event 0x335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0. 5379 // 5380 // Solidity: event NewResolver(bytes32 indexed node, address resolver) 5381 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) WatchNewResolver(opts *bind.WatchOpts, sink chan<- *ENSRegistryWithFallbackNewResolver, node [][32]byte) (event.Subscription, error) { 5382 5383 var nodeRule []interface{} 5384 for _, nodeItem := range node { 5385 nodeRule = append(nodeRule, nodeItem) 5386 } 5387 5388 logs, sub, err := _ENSRegistryWithFallback.contract.WatchLogs(opts, "NewResolver", nodeRule) 5389 if err != nil { 5390 return nil, err 5391 } 5392 return event.NewSubscription(func(quit <-chan struct{}) error { 5393 defer sub.Unsubscribe() 5394 for { 5395 select { 5396 case log := <-logs: 5397 // New log arrived, parse the event and forward to the user 5398 event := new(ENSRegistryWithFallbackNewResolver) 5399 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "NewResolver", log); err != nil { 5400 return err 5401 } 5402 event.Raw = log 5403 5404 select { 5405 case sink <- event: 5406 case err := <-sub.Err(): 5407 return err 5408 case <-quit: 5409 return nil 5410 } 5411 case err := <-sub.Err(): 5412 return err 5413 case <-quit: 5414 return nil 5415 } 5416 } 5417 }), nil 5418 } 5419 5420 // ParseNewResolver is a log parse operation binding the contract event 0x335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0. 5421 // 5422 // Solidity: event NewResolver(bytes32 indexed node, address resolver) 5423 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) ParseNewResolver(log types.Log) (*ENSRegistryWithFallbackNewResolver, error) { 5424 event := new(ENSRegistryWithFallbackNewResolver) 5425 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "NewResolver", log); err != nil { 5426 return nil, err 5427 } 5428 event.Raw = log 5429 return event, nil 5430 } 5431 5432 // ENSRegistryWithFallbackNewTTLIterator is returned from FilterNewTTL and is used to iterate over the raw logs and unpacked data for NewTTL events raised by the ENSRegistryWithFallback contract. 5433 type ENSRegistryWithFallbackNewTTLIterator struct { 5434 Event *ENSRegistryWithFallbackNewTTL // Event containing the contract specifics and raw log 5435 5436 contract *bind.BoundContract // Generic contract to use for unpacking event data 5437 event string // Event name to use for unpacking event data 5438 5439 logs chan types.Log // Log channel receiving the found contract events 5440 sub ethereum.Subscription // Subscription for errors, completion and termination 5441 done bool // Whether the subscription completed delivering logs 5442 fail error // Occurred error to stop iteration 5443 } 5444 5445 // Next advances the iterator to the subsequent event, returning whether there 5446 // are any more events found. In case of a retrieval or parsing error, false is 5447 // returned and Error() can be queried for the exact failure. 5448 func (it *ENSRegistryWithFallbackNewTTLIterator) Next() bool { 5449 // If the iterator failed, stop iterating 5450 if it.fail != nil { 5451 return false 5452 } 5453 // If the iterator completed, deliver directly whatever's available 5454 if it.done { 5455 select { 5456 case log := <-it.logs: 5457 it.Event = new(ENSRegistryWithFallbackNewTTL) 5458 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5459 it.fail = err 5460 return false 5461 } 5462 it.Event.Raw = log 5463 return true 5464 5465 default: 5466 return false 5467 } 5468 } 5469 // Iterator still in progress, wait for either a data or an error event 5470 select { 5471 case log := <-it.logs: 5472 it.Event = new(ENSRegistryWithFallbackNewTTL) 5473 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5474 it.fail = err 5475 return false 5476 } 5477 it.Event.Raw = log 5478 return true 5479 5480 case err := <-it.sub.Err(): 5481 it.done = true 5482 it.fail = err 5483 return it.Next() 5484 } 5485 } 5486 5487 // Error returns any retrieval or parsing error occurred during filtering. 5488 func (it *ENSRegistryWithFallbackNewTTLIterator) Error() error { 5489 return it.fail 5490 } 5491 5492 // Close terminates the iteration process, releasing any pending underlying 5493 // resources. 5494 func (it *ENSRegistryWithFallbackNewTTLIterator) Close() error { 5495 it.sub.Unsubscribe() 5496 return nil 5497 } 5498 5499 // ENSRegistryWithFallbackNewTTL represents a NewTTL event raised by the ENSRegistryWithFallback contract. 5500 type ENSRegistryWithFallbackNewTTL struct { 5501 Node [32]byte 5502 Ttl uint64 5503 Raw types.Log // Blockchain specific contextual infos 5504 } 5505 5506 // FilterNewTTL is a free log retrieval operation binding the contract event 0x1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68. 5507 // 5508 // Solidity: event NewTTL(bytes32 indexed node, uint64 ttl) 5509 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) FilterNewTTL(opts *bind.FilterOpts, node [][32]byte) (*ENSRegistryWithFallbackNewTTLIterator, error) { 5510 5511 var nodeRule []interface{} 5512 for _, nodeItem := range node { 5513 nodeRule = append(nodeRule, nodeItem) 5514 } 5515 5516 logs, sub, err := _ENSRegistryWithFallback.contract.FilterLogs(opts, "NewTTL", nodeRule) 5517 if err != nil { 5518 return nil, err 5519 } 5520 return &ENSRegistryWithFallbackNewTTLIterator{contract: _ENSRegistryWithFallback.contract, event: "NewTTL", logs: logs, sub: sub}, nil 5521 } 5522 5523 // WatchNewTTL is a free log subscription operation binding the contract event 0x1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68. 5524 // 5525 // Solidity: event NewTTL(bytes32 indexed node, uint64 ttl) 5526 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) WatchNewTTL(opts *bind.WatchOpts, sink chan<- *ENSRegistryWithFallbackNewTTL, node [][32]byte) (event.Subscription, error) { 5527 5528 var nodeRule []interface{} 5529 for _, nodeItem := range node { 5530 nodeRule = append(nodeRule, nodeItem) 5531 } 5532 5533 logs, sub, err := _ENSRegistryWithFallback.contract.WatchLogs(opts, "NewTTL", nodeRule) 5534 if err != nil { 5535 return nil, err 5536 } 5537 return event.NewSubscription(func(quit <-chan struct{}) error { 5538 defer sub.Unsubscribe() 5539 for { 5540 select { 5541 case log := <-logs: 5542 // New log arrived, parse the event and forward to the user 5543 event := new(ENSRegistryWithFallbackNewTTL) 5544 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "NewTTL", log); err != nil { 5545 return err 5546 } 5547 event.Raw = log 5548 5549 select { 5550 case sink <- event: 5551 case err := <-sub.Err(): 5552 return err 5553 case <-quit: 5554 return nil 5555 } 5556 case err := <-sub.Err(): 5557 return err 5558 case <-quit: 5559 return nil 5560 } 5561 } 5562 }), nil 5563 } 5564 5565 // ParseNewTTL is a log parse operation binding the contract event 0x1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68. 5566 // 5567 // Solidity: event NewTTL(bytes32 indexed node, uint64 ttl) 5568 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) ParseNewTTL(log types.Log) (*ENSRegistryWithFallbackNewTTL, error) { 5569 event := new(ENSRegistryWithFallbackNewTTL) 5570 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "NewTTL", log); err != nil { 5571 return nil, err 5572 } 5573 event.Raw = log 5574 return event, nil 5575 } 5576 5577 // ENSRegistryWithFallbackTransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ENSRegistryWithFallback contract. 5578 type ENSRegistryWithFallbackTransferIterator struct { 5579 Event *ENSRegistryWithFallbackTransfer // Event containing the contract specifics and raw log 5580 5581 contract *bind.BoundContract // Generic contract to use for unpacking event data 5582 event string // Event name to use for unpacking event data 5583 5584 logs chan types.Log // Log channel receiving the found contract events 5585 sub ethereum.Subscription // Subscription for errors, completion and termination 5586 done bool // Whether the subscription completed delivering logs 5587 fail error // Occurred error to stop iteration 5588 } 5589 5590 // Next advances the iterator to the subsequent event, returning whether there 5591 // are any more events found. In case of a retrieval or parsing error, false is 5592 // returned and Error() can be queried for the exact failure. 5593 func (it *ENSRegistryWithFallbackTransferIterator) Next() bool { 5594 // If the iterator failed, stop iterating 5595 if it.fail != nil { 5596 return false 5597 } 5598 // If the iterator completed, deliver directly whatever's available 5599 if it.done { 5600 select { 5601 case log := <-it.logs: 5602 it.Event = new(ENSRegistryWithFallbackTransfer) 5603 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5604 it.fail = err 5605 return false 5606 } 5607 it.Event.Raw = log 5608 return true 5609 5610 default: 5611 return false 5612 } 5613 } 5614 // Iterator still in progress, wait for either a data or an error event 5615 select { 5616 case log := <-it.logs: 5617 it.Event = new(ENSRegistryWithFallbackTransfer) 5618 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 5619 it.fail = err 5620 return false 5621 } 5622 it.Event.Raw = log 5623 return true 5624 5625 case err := <-it.sub.Err(): 5626 it.done = true 5627 it.fail = err 5628 return it.Next() 5629 } 5630 } 5631 5632 // Error returns any retrieval or parsing error occurred during filtering. 5633 func (it *ENSRegistryWithFallbackTransferIterator) Error() error { 5634 return it.fail 5635 } 5636 5637 // Close terminates the iteration process, releasing any pending underlying 5638 // resources. 5639 func (it *ENSRegistryWithFallbackTransferIterator) Close() error { 5640 it.sub.Unsubscribe() 5641 return nil 5642 } 5643 5644 // ENSRegistryWithFallbackTransfer represents a Transfer event raised by the ENSRegistryWithFallback contract. 5645 type ENSRegistryWithFallbackTransfer struct { 5646 Node [32]byte 5647 Owner common.Address 5648 Raw types.Log // Blockchain specific contextual infos 5649 } 5650 5651 // FilterTransfer is a free log retrieval operation binding the contract event 0xd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266. 5652 // 5653 // Solidity: event Transfer(bytes32 indexed node, address owner) 5654 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) FilterTransfer(opts *bind.FilterOpts, node [][32]byte) (*ENSRegistryWithFallbackTransferIterator, error) { 5655 5656 var nodeRule []interface{} 5657 for _, nodeItem := range node { 5658 nodeRule = append(nodeRule, nodeItem) 5659 } 5660 5661 logs, sub, err := _ENSRegistryWithFallback.contract.FilterLogs(opts, "Transfer", nodeRule) 5662 if err != nil { 5663 return nil, err 5664 } 5665 return &ENSRegistryWithFallbackTransferIterator{contract: _ENSRegistryWithFallback.contract, event: "Transfer", logs: logs, sub: sub}, nil 5666 } 5667 5668 // WatchTransfer is a free log subscription operation binding the contract event 0xd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266. 5669 // 5670 // Solidity: event Transfer(bytes32 indexed node, address owner) 5671 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ENSRegistryWithFallbackTransfer, node [][32]byte) (event.Subscription, error) { 5672 5673 var nodeRule []interface{} 5674 for _, nodeItem := range node { 5675 nodeRule = append(nodeRule, nodeItem) 5676 } 5677 5678 logs, sub, err := _ENSRegistryWithFallback.contract.WatchLogs(opts, "Transfer", nodeRule) 5679 if err != nil { 5680 return nil, err 5681 } 5682 return event.NewSubscription(func(quit <-chan struct{}) error { 5683 defer sub.Unsubscribe() 5684 for { 5685 select { 5686 case log := <-logs: 5687 // New log arrived, parse the event and forward to the user 5688 event := new(ENSRegistryWithFallbackTransfer) 5689 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "Transfer", log); err != nil { 5690 return err 5691 } 5692 event.Raw = log 5693 5694 select { 5695 case sink <- event: 5696 case err := <-sub.Err(): 5697 return err 5698 case <-quit: 5699 return nil 5700 } 5701 case err := <-sub.Err(): 5702 return err 5703 case <-quit: 5704 return nil 5705 } 5706 } 5707 }), nil 5708 } 5709 5710 // ParseTransfer is a log parse operation binding the contract event 0xd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d266. 5711 // 5712 // Solidity: event Transfer(bytes32 indexed node, address owner) 5713 func (_ENSRegistryWithFallback *ENSRegistryWithFallbackFilterer) ParseTransfer(log types.Log) (*ENSRegistryWithFallbackTransfer, error) { 5714 event := new(ENSRegistryWithFallbackTransfer) 5715 if err := _ENSRegistryWithFallback.contract.UnpackLog(event, "Transfer", log); err != nil { 5716 return nil, err 5717 } 5718 event.Raw = log 5719 return event, nil 5720 } 5721 5722 // InterfaceResolverABI is the input ABI used to generate the binding from. 5723 const InterfaceResolverABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"interfaceImplementer\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"addr\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"coinType\",\"type\":\"uint256\"},{\"name\":\"a\",\"type\":\"bytes\"}],\"name\":\"setAddr\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"a\",\"type\":\"address\"}],\"name\":\"setAddr\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"interfaceID\",\"type\":\"bytes4\"},{\"name\":\"implementer\",\"type\":\"address\"}],\"name\":\"setInterface\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"coinType\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"interfaceID\",\"type\":\"bytes4\"},{\"indexed\":false,\"name\":\"implementer\",\"type\":\"address\"}],\"name\":\"InterfaceChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"a\",\"type\":\"address\"}],\"name\":\"AddrChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"coinType\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newAddress\",\"type\":\"bytes\"}],\"name\":\"AddressChanged\",\"type\":\"event\"}]" 5724 5725 // InterfaceResolverFuncSigs maps the 4-byte function signature to its string representation. 5726 var InterfaceResolverFuncSigs = map[string]string{ 5727 "3b3b57de": "addr(bytes32)", 5728 "f1cb7e06": "addr(bytes32,uint256)", 5729 "124a319c": "interfaceImplementer(bytes32,bytes4)", 5730 "d5fa2b00": "setAddr(bytes32,address)", 5731 "8b95dd71": "setAddr(bytes32,uint256,bytes)", 5732 "e59d895d": "setInterface(bytes32,bytes4,address)", 5733 "01ffc9a7": "supportsInterface(bytes4)", 5734 } 5735 5736 // InterfaceResolver is an auto generated Go binding around an Ethereum contract. 5737 type InterfaceResolver struct { 5738 InterfaceResolverCaller // Read-only binding to the contract 5739 InterfaceResolverTransactor // Write-only binding to the contract 5740 InterfaceResolverFilterer // Log filterer for contract events 5741 } 5742 5743 // InterfaceResolverCaller is an auto generated read-only Go binding around an Ethereum contract. 5744 type InterfaceResolverCaller struct { 5745 contract *bind.BoundContract // Generic contract wrapper for the low level calls 5746 } 5747 5748 // InterfaceResolverTransactor is an auto generated write-only Go binding around an Ethereum contract. 5749 type InterfaceResolverTransactor struct { 5750 contract *bind.BoundContract // Generic contract wrapper for the low level calls 5751 } 5752 5753 // InterfaceResolverFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 5754 type InterfaceResolverFilterer struct { 5755 contract *bind.BoundContract // Generic contract wrapper for the low level calls 5756 } 5757 5758 // InterfaceResolverSession is an auto generated Go binding around an Ethereum contract, 5759 // with pre-set call and transact options. 5760 type InterfaceResolverSession struct { 5761 Contract *InterfaceResolver // Generic contract binding to set the session for 5762 CallOpts bind.CallOpts // Call options to use throughout this session 5763 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 5764 } 5765 5766 // InterfaceResolverCallerSession is an auto generated read-only Go binding around an Ethereum contract, 5767 // with pre-set call options. 5768 type InterfaceResolverCallerSession struct { 5769 Contract *InterfaceResolverCaller // Generic contract caller binding to set the session for 5770 CallOpts bind.CallOpts // Call options to use throughout this session 5771 } 5772 5773 // InterfaceResolverTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 5774 // with pre-set transact options. 5775 type InterfaceResolverTransactorSession struct { 5776 Contract *InterfaceResolverTransactor // Generic contract transactor binding to set the session for 5777 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 5778 } 5779 5780 // InterfaceResolverRaw is an auto generated low-level Go binding around an Ethereum contract. 5781 type InterfaceResolverRaw struct { 5782 Contract *InterfaceResolver // Generic contract binding to access the raw methods on 5783 } 5784 5785 // InterfaceResolverCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 5786 type InterfaceResolverCallerRaw struct { 5787 Contract *InterfaceResolverCaller // Generic read-only contract binding to access the raw methods on 5788 } 5789 5790 // InterfaceResolverTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 5791 type InterfaceResolverTransactorRaw struct { 5792 Contract *InterfaceResolverTransactor // Generic write-only contract binding to access the raw methods on 5793 } 5794 5795 // NewInterfaceResolver creates a new instance of InterfaceResolver, bound to a specific deployed contract. 5796 func NewInterfaceResolver(address common.Address, backend bind.ContractBackend) (*InterfaceResolver, error) { 5797 contract, err := bindInterfaceResolver(address, backend, backend, backend) 5798 if err != nil { 5799 return nil, err 5800 } 5801 return &InterfaceResolver{InterfaceResolverCaller: InterfaceResolverCaller{contract: contract}, InterfaceResolverTransactor: InterfaceResolverTransactor{contract: contract}, InterfaceResolverFilterer: InterfaceResolverFilterer{contract: contract}}, nil 5802 } 5803 5804 // NewInterfaceResolverCaller creates a new read-only instance of InterfaceResolver, bound to a specific deployed contract. 5805 func NewInterfaceResolverCaller(address common.Address, caller bind.ContractCaller) (*InterfaceResolverCaller, error) { 5806 contract, err := bindInterfaceResolver(address, caller, nil, nil) 5807 if err != nil { 5808 return nil, err 5809 } 5810 return &InterfaceResolverCaller{contract: contract}, nil 5811 } 5812 5813 // NewInterfaceResolverTransactor creates a new write-only instance of InterfaceResolver, bound to a specific deployed contract. 5814 func NewInterfaceResolverTransactor(address common.Address, transactor bind.ContractTransactor) (*InterfaceResolverTransactor, error) { 5815 contract, err := bindInterfaceResolver(address, nil, transactor, nil) 5816 if err != nil { 5817 return nil, err 5818 } 5819 return &InterfaceResolverTransactor{contract: contract}, nil 5820 } 5821 5822 // NewInterfaceResolverFilterer creates a new log filterer instance of InterfaceResolver, bound to a specific deployed contract. 5823 func NewInterfaceResolverFilterer(address common.Address, filterer bind.ContractFilterer) (*InterfaceResolverFilterer, error) { 5824 contract, err := bindInterfaceResolver(address, nil, nil, filterer) 5825 if err != nil { 5826 return nil, err 5827 } 5828 return &InterfaceResolverFilterer{contract: contract}, nil 5829 } 5830 5831 // bindInterfaceResolver binds a generic wrapper to an already deployed contract. 5832 func bindInterfaceResolver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 5833 parsed, err := abi.JSON(strings.NewReader(InterfaceResolverABI)) 5834 if err != nil { 5835 return nil, err 5836 } 5837 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 5838 } 5839 5840 // Call invokes the (constant) contract method with params as input values and 5841 // sets the output to result. The result type might be a single field for simple 5842 // returns, a slice of interfaces for anonymous returns and a struct for named 5843 // returns. 5844 func (_InterfaceResolver *InterfaceResolverRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 5845 return _InterfaceResolver.Contract.InterfaceResolverCaller.contract.Call(opts, result, method, params...) 5846 } 5847 5848 // Transfer initiates a plain transaction to move funds to the contract, calling 5849 // its default method if one is available. 5850 func (_InterfaceResolver *InterfaceResolverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 5851 return _InterfaceResolver.Contract.InterfaceResolverTransactor.contract.Transfer(opts) 5852 } 5853 5854 // Transact invokes the (paid) contract method with params as input values. 5855 func (_InterfaceResolver *InterfaceResolverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 5856 return _InterfaceResolver.Contract.InterfaceResolverTransactor.contract.Transact(opts, method, params...) 5857 } 5858 5859 // Call invokes the (constant) contract method with params as input values and 5860 // sets the output to result. The result type might be a single field for simple 5861 // returns, a slice of interfaces for anonymous returns and a struct for named 5862 // returns. 5863 func (_InterfaceResolver *InterfaceResolverCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 5864 return _InterfaceResolver.Contract.contract.Call(opts, result, method, params...) 5865 } 5866 5867 // Transfer initiates a plain transaction to move funds to the contract, calling 5868 // its default method if one is available. 5869 func (_InterfaceResolver *InterfaceResolverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 5870 return _InterfaceResolver.Contract.contract.Transfer(opts) 5871 } 5872 5873 // Transact invokes the (paid) contract method with params as input values. 5874 func (_InterfaceResolver *InterfaceResolverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 5875 return _InterfaceResolver.Contract.contract.Transact(opts, method, params...) 5876 } 5877 5878 // Addr is a free data retrieval call binding the contract method 0x3b3b57de. 5879 // 5880 // Solidity: function addr(bytes32 node) view returns(address) 5881 func (_InterfaceResolver *InterfaceResolverCaller) Addr(opts *bind.CallOpts, node [32]byte) (common.Address, error) { 5882 var out []interface{} 5883 err := _InterfaceResolver.contract.Call(opts, &out, "addr", node) 5884 5885 if err != nil { 5886 return *new(common.Address), err 5887 } 5888 5889 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 5890 5891 return out0, err 5892 5893 } 5894 5895 // Addr is a free data retrieval call binding the contract method 0x3b3b57de. 5896 // 5897 // Solidity: function addr(bytes32 node) view returns(address) 5898 func (_InterfaceResolver *InterfaceResolverSession) Addr(node [32]byte) (common.Address, error) { 5899 return _InterfaceResolver.Contract.Addr(&_InterfaceResolver.CallOpts, node) 5900 } 5901 5902 // Addr is a free data retrieval call binding the contract method 0x3b3b57de. 5903 // 5904 // Solidity: function addr(bytes32 node) view returns(address) 5905 func (_InterfaceResolver *InterfaceResolverCallerSession) Addr(node [32]byte) (common.Address, error) { 5906 return _InterfaceResolver.Contract.Addr(&_InterfaceResolver.CallOpts, node) 5907 } 5908 5909 // Addr0 is a free data retrieval call binding the contract method 0xf1cb7e06. 5910 // 5911 // Solidity: function addr(bytes32 node, uint256 coinType) view returns(bytes) 5912 func (_InterfaceResolver *InterfaceResolverCaller) Addr0(opts *bind.CallOpts, node [32]byte, coinType *big.Int) ([]byte, error) { 5913 var out []interface{} 5914 err := _InterfaceResolver.contract.Call(opts, &out, "addr0", node, coinType) 5915 5916 if err != nil { 5917 return *new([]byte), err 5918 } 5919 5920 out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) 5921 5922 return out0, err 5923 5924 } 5925 5926 // Addr0 is a free data retrieval call binding the contract method 0xf1cb7e06. 5927 // 5928 // Solidity: function addr(bytes32 node, uint256 coinType) view returns(bytes) 5929 func (_InterfaceResolver *InterfaceResolverSession) Addr0(node [32]byte, coinType *big.Int) ([]byte, error) { 5930 return _InterfaceResolver.Contract.Addr0(&_InterfaceResolver.CallOpts, node, coinType) 5931 } 5932 5933 // Addr0 is a free data retrieval call binding the contract method 0xf1cb7e06. 5934 // 5935 // Solidity: function addr(bytes32 node, uint256 coinType) view returns(bytes) 5936 func (_InterfaceResolver *InterfaceResolverCallerSession) Addr0(node [32]byte, coinType *big.Int) ([]byte, error) { 5937 return _InterfaceResolver.Contract.Addr0(&_InterfaceResolver.CallOpts, node, coinType) 5938 } 5939 5940 // InterfaceImplementer is a free data retrieval call binding the contract method 0x124a319c. 5941 // 5942 // Solidity: function interfaceImplementer(bytes32 node, bytes4 interfaceID) view returns(address) 5943 func (_InterfaceResolver *InterfaceResolverCaller) InterfaceImplementer(opts *bind.CallOpts, node [32]byte, interfaceID [4]byte) (common.Address, error) { 5944 var out []interface{} 5945 err := _InterfaceResolver.contract.Call(opts, &out, "interfaceImplementer", node, interfaceID) 5946 5947 if err != nil { 5948 return *new(common.Address), err 5949 } 5950 5951 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 5952 5953 return out0, err 5954 5955 } 5956 5957 // InterfaceImplementer is a free data retrieval call binding the contract method 0x124a319c. 5958 // 5959 // Solidity: function interfaceImplementer(bytes32 node, bytes4 interfaceID) view returns(address) 5960 func (_InterfaceResolver *InterfaceResolverSession) InterfaceImplementer(node [32]byte, interfaceID [4]byte) (common.Address, error) { 5961 return _InterfaceResolver.Contract.InterfaceImplementer(&_InterfaceResolver.CallOpts, node, interfaceID) 5962 } 5963 5964 // InterfaceImplementer is a free data retrieval call binding the contract method 0x124a319c. 5965 // 5966 // Solidity: function interfaceImplementer(bytes32 node, bytes4 interfaceID) view returns(address) 5967 func (_InterfaceResolver *InterfaceResolverCallerSession) InterfaceImplementer(node [32]byte, interfaceID [4]byte) (common.Address, error) { 5968 return _InterfaceResolver.Contract.InterfaceImplementer(&_InterfaceResolver.CallOpts, node, interfaceID) 5969 } 5970 5971 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 5972 // 5973 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 5974 func (_InterfaceResolver *InterfaceResolverCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 5975 var out []interface{} 5976 err := _InterfaceResolver.contract.Call(opts, &out, "supportsInterface", interfaceID) 5977 5978 if err != nil { 5979 return *new(bool), err 5980 } 5981 5982 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 5983 5984 return out0, err 5985 5986 } 5987 5988 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 5989 // 5990 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 5991 func (_InterfaceResolver *InterfaceResolverSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 5992 return _InterfaceResolver.Contract.SupportsInterface(&_InterfaceResolver.CallOpts, interfaceID) 5993 } 5994 5995 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 5996 // 5997 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 5998 func (_InterfaceResolver *InterfaceResolverCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 5999 return _InterfaceResolver.Contract.SupportsInterface(&_InterfaceResolver.CallOpts, interfaceID) 6000 } 6001 6002 // SetAddr is a paid mutator transaction binding the contract method 0x8b95dd71. 6003 // 6004 // Solidity: function setAddr(bytes32 node, uint256 coinType, bytes a) returns() 6005 func (_InterfaceResolver *InterfaceResolverTransactor) SetAddr(opts *bind.TransactOpts, node [32]byte, coinType *big.Int, a []byte) (*types.Transaction, error) { 6006 return _InterfaceResolver.contract.Transact(opts, "setAddr", node, coinType, a) 6007 } 6008 6009 // SetAddr is a paid mutator transaction binding the contract method 0x8b95dd71. 6010 // 6011 // Solidity: function setAddr(bytes32 node, uint256 coinType, bytes a) returns() 6012 func (_InterfaceResolver *InterfaceResolverSession) SetAddr(node [32]byte, coinType *big.Int, a []byte) (*types.Transaction, error) { 6013 return _InterfaceResolver.Contract.SetAddr(&_InterfaceResolver.TransactOpts, node, coinType, a) 6014 } 6015 6016 // SetAddr is a paid mutator transaction binding the contract method 0x8b95dd71. 6017 // 6018 // Solidity: function setAddr(bytes32 node, uint256 coinType, bytes a) returns() 6019 func (_InterfaceResolver *InterfaceResolverTransactorSession) SetAddr(node [32]byte, coinType *big.Int, a []byte) (*types.Transaction, error) { 6020 return _InterfaceResolver.Contract.SetAddr(&_InterfaceResolver.TransactOpts, node, coinType, a) 6021 } 6022 6023 // SetAddr0 is a paid mutator transaction binding the contract method 0xd5fa2b00. 6024 // 6025 // Solidity: function setAddr(bytes32 node, address a) returns() 6026 func (_InterfaceResolver *InterfaceResolverTransactor) SetAddr0(opts *bind.TransactOpts, node [32]byte, a common.Address) (*types.Transaction, error) { 6027 return _InterfaceResolver.contract.Transact(opts, "setAddr0", node, a) 6028 } 6029 6030 // SetAddr0 is a paid mutator transaction binding the contract method 0xd5fa2b00. 6031 // 6032 // Solidity: function setAddr(bytes32 node, address a) returns() 6033 func (_InterfaceResolver *InterfaceResolverSession) SetAddr0(node [32]byte, a common.Address) (*types.Transaction, error) { 6034 return _InterfaceResolver.Contract.SetAddr0(&_InterfaceResolver.TransactOpts, node, a) 6035 } 6036 6037 // SetAddr0 is a paid mutator transaction binding the contract method 0xd5fa2b00. 6038 // 6039 // Solidity: function setAddr(bytes32 node, address a) returns() 6040 func (_InterfaceResolver *InterfaceResolverTransactorSession) SetAddr0(node [32]byte, a common.Address) (*types.Transaction, error) { 6041 return _InterfaceResolver.Contract.SetAddr0(&_InterfaceResolver.TransactOpts, node, a) 6042 } 6043 6044 // SetInterface is a paid mutator transaction binding the contract method 0xe59d895d. 6045 // 6046 // Solidity: function setInterface(bytes32 node, bytes4 interfaceID, address implementer) returns() 6047 func (_InterfaceResolver *InterfaceResolverTransactor) SetInterface(opts *bind.TransactOpts, node [32]byte, interfaceID [4]byte, implementer common.Address) (*types.Transaction, error) { 6048 return _InterfaceResolver.contract.Transact(opts, "setInterface", node, interfaceID, implementer) 6049 } 6050 6051 // SetInterface is a paid mutator transaction binding the contract method 0xe59d895d. 6052 // 6053 // Solidity: function setInterface(bytes32 node, bytes4 interfaceID, address implementer) returns() 6054 func (_InterfaceResolver *InterfaceResolverSession) SetInterface(node [32]byte, interfaceID [4]byte, implementer common.Address) (*types.Transaction, error) { 6055 return _InterfaceResolver.Contract.SetInterface(&_InterfaceResolver.TransactOpts, node, interfaceID, implementer) 6056 } 6057 6058 // SetInterface is a paid mutator transaction binding the contract method 0xe59d895d. 6059 // 6060 // Solidity: function setInterface(bytes32 node, bytes4 interfaceID, address implementer) returns() 6061 func (_InterfaceResolver *InterfaceResolverTransactorSession) SetInterface(node [32]byte, interfaceID [4]byte, implementer common.Address) (*types.Transaction, error) { 6062 return _InterfaceResolver.Contract.SetInterface(&_InterfaceResolver.TransactOpts, node, interfaceID, implementer) 6063 } 6064 6065 // InterfaceResolverAddrChangedIterator is returned from FilterAddrChanged and is used to iterate over the raw logs and unpacked data for AddrChanged events raised by the InterfaceResolver contract. 6066 type InterfaceResolverAddrChangedIterator struct { 6067 Event *InterfaceResolverAddrChanged // Event containing the contract specifics and raw log 6068 6069 contract *bind.BoundContract // Generic contract to use for unpacking event data 6070 event string // Event name to use for unpacking event data 6071 6072 logs chan types.Log // Log channel receiving the found contract events 6073 sub ethereum.Subscription // Subscription for errors, completion and termination 6074 done bool // Whether the subscription completed delivering logs 6075 fail error // Occurred error to stop iteration 6076 } 6077 6078 // Next advances the iterator to the subsequent event, returning whether there 6079 // are any more events found. In case of a retrieval or parsing error, false is 6080 // returned and Error() can be queried for the exact failure. 6081 func (it *InterfaceResolverAddrChangedIterator) Next() bool { 6082 // If the iterator failed, stop iterating 6083 if it.fail != nil { 6084 return false 6085 } 6086 // If the iterator completed, deliver directly whatever's available 6087 if it.done { 6088 select { 6089 case log := <-it.logs: 6090 it.Event = new(InterfaceResolverAddrChanged) 6091 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6092 it.fail = err 6093 return false 6094 } 6095 it.Event.Raw = log 6096 return true 6097 6098 default: 6099 return false 6100 } 6101 } 6102 // Iterator still in progress, wait for either a data or an error event 6103 select { 6104 case log := <-it.logs: 6105 it.Event = new(InterfaceResolverAddrChanged) 6106 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6107 it.fail = err 6108 return false 6109 } 6110 it.Event.Raw = log 6111 return true 6112 6113 case err := <-it.sub.Err(): 6114 it.done = true 6115 it.fail = err 6116 return it.Next() 6117 } 6118 } 6119 6120 // Error returns any retrieval or parsing error occurred during filtering. 6121 func (it *InterfaceResolverAddrChangedIterator) Error() error { 6122 return it.fail 6123 } 6124 6125 // Close terminates the iteration process, releasing any pending underlying 6126 // resources. 6127 func (it *InterfaceResolverAddrChangedIterator) Close() error { 6128 it.sub.Unsubscribe() 6129 return nil 6130 } 6131 6132 // InterfaceResolverAddrChanged represents a AddrChanged event raised by the InterfaceResolver contract. 6133 type InterfaceResolverAddrChanged struct { 6134 Node [32]byte 6135 A common.Address 6136 Raw types.Log // Blockchain specific contextual infos 6137 } 6138 6139 // FilterAddrChanged is a free log retrieval operation binding the contract event 0x52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2. 6140 // 6141 // Solidity: event AddrChanged(bytes32 indexed node, address a) 6142 func (_InterfaceResolver *InterfaceResolverFilterer) FilterAddrChanged(opts *bind.FilterOpts, node [][32]byte) (*InterfaceResolverAddrChangedIterator, error) { 6143 6144 var nodeRule []interface{} 6145 for _, nodeItem := range node { 6146 nodeRule = append(nodeRule, nodeItem) 6147 } 6148 6149 logs, sub, err := _InterfaceResolver.contract.FilterLogs(opts, "AddrChanged", nodeRule) 6150 if err != nil { 6151 return nil, err 6152 } 6153 return &InterfaceResolverAddrChangedIterator{contract: _InterfaceResolver.contract, event: "AddrChanged", logs: logs, sub: sub}, nil 6154 } 6155 6156 // WatchAddrChanged is a free log subscription operation binding the contract event 0x52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2. 6157 // 6158 // Solidity: event AddrChanged(bytes32 indexed node, address a) 6159 func (_InterfaceResolver *InterfaceResolverFilterer) WatchAddrChanged(opts *bind.WatchOpts, sink chan<- *InterfaceResolverAddrChanged, node [][32]byte) (event.Subscription, error) { 6160 6161 var nodeRule []interface{} 6162 for _, nodeItem := range node { 6163 nodeRule = append(nodeRule, nodeItem) 6164 } 6165 6166 logs, sub, err := _InterfaceResolver.contract.WatchLogs(opts, "AddrChanged", nodeRule) 6167 if err != nil { 6168 return nil, err 6169 } 6170 return event.NewSubscription(func(quit <-chan struct{}) error { 6171 defer sub.Unsubscribe() 6172 for { 6173 select { 6174 case log := <-logs: 6175 // New log arrived, parse the event and forward to the user 6176 event := new(InterfaceResolverAddrChanged) 6177 if err := _InterfaceResolver.contract.UnpackLog(event, "AddrChanged", log); err != nil { 6178 return err 6179 } 6180 event.Raw = log 6181 6182 select { 6183 case sink <- event: 6184 case err := <-sub.Err(): 6185 return err 6186 case <-quit: 6187 return nil 6188 } 6189 case err := <-sub.Err(): 6190 return err 6191 case <-quit: 6192 return nil 6193 } 6194 } 6195 }), nil 6196 } 6197 6198 // ParseAddrChanged is a log parse operation binding the contract event 0x52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2. 6199 // 6200 // Solidity: event AddrChanged(bytes32 indexed node, address a) 6201 func (_InterfaceResolver *InterfaceResolverFilterer) ParseAddrChanged(log types.Log) (*InterfaceResolverAddrChanged, error) { 6202 event := new(InterfaceResolverAddrChanged) 6203 if err := _InterfaceResolver.contract.UnpackLog(event, "AddrChanged", log); err != nil { 6204 return nil, err 6205 } 6206 event.Raw = log 6207 return event, nil 6208 } 6209 6210 // InterfaceResolverAddressChangedIterator is returned from FilterAddressChanged and is used to iterate over the raw logs and unpacked data for AddressChanged events raised by the InterfaceResolver contract. 6211 type InterfaceResolverAddressChangedIterator struct { 6212 Event *InterfaceResolverAddressChanged // Event containing the contract specifics and raw log 6213 6214 contract *bind.BoundContract // Generic contract to use for unpacking event data 6215 event string // Event name to use for unpacking event data 6216 6217 logs chan types.Log // Log channel receiving the found contract events 6218 sub ethereum.Subscription // Subscription for errors, completion and termination 6219 done bool // Whether the subscription completed delivering logs 6220 fail error // Occurred error to stop iteration 6221 } 6222 6223 // Next advances the iterator to the subsequent event, returning whether there 6224 // are any more events found. In case of a retrieval or parsing error, false is 6225 // returned and Error() can be queried for the exact failure. 6226 func (it *InterfaceResolverAddressChangedIterator) Next() bool { 6227 // If the iterator failed, stop iterating 6228 if it.fail != nil { 6229 return false 6230 } 6231 // If the iterator completed, deliver directly whatever's available 6232 if it.done { 6233 select { 6234 case log := <-it.logs: 6235 it.Event = new(InterfaceResolverAddressChanged) 6236 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6237 it.fail = err 6238 return false 6239 } 6240 it.Event.Raw = log 6241 return true 6242 6243 default: 6244 return false 6245 } 6246 } 6247 // Iterator still in progress, wait for either a data or an error event 6248 select { 6249 case log := <-it.logs: 6250 it.Event = new(InterfaceResolverAddressChanged) 6251 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6252 it.fail = err 6253 return false 6254 } 6255 it.Event.Raw = log 6256 return true 6257 6258 case err := <-it.sub.Err(): 6259 it.done = true 6260 it.fail = err 6261 return it.Next() 6262 } 6263 } 6264 6265 // Error returns any retrieval or parsing error occurred during filtering. 6266 func (it *InterfaceResolverAddressChangedIterator) Error() error { 6267 return it.fail 6268 } 6269 6270 // Close terminates the iteration process, releasing any pending underlying 6271 // resources. 6272 func (it *InterfaceResolverAddressChangedIterator) Close() error { 6273 it.sub.Unsubscribe() 6274 return nil 6275 } 6276 6277 // InterfaceResolverAddressChanged represents a AddressChanged event raised by the InterfaceResolver contract. 6278 type InterfaceResolverAddressChanged struct { 6279 Node [32]byte 6280 CoinType *big.Int 6281 NewAddress []byte 6282 Raw types.Log // Blockchain specific contextual infos 6283 } 6284 6285 // FilterAddressChanged is a free log retrieval operation binding the contract event 0x65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752. 6286 // 6287 // Solidity: event AddressChanged(bytes32 indexed node, uint256 coinType, bytes newAddress) 6288 func (_InterfaceResolver *InterfaceResolverFilterer) FilterAddressChanged(opts *bind.FilterOpts, node [][32]byte) (*InterfaceResolverAddressChangedIterator, error) { 6289 6290 var nodeRule []interface{} 6291 for _, nodeItem := range node { 6292 nodeRule = append(nodeRule, nodeItem) 6293 } 6294 6295 logs, sub, err := _InterfaceResolver.contract.FilterLogs(opts, "AddressChanged", nodeRule) 6296 if err != nil { 6297 return nil, err 6298 } 6299 return &InterfaceResolverAddressChangedIterator{contract: _InterfaceResolver.contract, event: "AddressChanged", logs: logs, sub: sub}, nil 6300 } 6301 6302 // WatchAddressChanged is a free log subscription operation binding the contract event 0x65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752. 6303 // 6304 // Solidity: event AddressChanged(bytes32 indexed node, uint256 coinType, bytes newAddress) 6305 func (_InterfaceResolver *InterfaceResolverFilterer) WatchAddressChanged(opts *bind.WatchOpts, sink chan<- *InterfaceResolverAddressChanged, node [][32]byte) (event.Subscription, error) { 6306 6307 var nodeRule []interface{} 6308 for _, nodeItem := range node { 6309 nodeRule = append(nodeRule, nodeItem) 6310 } 6311 6312 logs, sub, err := _InterfaceResolver.contract.WatchLogs(opts, "AddressChanged", nodeRule) 6313 if err != nil { 6314 return nil, err 6315 } 6316 return event.NewSubscription(func(quit <-chan struct{}) error { 6317 defer sub.Unsubscribe() 6318 for { 6319 select { 6320 case log := <-logs: 6321 // New log arrived, parse the event and forward to the user 6322 event := new(InterfaceResolverAddressChanged) 6323 if err := _InterfaceResolver.contract.UnpackLog(event, "AddressChanged", log); err != nil { 6324 return err 6325 } 6326 event.Raw = log 6327 6328 select { 6329 case sink <- event: 6330 case err := <-sub.Err(): 6331 return err 6332 case <-quit: 6333 return nil 6334 } 6335 case err := <-sub.Err(): 6336 return err 6337 case <-quit: 6338 return nil 6339 } 6340 } 6341 }), nil 6342 } 6343 6344 // ParseAddressChanged is a log parse operation binding the contract event 0x65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752. 6345 // 6346 // Solidity: event AddressChanged(bytes32 indexed node, uint256 coinType, bytes newAddress) 6347 func (_InterfaceResolver *InterfaceResolverFilterer) ParseAddressChanged(log types.Log) (*InterfaceResolverAddressChanged, error) { 6348 event := new(InterfaceResolverAddressChanged) 6349 if err := _InterfaceResolver.contract.UnpackLog(event, "AddressChanged", log); err != nil { 6350 return nil, err 6351 } 6352 event.Raw = log 6353 return event, nil 6354 } 6355 6356 // InterfaceResolverInterfaceChangedIterator is returned from FilterInterfaceChanged and is used to iterate over the raw logs and unpacked data for InterfaceChanged events raised by the InterfaceResolver contract. 6357 type InterfaceResolverInterfaceChangedIterator struct { 6358 Event *InterfaceResolverInterfaceChanged // Event containing the contract specifics and raw log 6359 6360 contract *bind.BoundContract // Generic contract to use for unpacking event data 6361 event string // Event name to use for unpacking event data 6362 6363 logs chan types.Log // Log channel receiving the found contract events 6364 sub ethereum.Subscription // Subscription for errors, completion and termination 6365 done bool // Whether the subscription completed delivering logs 6366 fail error // Occurred error to stop iteration 6367 } 6368 6369 // Next advances the iterator to the subsequent event, returning whether there 6370 // are any more events found. In case of a retrieval or parsing error, false is 6371 // returned and Error() can be queried for the exact failure. 6372 func (it *InterfaceResolverInterfaceChangedIterator) Next() bool { 6373 // If the iterator failed, stop iterating 6374 if it.fail != nil { 6375 return false 6376 } 6377 // If the iterator completed, deliver directly whatever's available 6378 if it.done { 6379 select { 6380 case log := <-it.logs: 6381 it.Event = new(InterfaceResolverInterfaceChanged) 6382 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6383 it.fail = err 6384 return false 6385 } 6386 it.Event.Raw = log 6387 return true 6388 6389 default: 6390 return false 6391 } 6392 } 6393 // Iterator still in progress, wait for either a data or an error event 6394 select { 6395 case log := <-it.logs: 6396 it.Event = new(InterfaceResolverInterfaceChanged) 6397 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6398 it.fail = err 6399 return false 6400 } 6401 it.Event.Raw = log 6402 return true 6403 6404 case err := <-it.sub.Err(): 6405 it.done = true 6406 it.fail = err 6407 return it.Next() 6408 } 6409 } 6410 6411 // Error returns any retrieval or parsing error occurred during filtering. 6412 func (it *InterfaceResolverInterfaceChangedIterator) Error() error { 6413 return it.fail 6414 } 6415 6416 // Close terminates the iteration process, releasing any pending underlying 6417 // resources. 6418 func (it *InterfaceResolverInterfaceChangedIterator) Close() error { 6419 it.sub.Unsubscribe() 6420 return nil 6421 } 6422 6423 // InterfaceResolverInterfaceChanged represents a InterfaceChanged event raised by the InterfaceResolver contract. 6424 type InterfaceResolverInterfaceChanged struct { 6425 Node [32]byte 6426 InterfaceID [4]byte 6427 Implementer common.Address 6428 Raw types.Log // Blockchain specific contextual infos 6429 } 6430 6431 // FilterInterfaceChanged is a free log retrieval operation binding the contract event 0x7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa. 6432 // 6433 // Solidity: event InterfaceChanged(bytes32 indexed node, bytes4 indexed interfaceID, address implementer) 6434 func (_InterfaceResolver *InterfaceResolverFilterer) FilterInterfaceChanged(opts *bind.FilterOpts, node [][32]byte, interfaceID [][4]byte) (*InterfaceResolverInterfaceChangedIterator, error) { 6435 6436 var nodeRule []interface{} 6437 for _, nodeItem := range node { 6438 nodeRule = append(nodeRule, nodeItem) 6439 } 6440 var interfaceIDRule []interface{} 6441 for _, interfaceIDItem := range interfaceID { 6442 interfaceIDRule = append(interfaceIDRule, interfaceIDItem) 6443 } 6444 6445 logs, sub, err := _InterfaceResolver.contract.FilterLogs(opts, "InterfaceChanged", nodeRule, interfaceIDRule) 6446 if err != nil { 6447 return nil, err 6448 } 6449 return &InterfaceResolverInterfaceChangedIterator{contract: _InterfaceResolver.contract, event: "InterfaceChanged", logs: logs, sub: sub}, nil 6450 } 6451 6452 // WatchInterfaceChanged is a free log subscription operation binding the contract event 0x7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa. 6453 // 6454 // Solidity: event InterfaceChanged(bytes32 indexed node, bytes4 indexed interfaceID, address implementer) 6455 func (_InterfaceResolver *InterfaceResolverFilterer) WatchInterfaceChanged(opts *bind.WatchOpts, sink chan<- *InterfaceResolverInterfaceChanged, node [][32]byte, interfaceID [][4]byte) (event.Subscription, error) { 6456 6457 var nodeRule []interface{} 6458 for _, nodeItem := range node { 6459 nodeRule = append(nodeRule, nodeItem) 6460 } 6461 var interfaceIDRule []interface{} 6462 for _, interfaceIDItem := range interfaceID { 6463 interfaceIDRule = append(interfaceIDRule, interfaceIDItem) 6464 } 6465 6466 logs, sub, err := _InterfaceResolver.contract.WatchLogs(opts, "InterfaceChanged", nodeRule, interfaceIDRule) 6467 if err != nil { 6468 return nil, err 6469 } 6470 return event.NewSubscription(func(quit <-chan struct{}) error { 6471 defer sub.Unsubscribe() 6472 for { 6473 select { 6474 case log := <-logs: 6475 // New log arrived, parse the event and forward to the user 6476 event := new(InterfaceResolverInterfaceChanged) 6477 if err := _InterfaceResolver.contract.UnpackLog(event, "InterfaceChanged", log); err != nil { 6478 return err 6479 } 6480 event.Raw = log 6481 6482 select { 6483 case sink <- event: 6484 case err := <-sub.Err(): 6485 return err 6486 case <-quit: 6487 return nil 6488 } 6489 case err := <-sub.Err(): 6490 return err 6491 case <-quit: 6492 return nil 6493 } 6494 } 6495 }), nil 6496 } 6497 6498 // ParseInterfaceChanged is a log parse operation binding the contract event 0x7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa. 6499 // 6500 // Solidity: event InterfaceChanged(bytes32 indexed node, bytes4 indexed interfaceID, address implementer) 6501 func (_InterfaceResolver *InterfaceResolverFilterer) ParseInterfaceChanged(log types.Log) (*InterfaceResolverInterfaceChanged, error) { 6502 event := new(InterfaceResolverInterfaceChanged) 6503 if err := _InterfaceResolver.contract.UnpackLog(event, "InterfaceChanged", log); err != nil { 6504 return nil, err 6505 } 6506 event.Raw = log 6507 return event, nil 6508 } 6509 6510 // NameResolverABI is the input ABI used to generate the binding from. 6511 const NameResolverABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"name\",\"type\":\"string\"}],\"name\":\"setName\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NameChanged\",\"type\":\"event\"}]" 6512 6513 // NameResolverFuncSigs maps the 4-byte function signature to its string representation. 6514 var NameResolverFuncSigs = map[string]string{ 6515 "691f3431": "name(bytes32)", 6516 "77372213": "setName(bytes32,string)", 6517 "01ffc9a7": "supportsInterface(bytes4)", 6518 } 6519 6520 // NameResolver is an auto generated Go binding around an Ethereum contract. 6521 type NameResolver struct { 6522 NameResolverCaller // Read-only binding to the contract 6523 NameResolverTransactor // Write-only binding to the contract 6524 NameResolverFilterer // Log filterer for contract events 6525 } 6526 6527 // NameResolverCaller is an auto generated read-only Go binding around an Ethereum contract. 6528 type NameResolverCaller struct { 6529 contract *bind.BoundContract // Generic contract wrapper for the low level calls 6530 } 6531 6532 // NameResolverTransactor is an auto generated write-only Go binding around an Ethereum contract. 6533 type NameResolverTransactor struct { 6534 contract *bind.BoundContract // Generic contract wrapper for the low level calls 6535 } 6536 6537 // NameResolverFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 6538 type NameResolverFilterer struct { 6539 contract *bind.BoundContract // Generic contract wrapper for the low level calls 6540 } 6541 6542 // NameResolverSession is an auto generated Go binding around an Ethereum contract, 6543 // with pre-set call and transact options. 6544 type NameResolverSession struct { 6545 Contract *NameResolver // Generic contract binding to set the session for 6546 CallOpts bind.CallOpts // Call options to use throughout this session 6547 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 6548 } 6549 6550 // NameResolverCallerSession is an auto generated read-only Go binding around an Ethereum contract, 6551 // with pre-set call options. 6552 type NameResolverCallerSession struct { 6553 Contract *NameResolverCaller // Generic contract caller binding to set the session for 6554 CallOpts bind.CallOpts // Call options to use throughout this session 6555 } 6556 6557 // NameResolverTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 6558 // with pre-set transact options. 6559 type NameResolverTransactorSession struct { 6560 Contract *NameResolverTransactor // Generic contract transactor binding to set the session for 6561 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 6562 } 6563 6564 // NameResolverRaw is an auto generated low-level Go binding around an Ethereum contract. 6565 type NameResolverRaw struct { 6566 Contract *NameResolver // Generic contract binding to access the raw methods on 6567 } 6568 6569 // NameResolverCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 6570 type NameResolverCallerRaw struct { 6571 Contract *NameResolverCaller // Generic read-only contract binding to access the raw methods on 6572 } 6573 6574 // NameResolverTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 6575 type NameResolverTransactorRaw struct { 6576 Contract *NameResolverTransactor // Generic write-only contract binding to access the raw methods on 6577 } 6578 6579 // NewNameResolver creates a new instance of NameResolver, bound to a specific deployed contract. 6580 func NewNameResolver(address common.Address, backend bind.ContractBackend) (*NameResolver, error) { 6581 contract, err := bindNameResolver(address, backend, backend, backend) 6582 if err != nil { 6583 return nil, err 6584 } 6585 return &NameResolver{NameResolverCaller: NameResolverCaller{contract: contract}, NameResolverTransactor: NameResolverTransactor{contract: contract}, NameResolverFilterer: NameResolverFilterer{contract: contract}}, nil 6586 } 6587 6588 // NewNameResolverCaller creates a new read-only instance of NameResolver, bound to a specific deployed contract. 6589 func NewNameResolverCaller(address common.Address, caller bind.ContractCaller) (*NameResolverCaller, error) { 6590 contract, err := bindNameResolver(address, caller, nil, nil) 6591 if err != nil { 6592 return nil, err 6593 } 6594 return &NameResolverCaller{contract: contract}, nil 6595 } 6596 6597 // NewNameResolverTransactor creates a new write-only instance of NameResolver, bound to a specific deployed contract. 6598 func NewNameResolverTransactor(address common.Address, transactor bind.ContractTransactor) (*NameResolverTransactor, error) { 6599 contract, err := bindNameResolver(address, nil, transactor, nil) 6600 if err != nil { 6601 return nil, err 6602 } 6603 return &NameResolverTransactor{contract: contract}, nil 6604 } 6605 6606 // NewNameResolverFilterer creates a new log filterer instance of NameResolver, bound to a specific deployed contract. 6607 func NewNameResolverFilterer(address common.Address, filterer bind.ContractFilterer) (*NameResolverFilterer, error) { 6608 contract, err := bindNameResolver(address, nil, nil, filterer) 6609 if err != nil { 6610 return nil, err 6611 } 6612 return &NameResolverFilterer{contract: contract}, nil 6613 } 6614 6615 // bindNameResolver binds a generic wrapper to an already deployed contract. 6616 func bindNameResolver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 6617 parsed, err := abi.JSON(strings.NewReader(NameResolverABI)) 6618 if err != nil { 6619 return nil, err 6620 } 6621 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 6622 } 6623 6624 // Call invokes the (constant) contract method with params as input values and 6625 // sets the output to result. The result type might be a single field for simple 6626 // returns, a slice of interfaces for anonymous returns and a struct for named 6627 // returns. 6628 func (_NameResolver *NameResolverRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 6629 return _NameResolver.Contract.NameResolverCaller.contract.Call(opts, result, method, params...) 6630 } 6631 6632 // Transfer initiates a plain transaction to move funds to the contract, calling 6633 // its default method if one is available. 6634 func (_NameResolver *NameResolverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 6635 return _NameResolver.Contract.NameResolverTransactor.contract.Transfer(opts) 6636 } 6637 6638 // Transact invokes the (paid) contract method with params as input values. 6639 func (_NameResolver *NameResolverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 6640 return _NameResolver.Contract.NameResolverTransactor.contract.Transact(opts, method, params...) 6641 } 6642 6643 // Call invokes the (constant) contract method with params as input values and 6644 // sets the output to result. The result type might be a single field for simple 6645 // returns, a slice of interfaces for anonymous returns and a struct for named 6646 // returns. 6647 func (_NameResolver *NameResolverCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 6648 return _NameResolver.Contract.contract.Call(opts, result, method, params...) 6649 } 6650 6651 // Transfer initiates a plain transaction to move funds to the contract, calling 6652 // its default method if one is available. 6653 func (_NameResolver *NameResolverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 6654 return _NameResolver.Contract.contract.Transfer(opts) 6655 } 6656 6657 // Transact invokes the (paid) contract method with params as input values. 6658 func (_NameResolver *NameResolverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 6659 return _NameResolver.Contract.contract.Transact(opts, method, params...) 6660 } 6661 6662 // Name is a free data retrieval call binding the contract method 0x691f3431. 6663 // 6664 // Solidity: function name(bytes32 node) view returns(string) 6665 func (_NameResolver *NameResolverCaller) Name(opts *bind.CallOpts, node [32]byte) (string, error) { 6666 var out []interface{} 6667 err := _NameResolver.contract.Call(opts, &out, "name", node) 6668 6669 if err != nil { 6670 return *new(string), err 6671 } 6672 6673 out0 := *abi.ConvertType(out[0], new(string)).(*string) 6674 6675 return out0, err 6676 6677 } 6678 6679 // Name is a free data retrieval call binding the contract method 0x691f3431. 6680 // 6681 // Solidity: function name(bytes32 node) view returns(string) 6682 func (_NameResolver *NameResolverSession) Name(node [32]byte) (string, error) { 6683 return _NameResolver.Contract.Name(&_NameResolver.CallOpts, node) 6684 } 6685 6686 // Name is a free data retrieval call binding the contract method 0x691f3431. 6687 // 6688 // Solidity: function name(bytes32 node) view returns(string) 6689 func (_NameResolver *NameResolverCallerSession) Name(node [32]byte) (string, error) { 6690 return _NameResolver.Contract.Name(&_NameResolver.CallOpts, node) 6691 } 6692 6693 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 6694 // 6695 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 6696 func (_NameResolver *NameResolverCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 6697 var out []interface{} 6698 err := _NameResolver.contract.Call(opts, &out, "supportsInterface", interfaceID) 6699 6700 if err != nil { 6701 return *new(bool), err 6702 } 6703 6704 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 6705 6706 return out0, err 6707 6708 } 6709 6710 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 6711 // 6712 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 6713 func (_NameResolver *NameResolverSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 6714 return _NameResolver.Contract.SupportsInterface(&_NameResolver.CallOpts, interfaceID) 6715 } 6716 6717 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 6718 // 6719 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 6720 func (_NameResolver *NameResolverCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 6721 return _NameResolver.Contract.SupportsInterface(&_NameResolver.CallOpts, interfaceID) 6722 } 6723 6724 // SetName is a paid mutator transaction binding the contract method 0x77372213. 6725 // 6726 // Solidity: function setName(bytes32 node, string name) returns() 6727 func (_NameResolver *NameResolverTransactor) SetName(opts *bind.TransactOpts, node [32]byte, name string) (*types.Transaction, error) { 6728 return _NameResolver.contract.Transact(opts, "setName", node, name) 6729 } 6730 6731 // SetName is a paid mutator transaction binding the contract method 0x77372213. 6732 // 6733 // Solidity: function setName(bytes32 node, string name) returns() 6734 func (_NameResolver *NameResolverSession) SetName(node [32]byte, name string) (*types.Transaction, error) { 6735 return _NameResolver.Contract.SetName(&_NameResolver.TransactOpts, node, name) 6736 } 6737 6738 // SetName is a paid mutator transaction binding the contract method 0x77372213. 6739 // 6740 // Solidity: function setName(bytes32 node, string name) returns() 6741 func (_NameResolver *NameResolverTransactorSession) SetName(node [32]byte, name string) (*types.Transaction, error) { 6742 return _NameResolver.Contract.SetName(&_NameResolver.TransactOpts, node, name) 6743 } 6744 6745 // NameResolverNameChangedIterator is returned from FilterNameChanged and is used to iterate over the raw logs and unpacked data for NameChanged events raised by the NameResolver contract. 6746 type NameResolverNameChangedIterator struct { 6747 Event *NameResolverNameChanged // Event containing the contract specifics and raw log 6748 6749 contract *bind.BoundContract // Generic contract to use for unpacking event data 6750 event string // Event name to use for unpacking event data 6751 6752 logs chan types.Log // Log channel receiving the found contract events 6753 sub ethereum.Subscription // Subscription for errors, completion and termination 6754 done bool // Whether the subscription completed delivering logs 6755 fail error // Occurred error to stop iteration 6756 } 6757 6758 // Next advances the iterator to the subsequent event, returning whether there 6759 // are any more events found. In case of a retrieval or parsing error, false is 6760 // returned and Error() can be queried for the exact failure. 6761 func (it *NameResolverNameChangedIterator) Next() bool { 6762 // If the iterator failed, stop iterating 6763 if it.fail != nil { 6764 return false 6765 } 6766 // If the iterator completed, deliver directly whatever's available 6767 if it.done { 6768 select { 6769 case log := <-it.logs: 6770 it.Event = new(NameResolverNameChanged) 6771 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6772 it.fail = err 6773 return false 6774 } 6775 it.Event.Raw = log 6776 return true 6777 6778 default: 6779 return false 6780 } 6781 } 6782 // Iterator still in progress, wait for either a data or an error event 6783 select { 6784 case log := <-it.logs: 6785 it.Event = new(NameResolverNameChanged) 6786 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6787 it.fail = err 6788 return false 6789 } 6790 it.Event.Raw = log 6791 return true 6792 6793 case err := <-it.sub.Err(): 6794 it.done = true 6795 it.fail = err 6796 return it.Next() 6797 } 6798 } 6799 6800 // Error returns any retrieval or parsing error occurred during filtering. 6801 func (it *NameResolverNameChangedIterator) Error() error { 6802 return it.fail 6803 } 6804 6805 // Close terminates the iteration process, releasing any pending underlying 6806 // resources. 6807 func (it *NameResolverNameChangedIterator) Close() error { 6808 it.sub.Unsubscribe() 6809 return nil 6810 } 6811 6812 // NameResolverNameChanged represents a NameChanged event raised by the NameResolver contract. 6813 type NameResolverNameChanged struct { 6814 Node [32]byte 6815 Name string 6816 Raw types.Log // Blockchain specific contextual infos 6817 } 6818 6819 // FilterNameChanged is a free log retrieval operation binding the contract event 0xb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f7. 6820 // 6821 // Solidity: event NameChanged(bytes32 indexed node, string name) 6822 func (_NameResolver *NameResolverFilterer) FilterNameChanged(opts *bind.FilterOpts, node [][32]byte) (*NameResolverNameChangedIterator, error) { 6823 6824 var nodeRule []interface{} 6825 for _, nodeItem := range node { 6826 nodeRule = append(nodeRule, nodeItem) 6827 } 6828 6829 logs, sub, err := _NameResolver.contract.FilterLogs(opts, "NameChanged", nodeRule) 6830 if err != nil { 6831 return nil, err 6832 } 6833 return &NameResolverNameChangedIterator{contract: _NameResolver.contract, event: "NameChanged", logs: logs, sub: sub}, nil 6834 } 6835 6836 // WatchNameChanged is a free log subscription operation binding the contract event 0xb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f7. 6837 // 6838 // Solidity: event NameChanged(bytes32 indexed node, string name) 6839 func (_NameResolver *NameResolverFilterer) WatchNameChanged(opts *bind.WatchOpts, sink chan<- *NameResolverNameChanged, node [][32]byte) (event.Subscription, error) { 6840 6841 var nodeRule []interface{} 6842 for _, nodeItem := range node { 6843 nodeRule = append(nodeRule, nodeItem) 6844 } 6845 6846 logs, sub, err := _NameResolver.contract.WatchLogs(opts, "NameChanged", nodeRule) 6847 if err != nil { 6848 return nil, err 6849 } 6850 return event.NewSubscription(func(quit <-chan struct{}) error { 6851 defer sub.Unsubscribe() 6852 for { 6853 select { 6854 case log := <-logs: 6855 // New log arrived, parse the event and forward to the user 6856 event := new(NameResolverNameChanged) 6857 if err := _NameResolver.contract.UnpackLog(event, "NameChanged", log); err != nil { 6858 return err 6859 } 6860 event.Raw = log 6861 6862 select { 6863 case sink <- event: 6864 case err := <-sub.Err(): 6865 return err 6866 case <-quit: 6867 return nil 6868 } 6869 case err := <-sub.Err(): 6870 return err 6871 case <-quit: 6872 return nil 6873 } 6874 } 6875 }), nil 6876 } 6877 6878 // ParseNameChanged is a log parse operation binding the contract event 0xb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f7. 6879 // 6880 // Solidity: event NameChanged(bytes32 indexed node, string name) 6881 func (_NameResolver *NameResolverFilterer) ParseNameChanged(log types.Log) (*NameResolverNameChanged, error) { 6882 event := new(NameResolverNameChanged) 6883 if err := _NameResolver.contract.UnpackLog(event, "NameChanged", log); err != nil { 6884 return nil, err 6885 } 6886 event.Raw = log 6887 return event, nil 6888 } 6889 6890 // PubkeyResolverABI is the input ABI used to generate the binding from. 6891 const PubkeyResolverABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"x\",\"type\":\"bytes32\"},{\"name\":\"y\",\"type\":\"bytes32\"}],\"name\":\"setPubkey\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"pubkey\",\"outputs\":[{\"name\":\"x\",\"type\":\"bytes32\"},{\"name\":\"y\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"x\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"y\",\"type\":\"bytes32\"}],\"name\":\"PubkeyChanged\",\"type\":\"event\"}]" 6892 6893 // PubkeyResolverFuncSigs maps the 4-byte function signature to its string representation. 6894 var PubkeyResolverFuncSigs = map[string]string{ 6895 "c8690233": "pubkey(bytes32)", 6896 "29cd62ea": "setPubkey(bytes32,bytes32,bytes32)", 6897 "01ffc9a7": "supportsInterface(bytes4)", 6898 } 6899 6900 // PubkeyResolver is an auto generated Go binding around an Ethereum contract. 6901 type PubkeyResolver struct { 6902 PubkeyResolverCaller // Read-only binding to the contract 6903 PubkeyResolverTransactor // Write-only binding to the contract 6904 PubkeyResolverFilterer // Log filterer for contract events 6905 } 6906 6907 // PubkeyResolverCaller is an auto generated read-only Go binding around an Ethereum contract. 6908 type PubkeyResolverCaller struct { 6909 contract *bind.BoundContract // Generic contract wrapper for the low level calls 6910 } 6911 6912 // PubkeyResolverTransactor is an auto generated write-only Go binding around an Ethereum contract. 6913 type PubkeyResolverTransactor struct { 6914 contract *bind.BoundContract // Generic contract wrapper for the low level calls 6915 } 6916 6917 // PubkeyResolverFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 6918 type PubkeyResolverFilterer struct { 6919 contract *bind.BoundContract // Generic contract wrapper for the low level calls 6920 } 6921 6922 // PubkeyResolverSession is an auto generated Go binding around an Ethereum contract, 6923 // with pre-set call and transact options. 6924 type PubkeyResolverSession struct { 6925 Contract *PubkeyResolver // Generic contract binding to set the session for 6926 CallOpts bind.CallOpts // Call options to use throughout this session 6927 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 6928 } 6929 6930 // PubkeyResolverCallerSession is an auto generated read-only Go binding around an Ethereum contract, 6931 // with pre-set call options. 6932 type PubkeyResolverCallerSession struct { 6933 Contract *PubkeyResolverCaller // Generic contract caller binding to set the session for 6934 CallOpts bind.CallOpts // Call options to use throughout this session 6935 } 6936 6937 // PubkeyResolverTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 6938 // with pre-set transact options. 6939 type PubkeyResolverTransactorSession struct { 6940 Contract *PubkeyResolverTransactor // Generic contract transactor binding to set the session for 6941 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 6942 } 6943 6944 // PubkeyResolverRaw is an auto generated low-level Go binding around an Ethereum contract. 6945 type PubkeyResolverRaw struct { 6946 Contract *PubkeyResolver // Generic contract binding to access the raw methods on 6947 } 6948 6949 // PubkeyResolverCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 6950 type PubkeyResolverCallerRaw struct { 6951 Contract *PubkeyResolverCaller // Generic read-only contract binding to access the raw methods on 6952 } 6953 6954 // PubkeyResolverTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 6955 type PubkeyResolverTransactorRaw struct { 6956 Contract *PubkeyResolverTransactor // Generic write-only contract binding to access the raw methods on 6957 } 6958 6959 // NewPubkeyResolver creates a new instance of PubkeyResolver, bound to a specific deployed contract. 6960 func NewPubkeyResolver(address common.Address, backend bind.ContractBackend) (*PubkeyResolver, error) { 6961 contract, err := bindPubkeyResolver(address, backend, backend, backend) 6962 if err != nil { 6963 return nil, err 6964 } 6965 return &PubkeyResolver{PubkeyResolverCaller: PubkeyResolverCaller{contract: contract}, PubkeyResolverTransactor: PubkeyResolverTransactor{contract: contract}, PubkeyResolverFilterer: PubkeyResolverFilterer{contract: contract}}, nil 6966 } 6967 6968 // NewPubkeyResolverCaller creates a new read-only instance of PubkeyResolver, bound to a specific deployed contract. 6969 func NewPubkeyResolverCaller(address common.Address, caller bind.ContractCaller) (*PubkeyResolverCaller, error) { 6970 contract, err := bindPubkeyResolver(address, caller, nil, nil) 6971 if err != nil { 6972 return nil, err 6973 } 6974 return &PubkeyResolverCaller{contract: contract}, nil 6975 } 6976 6977 // NewPubkeyResolverTransactor creates a new write-only instance of PubkeyResolver, bound to a specific deployed contract. 6978 func NewPubkeyResolverTransactor(address common.Address, transactor bind.ContractTransactor) (*PubkeyResolverTransactor, error) { 6979 contract, err := bindPubkeyResolver(address, nil, transactor, nil) 6980 if err != nil { 6981 return nil, err 6982 } 6983 return &PubkeyResolverTransactor{contract: contract}, nil 6984 } 6985 6986 // NewPubkeyResolverFilterer creates a new log filterer instance of PubkeyResolver, bound to a specific deployed contract. 6987 func NewPubkeyResolverFilterer(address common.Address, filterer bind.ContractFilterer) (*PubkeyResolverFilterer, error) { 6988 contract, err := bindPubkeyResolver(address, nil, nil, filterer) 6989 if err != nil { 6990 return nil, err 6991 } 6992 return &PubkeyResolverFilterer{contract: contract}, nil 6993 } 6994 6995 // bindPubkeyResolver binds a generic wrapper to an already deployed contract. 6996 func bindPubkeyResolver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 6997 parsed, err := abi.JSON(strings.NewReader(PubkeyResolverABI)) 6998 if err != nil { 6999 return nil, err 7000 } 7001 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 7002 } 7003 7004 // Call invokes the (constant) contract method with params as input values and 7005 // sets the output to result. The result type might be a single field for simple 7006 // returns, a slice of interfaces for anonymous returns and a struct for named 7007 // returns. 7008 func (_PubkeyResolver *PubkeyResolverRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 7009 return _PubkeyResolver.Contract.PubkeyResolverCaller.contract.Call(opts, result, method, params...) 7010 } 7011 7012 // Transfer initiates a plain transaction to move funds to the contract, calling 7013 // its default method if one is available. 7014 func (_PubkeyResolver *PubkeyResolverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 7015 return _PubkeyResolver.Contract.PubkeyResolverTransactor.contract.Transfer(opts) 7016 } 7017 7018 // Transact invokes the (paid) contract method with params as input values. 7019 func (_PubkeyResolver *PubkeyResolverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 7020 return _PubkeyResolver.Contract.PubkeyResolverTransactor.contract.Transact(opts, method, params...) 7021 } 7022 7023 // Call invokes the (constant) contract method with params as input values and 7024 // sets the output to result. The result type might be a single field for simple 7025 // returns, a slice of interfaces for anonymous returns and a struct for named 7026 // returns. 7027 func (_PubkeyResolver *PubkeyResolverCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 7028 return _PubkeyResolver.Contract.contract.Call(opts, result, method, params...) 7029 } 7030 7031 // Transfer initiates a plain transaction to move funds to the contract, calling 7032 // its default method if one is available. 7033 func (_PubkeyResolver *PubkeyResolverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 7034 return _PubkeyResolver.Contract.contract.Transfer(opts) 7035 } 7036 7037 // Transact invokes the (paid) contract method with params as input values. 7038 func (_PubkeyResolver *PubkeyResolverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 7039 return _PubkeyResolver.Contract.contract.Transact(opts, method, params...) 7040 } 7041 7042 // Pubkey is a free data retrieval call binding the contract method 0xc8690233. 7043 // 7044 // Solidity: function pubkey(bytes32 node) view returns(bytes32 x, bytes32 y) 7045 func (_PubkeyResolver *PubkeyResolverCaller) Pubkey(opts *bind.CallOpts, node [32]byte) (struct { 7046 X [32]byte 7047 Y [32]byte 7048 }, error) { 7049 var out []interface{} 7050 err := _PubkeyResolver.contract.Call(opts, &out, "pubkey", node) 7051 7052 outstruct := new(struct { 7053 X [32]byte 7054 Y [32]byte 7055 }) 7056 if err != nil { 7057 return *outstruct, err 7058 } 7059 7060 outstruct.X = *abi.ConvertType(out[0], new([32]byte)).(*[32]byte) 7061 outstruct.Y = *abi.ConvertType(out[1], new([32]byte)).(*[32]byte) 7062 7063 return *outstruct, err 7064 7065 } 7066 7067 // Pubkey is a free data retrieval call binding the contract method 0xc8690233. 7068 // 7069 // Solidity: function pubkey(bytes32 node) view returns(bytes32 x, bytes32 y) 7070 func (_PubkeyResolver *PubkeyResolverSession) Pubkey(node [32]byte) (struct { 7071 X [32]byte 7072 Y [32]byte 7073 }, error) { 7074 return _PubkeyResolver.Contract.Pubkey(&_PubkeyResolver.CallOpts, node) 7075 } 7076 7077 // Pubkey is a free data retrieval call binding the contract method 0xc8690233. 7078 // 7079 // Solidity: function pubkey(bytes32 node) view returns(bytes32 x, bytes32 y) 7080 func (_PubkeyResolver *PubkeyResolverCallerSession) Pubkey(node [32]byte) (struct { 7081 X [32]byte 7082 Y [32]byte 7083 }, error) { 7084 return _PubkeyResolver.Contract.Pubkey(&_PubkeyResolver.CallOpts, node) 7085 } 7086 7087 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 7088 // 7089 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 7090 func (_PubkeyResolver *PubkeyResolverCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 7091 var out []interface{} 7092 err := _PubkeyResolver.contract.Call(opts, &out, "supportsInterface", interfaceID) 7093 7094 if err != nil { 7095 return *new(bool), err 7096 } 7097 7098 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 7099 7100 return out0, err 7101 7102 } 7103 7104 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 7105 // 7106 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 7107 func (_PubkeyResolver *PubkeyResolverSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 7108 return _PubkeyResolver.Contract.SupportsInterface(&_PubkeyResolver.CallOpts, interfaceID) 7109 } 7110 7111 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 7112 // 7113 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 7114 func (_PubkeyResolver *PubkeyResolverCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 7115 return _PubkeyResolver.Contract.SupportsInterface(&_PubkeyResolver.CallOpts, interfaceID) 7116 } 7117 7118 // SetPubkey is a paid mutator transaction binding the contract method 0x29cd62ea. 7119 // 7120 // Solidity: function setPubkey(bytes32 node, bytes32 x, bytes32 y) returns() 7121 func (_PubkeyResolver *PubkeyResolverTransactor) SetPubkey(opts *bind.TransactOpts, node [32]byte, x [32]byte, y [32]byte) (*types.Transaction, error) { 7122 return _PubkeyResolver.contract.Transact(opts, "setPubkey", node, x, y) 7123 } 7124 7125 // SetPubkey is a paid mutator transaction binding the contract method 0x29cd62ea. 7126 // 7127 // Solidity: function setPubkey(bytes32 node, bytes32 x, bytes32 y) returns() 7128 func (_PubkeyResolver *PubkeyResolverSession) SetPubkey(node [32]byte, x [32]byte, y [32]byte) (*types.Transaction, error) { 7129 return _PubkeyResolver.Contract.SetPubkey(&_PubkeyResolver.TransactOpts, node, x, y) 7130 } 7131 7132 // SetPubkey is a paid mutator transaction binding the contract method 0x29cd62ea. 7133 // 7134 // Solidity: function setPubkey(bytes32 node, bytes32 x, bytes32 y) returns() 7135 func (_PubkeyResolver *PubkeyResolverTransactorSession) SetPubkey(node [32]byte, x [32]byte, y [32]byte) (*types.Transaction, error) { 7136 return _PubkeyResolver.Contract.SetPubkey(&_PubkeyResolver.TransactOpts, node, x, y) 7137 } 7138 7139 // PubkeyResolverPubkeyChangedIterator is returned from FilterPubkeyChanged and is used to iterate over the raw logs and unpacked data for PubkeyChanged events raised by the PubkeyResolver contract. 7140 type PubkeyResolverPubkeyChangedIterator struct { 7141 Event *PubkeyResolverPubkeyChanged // Event containing the contract specifics and raw log 7142 7143 contract *bind.BoundContract // Generic contract to use for unpacking event data 7144 event string // Event name to use for unpacking event data 7145 7146 logs chan types.Log // Log channel receiving the found contract events 7147 sub ethereum.Subscription // Subscription for errors, completion and termination 7148 done bool // Whether the subscription completed delivering logs 7149 fail error // Occurred error to stop iteration 7150 } 7151 7152 // Next advances the iterator to the subsequent event, returning whether there 7153 // are any more events found. In case of a retrieval or parsing error, false is 7154 // returned and Error() can be queried for the exact failure. 7155 func (it *PubkeyResolverPubkeyChangedIterator) Next() bool { 7156 // If the iterator failed, stop iterating 7157 if it.fail != nil { 7158 return false 7159 } 7160 // If the iterator completed, deliver directly whatever's available 7161 if it.done { 7162 select { 7163 case log := <-it.logs: 7164 it.Event = new(PubkeyResolverPubkeyChanged) 7165 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7166 it.fail = err 7167 return false 7168 } 7169 it.Event.Raw = log 7170 return true 7171 7172 default: 7173 return false 7174 } 7175 } 7176 // Iterator still in progress, wait for either a data or an error event 7177 select { 7178 case log := <-it.logs: 7179 it.Event = new(PubkeyResolverPubkeyChanged) 7180 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7181 it.fail = err 7182 return false 7183 } 7184 it.Event.Raw = log 7185 return true 7186 7187 case err := <-it.sub.Err(): 7188 it.done = true 7189 it.fail = err 7190 return it.Next() 7191 } 7192 } 7193 7194 // Error returns any retrieval or parsing error occurred during filtering. 7195 func (it *PubkeyResolverPubkeyChangedIterator) Error() error { 7196 return it.fail 7197 } 7198 7199 // Close terminates the iteration process, releasing any pending underlying 7200 // resources. 7201 func (it *PubkeyResolverPubkeyChangedIterator) Close() error { 7202 it.sub.Unsubscribe() 7203 return nil 7204 } 7205 7206 // PubkeyResolverPubkeyChanged represents a PubkeyChanged event raised by the PubkeyResolver contract. 7207 type PubkeyResolverPubkeyChanged struct { 7208 Node [32]byte 7209 X [32]byte 7210 Y [32]byte 7211 Raw types.Log // Blockchain specific contextual infos 7212 } 7213 7214 // FilterPubkeyChanged is a free log retrieval operation binding the contract event 0x1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e46. 7215 // 7216 // Solidity: event PubkeyChanged(bytes32 indexed node, bytes32 x, bytes32 y) 7217 func (_PubkeyResolver *PubkeyResolverFilterer) FilterPubkeyChanged(opts *bind.FilterOpts, node [][32]byte) (*PubkeyResolverPubkeyChangedIterator, error) { 7218 7219 var nodeRule []interface{} 7220 for _, nodeItem := range node { 7221 nodeRule = append(nodeRule, nodeItem) 7222 } 7223 7224 logs, sub, err := _PubkeyResolver.contract.FilterLogs(opts, "PubkeyChanged", nodeRule) 7225 if err != nil { 7226 return nil, err 7227 } 7228 return &PubkeyResolverPubkeyChangedIterator{contract: _PubkeyResolver.contract, event: "PubkeyChanged", logs: logs, sub: sub}, nil 7229 } 7230 7231 // WatchPubkeyChanged is a free log subscription operation binding the contract event 0x1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e46. 7232 // 7233 // Solidity: event PubkeyChanged(bytes32 indexed node, bytes32 x, bytes32 y) 7234 func (_PubkeyResolver *PubkeyResolverFilterer) WatchPubkeyChanged(opts *bind.WatchOpts, sink chan<- *PubkeyResolverPubkeyChanged, node [][32]byte) (event.Subscription, error) { 7235 7236 var nodeRule []interface{} 7237 for _, nodeItem := range node { 7238 nodeRule = append(nodeRule, nodeItem) 7239 } 7240 7241 logs, sub, err := _PubkeyResolver.contract.WatchLogs(opts, "PubkeyChanged", nodeRule) 7242 if err != nil { 7243 return nil, err 7244 } 7245 return event.NewSubscription(func(quit <-chan struct{}) error { 7246 defer sub.Unsubscribe() 7247 for { 7248 select { 7249 case log := <-logs: 7250 // New log arrived, parse the event and forward to the user 7251 event := new(PubkeyResolverPubkeyChanged) 7252 if err := _PubkeyResolver.contract.UnpackLog(event, "PubkeyChanged", log); err != nil { 7253 return err 7254 } 7255 event.Raw = log 7256 7257 select { 7258 case sink <- event: 7259 case err := <-sub.Err(): 7260 return err 7261 case <-quit: 7262 return nil 7263 } 7264 case err := <-sub.Err(): 7265 return err 7266 case <-quit: 7267 return nil 7268 } 7269 } 7270 }), nil 7271 } 7272 7273 // ParsePubkeyChanged is a log parse operation binding the contract event 0x1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e46. 7274 // 7275 // Solidity: event PubkeyChanged(bytes32 indexed node, bytes32 x, bytes32 y) 7276 func (_PubkeyResolver *PubkeyResolverFilterer) ParsePubkeyChanged(log types.Log) (*PubkeyResolverPubkeyChanged, error) { 7277 event := new(PubkeyResolverPubkeyChanged) 7278 if err := _PubkeyResolver.contract.UnpackLog(event, "PubkeyChanged", log); err != nil { 7279 return nil, err 7280 } 7281 event.Raw = log 7282 return event, nil 7283 } 7284 7285 // PublicResolverABI is the input ABI used to generate the binding from. 7286 const PublicResolverABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDNSRecords\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"key\",\"type\":\"string\"},{\"name\":\"value\",\"type\":\"string\"}],\"name\":\"setText\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"interfaceImplementer\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"contentTypes\",\"type\":\"uint256\"}],\"name\":\"ABI\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"x\",\"type\":\"bytes32\"},{\"name\":\"y\",\"type\":\"bytes32\"}],\"name\":\"setPubkey\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"setContenthash\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"addr\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"target\",\"type\":\"address\"},{\"name\":\"isAuthorised\",\"type\":\"bool\"}],\"name\":\"setAuthorisation\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"name\",\"type\":\"bytes32\"}],\"name\":\"hasDNSRecords\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"key\",\"type\":\"string\"}],\"name\":\"text\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"contentType\",\"type\":\"uint256\"},{\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setABI\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"name\",\"type\":\"string\"}],\"name\":\"setName\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"coinType\",\"type\":\"uint256\"},{\"name\":\"a\",\"type\":\"bytes\"}],\"name\":\"setAddr\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"name\",\"type\":\"bytes32\"},{\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"dnsRecord\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"data\",\"type\":\"bytes[]\"}],\"name\":\"multicall\",\"outputs\":[{\"name\":\"results\",\"type\":\"bytes[]\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"clearDNSZone\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"contenthash\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"pubkey\",\"outputs\":[{\"name\":\"x\",\"type\":\"bytes32\"},{\"name\":\"y\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"a\",\"type\":\"address\"}],\"name\":\"setAddr\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"interfaceID\",\"type\":\"bytes4\"},{\"name\":\"implementer\",\"type\":\"address\"}],\"name\":\"setInterface\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"coinType\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"bytes32\"},{\"name\":\"\",\"type\":\"address\"},{\"name\":\"\",\"type\":\"address\"}],\"name\":\"authorisations\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"isAuthorised\",\"type\":\"bool\"}],\"name\":\"AuthorisationChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"indexedKey\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"key\",\"type\":\"string\"}],\"name\":\"TextChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"x\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"y\",\"type\":\"bytes32\"}],\"name\":\"PubkeyChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NameChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"interfaceID\",\"type\":\"bytes4\"},{\"indexed\":false,\"name\":\"implementer\",\"type\":\"address\"}],\"name\":\"InterfaceChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"name\":\"resource\",\"type\":\"uint16\"},{\"indexed\":false,\"name\":\"record\",\"type\":\"bytes\"}],\"name\":\"DNSRecordChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"name\",\"type\":\"bytes\"},{\"indexed\":false,\"name\":\"resource\",\"type\":\"uint16\"}],\"name\":\"DNSRecordDeleted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"}],\"name\":\"DNSZoneCleared\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"ContenthashChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"a\",\"type\":\"address\"}],\"name\":\"AddrChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"coinType\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newAddress\",\"type\":\"bytes\"}],\"name\":\"AddressChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"contentType\",\"type\":\"uint256\"}],\"name\":\"ABIChanged\",\"type\":\"event\"}]" 7287 7288 // PublicResolverFuncSigs maps the 4-byte function signature to its string representation. 7289 var PublicResolverFuncSigs = map[string]string{ 7290 "2203ab56": "ABI(bytes32,uint256)", 7291 "3b3b57de": "addr(bytes32)", 7292 "f1cb7e06": "addr(bytes32,uint256)", 7293 "f86bc879": "authorisations(bytes32,address,address)", 7294 "ad5780af": "clearDNSZone(bytes32)", 7295 "bc1c58d1": "contenthash(bytes32)", 7296 "a8fa5682": "dnsRecord(bytes32,bytes32,uint16)", 7297 "4cbf6ba4": "hasDNSRecords(bytes32,bytes32)", 7298 "124a319c": "interfaceImplementer(bytes32,bytes4)", 7299 "ac9650d8": "multicall(bytes[])", 7300 "691f3431": "name(bytes32)", 7301 "c8690233": "pubkey(bytes32)", 7302 "623195b0": "setABI(bytes32,uint256,bytes)", 7303 "d5fa2b00": "setAddr(bytes32,address)", 7304 "8b95dd71": "setAddr(bytes32,uint256,bytes)", 7305 "3e9ce794": "setAuthorisation(bytes32,address,bool)", 7306 "304e6ade": "setContenthash(bytes32,bytes)", 7307 "0af179d7": "setDNSRecords(bytes32,bytes)", 7308 "e59d895d": "setInterface(bytes32,bytes4,address)", 7309 "77372213": "setName(bytes32,string)", 7310 "29cd62ea": "setPubkey(bytes32,bytes32,bytes32)", 7311 "10f13a8c": "setText(bytes32,string,string)", 7312 "01ffc9a7": "supportsInterface(bytes4)", 7313 "59d1d43c": "text(bytes32,string)", 7314 } 7315 7316 // PublicResolver is an auto generated Go binding around an Ethereum contract. 7317 type PublicResolver struct { 7318 PublicResolverCaller // Read-only binding to the contract 7319 PublicResolverTransactor // Write-only binding to the contract 7320 PublicResolverFilterer // Log filterer for contract events 7321 } 7322 7323 // PublicResolverCaller is an auto generated read-only Go binding around an Ethereum contract. 7324 type PublicResolverCaller struct { 7325 contract *bind.BoundContract // Generic contract wrapper for the low level calls 7326 } 7327 7328 // PublicResolverTransactor is an auto generated write-only Go binding around an Ethereum contract. 7329 type PublicResolverTransactor struct { 7330 contract *bind.BoundContract // Generic contract wrapper for the low level calls 7331 } 7332 7333 // PublicResolverFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 7334 type PublicResolverFilterer struct { 7335 contract *bind.BoundContract // Generic contract wrapper for the low level calls 7336 } 7337 7338 // PublicResolverSession is an auto generated Go binding around an Ethereum contract, 7339 // with pre-set call and transact options. 7340 type PublicResolverSession struct { 7341 Contract *PublicResolver // Generic contract binding to set the session for 7342 CallOpts bind.CallOpts // Call options to use throughout this session 7343 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 7344 } 7345 7346 // PublicResolverCallerSession is an auto generated read-only Go binding around an Ethereum contract, 7347 // with pre-set call options. 7348 type PublicResolverCallerSession struct { 7349 Contract *PublicResolverCaller // Generic contract caller binding to set the session for 7350 CallOpts bind.CallOpts // Call options to use throughout this session 7351 } 7352 7353 // PublicResolverTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 7354 // with pre-set transact options. 7355 type PublicResolverTransactorSession struct { 7356 Contract *PublicResolverTransactor // Generic contract transactor binding to set the session for 7357 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 7358 } 7359 7360 // PublicResolverRaw is an auto generated low-level Go binding around an Ethereum contract. 7361 type PublicResolverRaw struct { 7362 Contract *PublicResolver // Generic contract binding to access the raw methods on 7363 } 7364 7365 // PublicResolverCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 7366 type PublicResolverCallerRaw struct { 7367 Contract *PublicResolverCaller // Generic read-only contract binding to access the raw methods on 7368 } 7369 7370 // PublicResolverTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 7371 type PublicResolverTransactorRaw struct { 7372 Contract *PublicResolverTransactor // Generic write-only contract binding to access the raw methods on 7373 } 7374 7375 // NewPublicResolver creates a new instance of PublicResolver, bound to a specific deployed contract. 7376 func NewPublicResolver(address common.Address, backend bind.ContractBackend) (*PublicResolver, error) { 7377 contract, err := bindPublicResolver(address, backend, backend, backend) 7378 if err != nil { 7379 return nil, err 7380 } 7381 return &PublicResolver{PublicResolverCaller: PublicResolverCaller{contract: contract}, PublicResolverTransactor: PublicResolverTransactor{contract: contract}, PublicResolverFilterer: PublicResolverFilterer{contract: contract}}, nil 7382 } 7383 7384 // NewPublicResolverCaller creates a new read-only instance of PublicResolver, bound to a specific deployed contract. 7385 func NewPublicResolverCaller(address common.Address, caller bind.ContractCaller) (*PublicResolverCaller, error) { 7386 contract, err := bindPublicResolver(address, caller, nil, nil) 7387 if err != nil { 7388 return nil, err 7389 } 7390 return &PublicResolverCaller{contract: contract}, nil 7391 } 7392 7393 // NewPublicResolverTransactor creates a new write-only instance of PublicResolver, bound to a specific deployed contract. 7394 func NewPublicResolverTransactor(address common.Address, transactor bind.ContractTransactor) (*PublicResolverTransactor, error) { 7395 contract, err := bindPublicResolver(address, nil, transactor, nil) 7396 if err != nil { 7397 return nil, err 7398 } 7399 return &PublicResolverTransactor{contract: contract}, nil 7400 } 7401 7402 // NewPublicResolverFilterer creates a new log filterer instance of PublicResolver, bound to a specific deployed contract. 7403 func NewPublicResolverFilterer(address common.Address, filterer bind.ContractFilterer) (*PublicResolverFilterer, error) { 7404 contract, err := bindPublicResolver(address, nil, nil, filterer) 7405 if err != nil { 7406 return nil, err 7407 } 7408 return &PublicResolverFilterer{contract: contract}, nil 7409 } 7410 7411 // bindPublicResolver binds a generic wrapper to an already deployed contract. 7412 func bindPublicResolver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 7413 parsed, err := abi.JSON(strings.NewReader(PublicResolverABI)) 7414 if err != nil { 7415 return nil, err 7416 } 7417 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 7418 } 7419 7420 // Call invokes the (constant) contract method with params as input values and 7421 // sets the output to result. The result type might be a single field for simple 7422 // returns, a slice of interfaces for anonymous returns and a struct for named 7423 // returns. 7424 func (_PublicResolver *PublicResolverRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 7425 return _PublicResolver.Contract.PublicResolverCaller.contract.Call(opts, result, method, params...) 7426 } 7427 7428 // Transfer initiates a plain transaction to move funds to the contract, calling 7429 // its default method if one is available. 7430 func (_PublicResolver *PublicResolverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 7431 return _PublicResolver.Contract.PublicResolverTransactor.contract.Transfer(opts) 7432 } 7433 7434 // Transact invokes the (paid) contract method with params as input values. 7435 func (_PublicResolver *PublicResolverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 7436 return _PublicResolver.Contract.PublicResolverTransactor.contract.Transact(opts, method, params...) 7437 } 7438 7439 // Call invokes the (constant) contract method with params as input values and 7440 // sets the output to result. The result type might be a single field for simple 7441 // returns, a slice of interfaces for anonymous returns and a struct for named 7442 // returns. 7443 func (_PublicResolver *PublicResolverCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 7444 return _PublicResolver.Contract.contract.Call(opts, result, method, params...) 7445 } 7446 7447 // Transfer initiates a plain transaction to move funds to the contract, calling 7448 // its default method if one is available. 7449 func (_PublicResolver *PublicResolverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 7450 return _PublicResolver.Contract.contract.Transfer(opts) 7451 } 7452 7453 // Transact invokes the (paid) contract method with params as input values. 7454 func (_PublicResolver *PublicResolverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 7455 return _PublicResolver.Contract.contract.Transact(opts, method, params...) 7456 } 7457 7458 // ABI is a free data retrieval call binding the contract method 0x2203ab56. 7459 // 7460 // Solidity: function ABI(bytes32 node, uint256 contentTypes) view returns(uint256, bytes) 7461 func (_PublicResolver *PublicResolverCaller) ABI(opts *bind.CallOpts, node [32]byte, contentTypes *big.Int) (*big.Int, []byte, error) { 7462 var out []interface{} 7463 err := _PublicResolver.contract.Call(opts, &out, "ABI", node, contentTypes) 7464 7465 if err != nil { 7466 return *new(*big.Int), *new([]byte), err 7467 } 7468 7469 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 7470 out1 := *abi.ConvertType(out[1], new([]byte)).(*[]byte) 7471 7472 return out0, out1, err 7473 7474 } 7475 7476 // ABI is a free data retrieval call binding the contract method 0x2203ab56. 7477 // 7478 // Solidity: function ABI(bytes32 node, uint256 contentTypes) view returns(uint256, bytes) 7479 func (_PublicResolver *PublicResolverSession) ABI(node [32]byte, contentTypes *big.Int) (*big.Int, []byte, error) { 7480 return _PublicResolver.Contract.ABI(&_PublicResolver.CallOpts, node, contentTypes) 7481 } 7482 7483 // ABI is a free data retrieval call binding the contract method 0x2203ab56. 7484 // 7485 // Solidity: function ABI(bytes32 node, uint256 contentTypes) view returns(uint256, bytes) 7486 func (_PublicResolver *PublicResolverCallerSession) ABI(node [32]byte, contentTypes *big.Int) (*big.Int, []byte, error) { 7487 return _PublicResolver.Contract.ABI(&_PublicResolver.CallOpts, node, contentTypes) 7488 } 7489 7490 // Addr is a free data retrieval call binding the contract method 0x3b3b57de. 7491 // 7492 // Solidity: function addr(bytes32 node) view returns(address) 7493 func (_PublicResolver *PublicResolverCaller) Addr(opts *bind.CallOpts, node [32]byte) (common.Address, error) { 7494 var out []interface{} 7495 err := _PublicResolver.contract.Call(opts, &out, "addr", node) 7496 7497 if err != nil { 7498 return *new(common.Address), err 7499 } 7500 7501 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 7502 7503 return out0, err 7504 7505 } 7506 7507 // Addr is a free data retrieval call binding the contract method 0x3b3b57de. 7508 // 7509 // Solidity: function addr(bytes32 node) view returns(address) 7510 func (_PublicResolver *PublicResolverSession) Addr(node [32]byte) (common.Address, error) { 7511 return _PublicResolver.Contract.Addr(&_PublicResolver.CallOpts, node) 7512 } 7513 7514 // Addr is a free data retrieval call binding the contract method 0x3b3b57de. 7515 // 7516 // Solidity: function addr(bytes32 node) view returns(address) 7517 func (_PublicResolver *PublicResolverCallerSession) Addr(node [32]byte) (common.Address, error) { 7518 return _PublicResolver.Contract.Addr(&_PublicResolver.CallOpts, node) 7519 } 7520 7521 // Addr0 is a free data retrieval call binding the contract method 0xf1cb7e06. 7522 // 7523 // Solidity: function addr(bytes32 node, uint256 coinType) view returns(bytes) 7524 func (_PublicResolver *PublicResolverCaller) Addr0(opts *bind.CallOpts, node [32]byte, coinType *big.Int) ([]byte, error) { 7525 var out []interface{} 7526 err := _PublicResolver.contract.Call(opts, &out, "addr0", node, coinType) 7527 7528 if err != nil { 7529 return *new([]byte), err 7530 } 7531 7532 out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) 7533 7534 return out0, err 7535 7536 } 7537 7538 // Addr0 is a free data retrieval call binding the contract method 0xf1cb7e06. 7539 // 7540 // Solidity: function addr(bytes32 node, uint256 coinType) view returns(bytes) 7541 func (_PublicResolver *PublicResolverSession) Addr0(node [32]byte, coinType *big.Int) ([]byte, error) { 7542 return _PublicResolver.Contract.Addr0(&_PublicResolver.CallOpts, node, coinType) 7543 } 7544 7545 // Addr0 is a free data retrieval call binding the contract method 0xf1cb7e06. 7546 // 7547 // Solidity: function addr(bytes32 node, uint256 coinType) view returns(bytes) 7548 func (_PublicResolver *PublicResolverCallerSession) Addr0(node [32]byte, coinType *big.Int) ([]byte, error) { 7549 return _PublicResolver.Contract.Addr0(&_PublicResolver.CallOpts, node, coinType) 7550 } 7551 7552 // Authorisations is a free data retrieval call binding the contract method 0xf86bc879. 7553 // 7554 // Solidity: function authorisations(bytes32 , address , address ) view returns(bool) 7555 func (_PublicResolver *PublicResolverCaller) Authorisations(opts *bind.CallOpts, arg0 [32]byte, arg1 common.Address, arg2 common.Address) (bool, error) { 7556 var out []interface{} 7557 err := _PublicResolver.contract.Call(opts, &out, "authorisations", arg0, arg1, arg2) 7558 7559 if err != nil { 7560 return *new(bool), err 7561 } 7562 7563 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 7564 7565 return out0, err 7566 7567 } 7568 7569 // Authorisations is a free data retrieval call binding the contract method 0xf86bc879. 7570 // 7571 // Solidity: function authorisations(bytes32 , address , address ) view returns(bool) 7572 func (_PublicResolver *PublicResolverSession) Authorisations(arg0 [32]byte, arg1 common.Address, arg2 common.Address) (bool, error) { 7573 return _PublicResolver.Contract.Authorisations(&_PublicResolver.CallOpts, arg0, arg1, arg2) 7574 } 7575 7576 // Authorisations is a free data retrieval call binding the contract method 0xf86bc879. 7577 // 7578 // Solidity: function authorisations(bytes32 , address , address ) view returns(bool) 7579 func (_PublicResolver *PublicResolverCallerSession) Authorisations(arg0 [32]byte, arg1 common.Address, arg2 common.Address) (bool, error) { 7580 return _PublicResolver.Contract.Authorisations(&_PublicResolver.CallOpts, arg0, arg1, arg2) 7581 } 7582 7583 // Contenthash is a free data retrieval call binding the contract method 0xbc1c58d1. 7584 // 7585 // Solidity: function contenthash(bytes32 node) view returns(bytes) 7586 func (_PublicResolver *PublicResolverCaller) Contenthash(opts *bind.CallOpts, node [32]byte) ([]byte, error) { 7587 var out []interface{} 7588 err := _PublicResolver.contract.Call(opts, &out, "contenthash", node) 7589 7590 if err != nil { 7591 return *new([]byte), err 7592 } 7593 7594 out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) 7595 7596 return out0, err 7597 7598 } 7599 7600 // Contenthash is a free data retrieval call binding the contract method 0xbc1c58d1. 7601 // 7602 // Solidity: function contenthash(bytes32 node) view returns(bytes) 7603 func (_PublicResolver *PublicResolverSession) Contenthash(node [32]byte) ([]byte, error) { 7604 return _PublicResolver.Contract.Contenthash(&_PublicResolver.CallOpts, node) 7605 } 7606 7607 // Contenthash is a free data retrieval call binding the contract method 0xbc1c58d1. 7608 // 7609 // Solidity: function contenthash(bytes32 node) view returns(bytes) 7610 func (_PublicResolver *PublicResolverCallerSession) Contenthash(node [32]byte) ([]byte, error) { 7611 return _PublicResolver.Contract.Contenthash(&_PublicResolver.CallOpts, node) 7612 } 7613 7614 // DnsRecord is a free data retrieval call binding the contract method 0xa8fa5682. 7615 // 7616 // Solidity: function dnsRecord(bytes32 node, bytes32 name, uint16 resource) view returns(bytes) 7617 func (_PublicResolver *PublicResolverCaller) DnsRecord(opts *bind.CallOpts, node [32]byte, name [32]byte, resource uint16) ([]byte, error) { 7618 var out []interface{} 7619 err := _PublicResolver.contract.Call(opts, &out, "dnsRecord", node, name, resource) 7620 7621 if err != nil { 7622 return *new([]byte), err 7623 } 7624 7625 out0 := *abi.ConvertType(out[0], new([]byte)).(*[]byte) 7626 7627 return out0, err 7628 7629 } 7630 7631 // DnsRecord is a free data retrieval call binding the contract method 0xa8fa5682. 7632 // 7633 // Solidity: function dnsRecord(bytes32 node, bytes32 name, uint16 resource) view returns(bytes) 7634 func (_PublicResolver *PublicResolverSession) DnsRecord(node [32]byte, name [32]byte, resource uint16) ([]byte, error) { 7635 return _PublicResolver.Contract.DnsRecord(&_PublicResolver.CallOpts, node, name, resource) 7636 } 7637 7638 // DnsRecord is a free data retrieval call binding the contract method 0xa8fa5682. 7639 // 7640 // Solidity: function dnsRecord(bytes32 node, bytes32 name, uint16 resource) view returns(bytes) 7641 func (_PublicResolver *PublicResolverCallerSession) DnsRecord(node [32]byte, name [32]byte, resource uint16) ([]byte, error) { 7642 return _PublicResolver.Contract.DnsRecord(&_PublicResolver.CallOpts, node, name, resource) 7643 } 7644 7645 // HasDNSRecords is a free data retrieval call binding the contract method 0x4cbf6ba4. 7646 // 7647 // Solidity: function hasDNSRecords(bytes32 node, bytes32 name) view returns(bool) 7648 func (_PublicResolver *PublicResolverCaller) HasDNSRecords(opts *bind.CallOpts, node [32]byte, name [32]byte) (bool, error) { 7649 var out []interface{} 7650 err := _PublicResolver.contract.Call(opts, &out, "hasDNSRecords", node, name) 7651 7652 if err != nil { 7653 return *new(bool), err 7654 } 7655 7656 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 7657 7658 return out0, err 7659 7660 } 7661 7662 // HasDNSRecords is a free data retrieval call binding the contract method 0x4cbf6ba4. 7663 // 7664 // Solidity: function hasDNSRecords(bytes32 node, bytes32 name) view returns(bool) 7665 func (_PublicResolver *PublicResolverSession) HasDNSRecords(node [32]byte, name [32]byte) (bool, error) { 7666 return _PublicResolver.Contract.HasDNSRecords(&_PublicResolver.CallOpts, node, name) 7667 } 7668 7669 // HasDNSRecords is a free data retrieval call binding the contract method 0x4cbf6ba4. 7670 // 7671 // Solidity: function hasDNSRecords(bytes32 node, bytes32 name) view returns(bool) 7672 func (_PublicResolver *PublicResolverCallerSession) HasDNSRecords(node [32]byte, name [32]byte) (bool, error) { 7673 return _PublicResolver.Contract.HasDNSRecords(&_PublicResolver.CallOpts, node, name) 7674 } 7675 7676 // InterfaceImplementer is a free data retrieval call binding the contract method 0x124a319c. 7677 // 7678 // Solidity: function interfaceImplementer(bytes32 node, bytes4 interfaceID) view returns(address) 7679 func (_PublicResolver *PublicResolverCaller) InterfaceImplementer(opts *bind.CallOpts, node [32]byte, interfaceID [4]byte) (common.Address, error) { 7680 var out []interface{} 7681 err := _PublicResolver.contract.Call(opts, &out, "interfaceImplementer", node, interfaceID) 7682 7683 if err != nil { 7684 return *new(common.Address), err 7685 } 7686 7687 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 7688 7689 return out0, err 7690 7691 } 7692 7693 // InterfaceImplementer is a free data retrieval call binding the contract method 0x124a319c. 7694 // 7695 // Solidity: function interfaceImplementer(bytes32 node, bytes4 interfaceID) view returns(address) 7696 func (_PublicResolver *PublicResolverSession) InterfaceImplementer(node [32]byte, interfaceID [4]byte) (common.Address, error) { 7697 return _PublicResolver.Contract.InterfaceImplementer(&_PublicResolver.CallOpts, node, interfaceID) 7698 } 7699 7700 // InterfaceImplementer is a free data retrieval call binding the contract method 0x124a319c. 7701 // 7702 // Solidity: function interfaceImplementer(bytes32 node, bytes4 interfaceID) view returns(address) 7703 func (_PublicResolver *PublicResolverCallerSession) InterfaceImplementer(node [32]byte, interfaceID [4]byte) (common.Address, error) { 7704 return _PublicResolver.Contract.InterfaceImplementer(&_PublicResolver.CallOpts, node, interfaceID) 7705 } 7706 7707 // Name is a free data retrieval call binding the contract method 0x691f3431. 7708 // 7709 // Solidity: function name(bytes32 node) view returns(string) 7710 func (_PublicResolver *PublicResolverCaller) Name(opts *bind.CallOpts, node [32]byte) (string, error) { 7711 var out []interface{} 7712 err := _PublicResolver.contract.Call(opts, &out, "name", node) 7713 7714 if err != nil { 7715 return *new(string), err 7716 } 7717 7718 out0 := *abi.ConvertType(out[0], new(string)).(*string) 7719 7720 return out0, err 7721 7722 } 7723 7724 // Name is a free data retrieval call binding the contract method 0x691f3431. 7725 // 7726 // Solidity: function name(bytes32 node) view returns(string) 7727 func (_PublicResolver *PublicResolverSession) Name(node [32]byte) (string, error) { 7728 return _PublicResolver.Contract.Name(&_PublicResolver.CallOpts, node) 7729 } 7730 7731 // Name is a free data retrieval call binding the contract method 0x691f3431. 7732 // 7733 // Solidity: function name(bytes32 node) view returns(string) 7734 func (_PublicResolver *PublicResolverCallerSession) Name(node [32]byte) (string, error) { 7735 return _PublicResolver.Contract.Name(&_PublicResolver.CallOpts, node) 7736 } 7737 7738 // Pubkey is a free data retrieval call binding the contract method 0xc8690233. 7739 // 7740 // Solidity: function pubkey(bytes32 node) view returns(bytes32 x, bytes32 y) 7741 func (_PublicResolver *PublicResolverCaller) Pubkey(opts *bind.CallOpts, node [32]byte) (struct { 7742 X [32]byte 7743 Y [32]byte 7744 }, error) { 7745 var out []interface{} 7746 err := _PublicResolver.contract.Call(opts, &out, "pubkey", node) 7747 7748 outstruct := new(struct { 7749 X [32]byte 7750 Y [32]byte 7751 }) 7752 if err != nil { 7753 return *outstruct, err 7754 } 7755 7756 outstruct.X = *abi.ConvertType(out[0], new([32]byte)).(*[32]byte) 7757 outstruct.Y = *abi.ConvertType(out[1], new([32]byte)).(*[32]byte) 7758 7759 return *outstruct, err 7760 7761 } 7762 7763 // Pubkey is a free data retrieval call binding the contract method 0xc8690233. 7764 // 7765 // Solidity: function pubkey(bytes32 node) view returns(bytes32 x, bytes32 y) 7766 func (_PublicResolver *PublicResolverSession) Pubkey(node [32]byte) (struct { 7767 X [32]byte 7768 Y [32]byte 7769 }, error) { 7770 return _PublicResolver.Contract.Pubkey(&_PublicResolver.CallOpts, node) 7771 } 7772 7773 // Pubkey is a free data retrieval call binding the contract method 0xc8690233. 7774 // 7775 // Solidity: function pubkey(bytes32 node) view returns(bytes32 x, bytes32 y) 7776 func (_PublicResolver *PublicResolverCallerSession) Pubkey(node [32]byte) (struct { 7777 X [32]byte 7778 Y [32]byte 7779 }, error) { 7780 return _PublicResolver.Contract.Pubkey(&_PublicResolver.CallOpts, node) 7781 } 7782 7783 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 7784 // 7785 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 7786 func (_PublicResolver *PublicResolverCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 7787 var out []interface{} 7788 err := _PublicResolver.contract.Call(opts, &out, "supportsInterface", interfaceID) 7789 7790 if err != nil { 7791 return *new(bool), err 7792 } 7793 7794 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 7795 7796 return out0, err 7797 7798 } 7799 7800 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 7801 // 7802 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 7803 func (_PublicResolver *PublicResolverSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 7804 return _PublicResolver.Contract.SupportsInterface(&_PublicResolver.CallOpts, interfaceID) 7805 } 7806 7807 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 7808 // 7809 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 7810 func (_PublicResolver *PublicResolverCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 7811 return _PublicResolver.Contract.SupportsInterface(&_PublicResolver.CallOpts, interfaceID) 7812 } 7813 7814 // Text is a free data retrieval call binding the contract method 0x59d1d43c. 7815 // 7816 // Solidity: function text(bytes32 node, string key) view returns(string) 7817 func (_PublicResolver *PublicResolverCaller) Text(opts *bind.CallOpts, node [32]byte, key string) (string, error) { 7818 var out []interface{} 7819 err := _PublicResolver.contract.Call(opts, &out, "text", node, key) 7820 7821 if err != nil { 7822 return *new(string), err 7823 } 7824 7825 out0 := *abi.ConvertType(out[0], new(string)).(*string) 7826 7827 return out0, err 7828 7829 } 7830 7831 // Text is a free data retrieval call binding the contract method 0x59d1d43c. 7832 // 7833 // Solidity: function text(bytes32 node, string key) view returns(string) 7834 func (_PublicResolver *PublicResolverSession) Text(node [32]byte, key string) (string, error) { 7835 return _PublicResolver.Contract.Text(&_PublicResolver.CallOpts, node, key) 7836 } 7837 7838 // Text is a free data retrieval call binding the contract method 0x59d1d43c. 7839 // 7840 // Solidity: function text(bytes32 node, string key) view returns(string) 7841 func (_PublicResolver *PublicResolverCallerSession) Text(node [32]byte, key string) (string, error) { 7842 return _PublicResolver.Contract.Text(&_PublicResolver.CallOpts, node, key) 7843 } 7844 7845 // ClearDNSZone is a paid mutator transaction binding the contract method 0xad5780af. 7846 // 7847 // Solidity: function clearDNSZone(bytes32 node) returns() 7848 func (_PublicResolver *PublicResolverTransactor) ClearDNSZone(opts *bind.TransactOpts, node [32]byte) (*types.Transaction, error) { 7849 return _PublicResolver.contract.Transact(opts, "clearDNSZone", node) 7850 } 7851 7852 // ClearDNSZone is a paid mutator transaction binding the contract method 0xad5780af. 7853 // 7854 // Solidity: function clearDNSZone(bytes32 node) returns() 7855 func (_PublicResolver *PublicResolverSession) ClearDNSZone(node [32]byte) (*types.Transaction, error) { 7856 return _PublicResolver.Contract.ClearDNSZone(&_PublicResolver.TransactOpts, node) 7857 } 7858 7859 // ClearDNSZone is a paid mutator transaction binding the contract method 0xad5780af. 7860 // 7861 // Solidity: function clearDNSZone(bytes32 node) returns() 7862 func (_PublicResolver *PublicResolverTransactorSession) ClearDNSZone(node [32]byte) (*types.Transaction, error) { 7863 return _PublicResolver.Contract.ClearDNSZone(&_PublicResolver.TransactOpts, node) 7864 } 7865 7866 // Multicall is a paid mutator transaction binding the contract method 0xac9650d8. 7867 // 7868 // Solidity: function multicall(bytes[] data) returns(bytes[] results) 7869 func (_PublicResolver *PublicResolverTransactor) Multicall(opts *bind.TransactOpts, data [][]byte) (*types.Transaction, error) { 7870 return _PublicResolver.contract.Transact(opts, "multicall", data) 7871 } 7872 7873 // Multicall is a paid mutator transaction binding the contract method 0xac9650d8. 7874 // 7875 // Solidity: function multicall(bytes[] data) returns(bytes[] results) 7876 func (_PublicResolver *PublicResolverSession) Multicall(data [][]byte) (*types.Transaction, error) { 7877 return _PublicResolver.Contract.Multicall(&_PublicResolver.TransactOpts, data) 7878 } 7879 7880 // Multicall is a paid mutator transaction binding the contract method 0xac9650d8. 7881 // 7882 // Solidity: function multicall(bytes[] data) returns(bytes[] results) 7883 func (_PublicResolver *PublicResolverTransactorSession) Multicall(data [][]byte) (*types.Transaction, error) { 7884 return _PublicResolver.Contract.Multicall(&_PublicResolver.TransactOpts, data) 7885 } 7886 7887 // SetABI is a paid mutator transaction binding the contract method 0x623195b0. 7888 // 7889 // Solidity: function setABI(bytes32 node, uint256 contentType, bytes data) returns() 7890 func (_PublicResolver *PublicResolverTransactor) SetABI(opts *bind.TransactOpts, node [32]byte, contentType *big.Int, data []byte) (*types.Transaction, error) { 7891 return _PublicResolver.contract.Transact(opts, "setABI", node, contentType, data) 7892 } 7893 7894 // SetABI is a paid mutator transaction binding the contract method 0x623195b0. 7895 // 7896 // Solidity: function setABI(bytes32 node, uint256 contentType, bytes data) returns() 7897 func (_PublicResolver *PublicResolverSession) SetABI(node [32]byte, contentType *big.Int, data []byte) (*types.Transaction, error) { 7898 return _PublicResolver.Contract.SetABI(&_PublicResolver.TransactOpts, node, contentType, data) 7899 } 7900 7901 // SetABI is a paid mutator transaction binding the contract method 0x623195b0. 7902 // 7903 // Solidity: function setABI(bytes32 node, uint256 contentType, bytes data) returns() 7904 func (_PublicResolver *PublicResolverTransactorSession) SetABI(node [32]byte, contentType *big.Int, data []byte) (*types.Transaction, error) { 7905 return _PublicResolver.Contract.SetABI(&_PublicResolver.TransactOpts, node, contentType, data) 7906 } 7907 7908 // SetAddr is a paid mutator transaction binding the contract method 0x8b95dd71. 7909 // 7910 // Solidity: function setAddr(bytes32 node, uint256 coinType, bytes a) returns() 7911 func (_PublicResolver *PublicResolverTransactor) SetAddr(opts *bind.TransactOpts, node [32]byte, coinType *big.Int, a []byte) (*types.Transaction, error) { 7912 return _PublicResolver.contract.Transact(opts, "setAddr", node, coinType, a) 7913 } 7914 7915 // SetAddr is a paid mutator transaction binding the contract method 0x8b95dd71. 7916 // 7917 // Solidity: function setAddr(bytes32 node, uint256 coinType, bytes a) returns() 7918 func (_PublicResolver *PublicResolverSession) SetAddr(node [32]byte, coinType *big.Int, a []byte) (*types.Transaction, error) { 7919 return _PublicResolver.Contract.SetAddr(&_PublicResolver.TransactOpts, node, coinType, a) 7920 } 7921 7922 // SetAddr is a paid mutator transaction binding the contract method 0x8b95dd71. 7923 // 7924 // Solidity: function setAddr(bytes32 node, uint256 coinType, bytes a) returns() 7925 func (_PublicResolver *PublicResolverTransactorSession) SetAddr(node [32]byte, coinType *big.Int, a []byte) (*types.Transaction, error) { 7926 return _PublicResolver.Contract.SetAddr(&_PublicResolver.TransactOpts, node, coinType, a) 7927 } 7928 7929 // SetAddr0 is a paid mutator transaction binding the contract method 0xd5fa2b00. 7930 // 7931 // Solidity: function setAddr(bytes32 node, address a) returns() 7932 func (_PublicResolver *PublicResolverTransactor) SetAddr0(opts *bind.TransactOpts, node [32]byte, a common.Address) (*types.Transaction, error) { 7933 return _PublicResolver.contract.Transact(opts, "setAddr0", node, a) 7934 } 7935 7936 // SetAddr0 is a paid mutator transaction binding the contract method 0xd5fa2b00. 7937 // 7938 // Solidity: function setAddr(bytes32 node, address a) returns() 7939 func (_PublicResolver *PublicResolverSession) SetAddr0(node [32]byte, a common.Address) (*types.Transaction, error) { 7940 return _PublicResolver.Contract.SetAddr0(&_PublicResolver.TransactOpts, node, a) 7941 } 7942 7943 // SetAddr0 is a paid mutator transaction binding the contract method 0xd5fa2b00. 7944 // 7945 // Solidity: function setAddr(bytes32 node, address a) returns() 7946 func (_PublicResolver *PublicResolverTransactorSession) SetAddr0(node [32]byte, a common.Address) (*types.Transaction, error) { 7947 return _PublicResolver.Contract.SetAddr0(&_PublicResolver.TransactOpts, node, a) 7948 } 7949 7950 // SetAuthorisation is a paid mutator transaction binding the contract method 0x3e9ce794. 7951 // 7952 // Solidity: function setAuthorisation(bytes32 node, address target, bool isAuthorised) returns() 7953 func (_PublicResolver *PublicResolverTransactor) SetAuthorisation(opts *bind.TransactOpts, node [32]byte, target common.Address, isAuthorised bool) (*types.Transaction, error) { 7954 return _PublicResolver.contract.Transact(opts, "setAuthorisation", node, target, isAuthorised) 7955 } 7956 7957 // SetAuthorisation is a paid mutator transaction binding the contract method 0x3e9ce794. 7958 // 7959 // Solidity: function setAuthorisation(bytes32 node, address target, bool isAuthorised) returns() 7960 func (_PublicResolver *PublicResolverSession) SetAuthorisation(node [32]byte, target common.Address, isAuthorised bool) (*types.Transaction, error) { 7961 return _PublicResolver.Contract.SetAuthorisation(&_PublicResolver.TransactOpts, node, target, isAuthorised) 7962 } 7963 7964 // SetAuthorisation is a paid mutator transaction binding the contract method 0x3e9ce794. 7965 // 7966 // Solidity: function setAuthorisation(bytes32 node, address target, bool isAuthorised) returns() 7967 func (_PublicResolver *PublicResolverTransactorSession) SetAuthorisation(node [32]byte, target common.Address, isAuthorised bool) (*types.Transaction, error) { 7968 return _PublicResolver.Contract.SetAuthorisation(&_PublicResolver.TransactOpts, node, target, isAuthorised) 7969 } 7970 7971 // SetContenthash is a paid mutator transaction binding the contract method 0x304e6ade. 7972 // 7973 // Solidity: function setContenthash(bytes32 node, bytes hash) returns() 7974 func (_PublicResolver *PublicResolverTransactor) SetContenthash(opts *bind.TransactOpts, node [32]byte, hash []byte) (*types.Transaction, error) { 7975 return _PublicResolver.contract.Transact(opts, "setContenthash", node, hash) 7976 } 7977 7978 // SetContenthash is a paid mutator transaction binding the contract method 0x304e6ade. 7979 // 7980 // Solidity: function setContenthash(bytes32 node, bytes hash) returns() 7981 func (_PublicResolver *PublicResolverSession) SetContenthash(node [32]byte, hash []byte) (*types.Transaction, error) { 7982 return _PublicResolver.Contract.SetContenthash(&_PublicResolver.TransactOpts, node, hash) 7983 } 7984 7985 // SetContenthash is a paid mutator transaction binding the contract method 0x304e6ade. 7986 // 7987 // Solidity: function setContenthash(bytes32 node, bytes hash) returns() 7988 func (_PublicResolver *PublicResolverTransactorSession) SetContenthash(node [32]byte, hash []byte) (*types.Transaction, error) { 7989 return _PublicResolver.Contract.SetContenthash(&_PublicResolver.TransactOpts, node, hash) 7990 } 7991 7992 // SetDNSRecords is a paid mutator transaction binding the contract method 0x0af179d7. 7993 // 7994 // Solidity: function setDNSRecords(bytes32 node, bytes data) returns() 7995 func (_PublicResolver *PublicResolverTransactor) SetDNSRecords(opts *bind.TransactOpts, node [32]byte, data []byte) (*types.Transaction, error) { 7996 return _PublicResolver.contract.Transact(opts, "setDNSRecords", node, data) 7997 } 7998 7999 // SetDNSRecords is a paid mutator transaction binding the contract method 0x0af179d7. 8000 // 8001 // Solidity: function setDNSRecords(bytes32 node, bytes data) returns() 8002 func (_PublicResolver *PublicResolverSession) SetDNSRecords(node [32]byte, data []byte) (*types.Transaction, error) { 8003 return _PublicResolver.Contract.SetDNSRecords(&_PublicResolver.TransactOpts, node, data) 8004 } 8005 8006 // SetDNSRecords is a paid mutator transaction binding the contract method 0x0af179d7. 8007 // 8008 // Solidity: function setDNSRecords(bytes32 node, bytes data) returns() 8009 func (_PublicResolver *PublicResolverTransactorSession) SetDNSRecords(node [32]byte, data []byte) (*types.Transaction, error) { 8010 return _PublicResolver.Contract.SetDNSRecords(&_PublicResolver.TransactOpts, node, data) 8011 } 8012 8013 // SetInterface is a paid mutator transaction binding the contract method 0xe59d895d. 8014 // 8015 // Solidity: function setInterface(bytes32 node, bytes4 interfaceID, address implementer) returns() 8016 func (_PublicResolver *PublicResolverTransactor) SetInterface(opts *bind.TransactOpts, node [32]byte, interfaceID [4]byte, implementer common.Address) (*types.Transaction, error) { 8017 return _PublicResolver.contract.Transact(opts, "setInterface", node, interfaceID, implementer) 8018 } 8019 8020 // SetInterface is a paid mutator transaction binding the contract method 0xe59d895d. 8021 // 8022 // Solidity: function setInterface(bytes32 node, bytes4 interfaceID, address implementer) returns() 8023 func (_PublicResolver *PublicResolverSession) SetInterface(node [32]byte, interfaceID [4]byte, implementer common.Address) (*types.Transaction, error) { 8024 return _PublicResolver.Contract.SetInterface(&_PublicResolver.TransactOpts, node, interfaceID, implementer) 8025 } 8026 8027 // SetInterface is a paid mutator transaction binding the contract method 0xe59d895d. 8028 // 8029 // Solidity: function setInterface(bytes32 node, bytes4 interfaceID, address implementer) returns() 8030 func (_PublicResolver *PublicResolverTransactorSession) SetInterface(node [32]byte, interfaceID [4]byte, implementer common.Address) (*types.Transaction, error) { 8031 return _PublicResolver.Contract.SetInterface(&_PublicResolver.TransactOpts, node, interfaceID, implementer) 8032 } 8033 8034 // SetName is a paid mutator transaction binding the contract method 0x77372213. 8035 // 8036 // Solidity: function setName(bytes32 node, string name) returns() 8037 func (_PublicResolver *PublicResolverTransactor) SetName(opts *bind.TransactOpts, node [32]byte, name string) (*types.Transaction, error) { 8038 return _PublicResolver.contract.Transact(opts, "setName", node, name) 8039 } 8040 8041 // SetName is a paid mutator transaction binding the contract method 0x77372213. 8042 // 8043 // Solidity: function setName(bytes32 node, string name) returns() 8044 func (_PublicResolver *PublicResolverSession) SetName(node [32]byte, name string) (*types.Transaction, error) { 8045 return _PublicResolver.Contract.SetName(&_PublicResolver.TransactOpts, node, name) 8046 } 8047 8048 // SetName is a paid mutator transaction binding the contract method 0x77372213. 8049 // 8050 // Solidity: function setName(bytes32 node, string name) returns() 8051 func (_PublicResolver *PublicResolverTransactorSession) SetName(node [32]byte, name string) (*types.Transaction, error) { 8052 return _PublicResolver.Contract.SetName(&_PublicResolver.TransactOpts, node, name) 8053 } 8054 8055 // SetPubkey is a paid mutator transaction binding the contract method 0x29cd62ea. 8056 // 8057 // Solidity: function setPubkey(bytes32 node, bytes32 x, bytes32 y) returns() 8058 func (_PublicResolver *PublicResolverTransactor) SetPubkey(opts *bind.TransactOpts, node [32]byte, x [32]byte, y [32]byte) (*types.Transaction, error) { 8059 return _PublicResolver.contract.Transact(opts, "setPubkey", node, x, y) 8060 } 8061 8062 // SetPubkey is a paid mutator transaction binding the contract method 0x29cd62ea. 8063 // 8064 // Solidity: function setPubkey(bytes32 node, bytes32 x, bytes32 y) returns() 8065 func (_PublicResolver *PublicResolverSession) SetPubkey(node [32]byte, x [32]byte, y [32]byte) (*types.Transaction, error) { 8066 return _PublicResolver.Contract.SetPubkey(&_PublicResolver.TransactOpts, node, x, y) 8067 } 8068 8069 // SetPubkey is a paid mutator transaction binding the contract method 0x29cd62ea. 8070 // 8071 // Solidity: function setPubkey(bytes32 node, bytes32 x, bytes32 y) returns() 8072 func (_PublicResolver *PublicResolverTransactorSession) SetPubkey(node [32]byte, x [32]byte, y [32]byte) (*types.Transaction, error) { 8073 return _PublicResolver.Contract.SetPubkey(&_PublicResolver.TransactOpts, node, x, y) 8074 } 8075 8076 // SetText is a paid mutator transaction binding the contract method 0x10f13a8c. 8077 // 8078 // Solidity: function setText(bytes32 node, string key, string value) returns() 8079 func (_PublicResolver *PublicResolverTransactor) SetText(opts *bind.TransactOpts, node [32]byte, key string, value string) (*types.Transaction, error) { 8080 return _PublicResolver.contract.Transact(opts, "setText", node, key, value) 8081 } 8082 8083 // SetText is a paid mutator transaction binding the contract method 0x10f13a8c. 8084 // 8085 // Solidity: function setText(bytes32 node, string key, string value) returns() 8086 func (_PublicResolver *PublicResolverSession) SetText(node [32]byte, key string, value string) (*types.Transaction, error) { 8087 return _PublicResolver.Contract.SetText(&_PublicResolver.TransactOpts, node, key, value) 8088 } 8089 8090 // SetText is a paid mutator transaction binding the contract method 0x10f13a8c. 8091 // 8092 // Solidity: function setText(bytes32 node, string key, string value) returns() 8093 func (_PublicResolver *PublicResolverTransactorSession) SetText(node [32]byte, key string, value string) (*types.Transaction, error) { 8094 return _PublicResolver.Contract.SetText(&_PublicResolver.TransactOpts, node, key, value) 8095 } 8096 8097 // PublicResolverABIChangedIterator is returned from FilterABIChanged and is used to iterate over the raw logs and unpacked data for ABIChanged events raised by the PublicResolver contract. 8098 type PublicResolverABIChangedIterator struct { 8099 Event *PublicResolverABIChanged // Event containing the contract specifics and raw log 8100 8101 contract *bind.BoundContract // Generic contract to use for unpacking event data 8102 event string // Event name to use for unpacking event data 8103 8104 logs chan types.Log // Log channel receiving the found contract events 8105 sub ethereum.Subscription // Subscription for errors, completion and termination 8106 done bool // Whether the subscription completed delivering logs 8107 fail error // Occurred error to stop iteration 8108 } 8109 8110 // Next advances the iterator to the subsequent event, returning whether there 8111 // are any more events found. In case of a retrieval or parsing error, false is 8112 // returned and Error() can be queried for the exact failure. 8113 func (it *PublicResolverABIChangedIterator) Next() bool { 8114 // If the iterator failed, stop iterating 8115 if it.fail != nil { 8116 return false 8117 } 8118 // If the iterator completed, deliver directly whatever's available 8119 if it.done { 8120 select { 8121 case log := <-it.logs: 8122 it.Event = new(PublicResolverABIChanged) 8123 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8124 it.fail = err 8125 return false 8126 } 8127 it.Event.Raw = log 8128 return true 8129 8130 default: 8131 return false 8132 } 8133 } 8134 // Iterator still in progress, wait for either a data or an error event 8135 select { 8136 case log := <-it.logs: 8137 it.Event = new(PublicResolverABIChanged) 8138 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8139 it.fail = err 8140 return false 8141 } 8142 it.Event.Raw = log 8143 return true 8144 8145 case err := <-it.sub.Err(): 8146 it.done = true 8147 it.fail = err 8148 return it.Next() 8149 } 8150 } 8151 8152 // Error returns any retrieval or parsing error occurred during filtering. 8153 func (it *PublicResolverABIChangedIterator) Error() error { 8154 return it.fail 8155 } 8156 8157 // Close terminates the iteration process, releasing any pending underlying 8158 // resources. 8159 func (it *PublicResolverABIChangedIterator) Close() error { 8160 it.sub.Unsubscribe() 8161 return nil 8162 } 8163 8164 // PublicResolverABIChanged represents a ABIChanged event raised by the PublicResolver contract. 8165 type PublicResolverABIChanged struct { 8166 Node [32]byte 8167 ContentType *big.Int 8168 Raw types.Log // Blockchain specific contextual infos 8169 } 8170 8171 // FilterABIChanged is a free log retrieval operation binding the contract event 0xaa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3. 8172 // 8173 // Solidity: event ABIChanged(bytes32 indexed node, uint256 indexed contentType) 8174 func (_PublicResolver *PublicResolverFilterer) FilterABIChanged(opts *bind.FilterOpts, node [][32]byte, contentType []*big.Int) (*PublicResolverABIChangedIterator, error) { 8175 8176 var nodeRule []interface{} 8177 for _, nodeItem := range node { 8178 nodeRule = append(nodeRule, nodeItem) 8179 } 8180 var contentTypeRule []interface{} 8181 for _, contentTypeItem := range contentType { 8182 contentTypeRule = append(contentTypeRule, contentTypeItem) 8183 } 8184 8185 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "ABIChanged", nodeRule, contentTypeRule) 8186 if err != nil { 8187 return nil, err 8188 } 8189 return &PublicResolverABIChangedIterator{contract: _PublicResolver.contract, event: "ABIChanged", logs: logs, sub: sub}, nil 8190 } 8191 8192 // WatchABIChanged is a free log subscription operation binding the contract event 0xaa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3. 8193 // 8194 // Solidity: event ABIChanged(bytes32 indexed node, uint256 indexed contentType) 8195 func (_PublicResolver *PublicResolverFilterer) WatchABIChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverABIChanged, node [][32]byte, contentType []*big.Int) (event.Subscription, error) { 8196 8197 var nodeRule []interface{} 8198 for _, nodeItem := range node { 8199 nodeRule = append(nodeRule, nodeItem) 8200 } 8201 var contentTypeRule []interface{} 8202 for _, contentTypeItem := range contentType { 8203 contentTypeRule = append(contentTypeRule, contentTypeItem) 8204 } 8205 8206 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "ABIChanged", nodeRule, contentTypeRule) 8207 if err != nil { 8208 return nil, err 8209 } 8210 return event.NewSubscription(func(quit <-chan struct{}) error { 8211 defer sub.Unsubscribe() 8212 for { 8213 select { 8214 case log := <-logs: 8215 // New log arrived, parse the event and forward to the user 8216 event := new(PublicResolverABIChanged) 8217 if err := _PublicResolver.contract.UnpackLog(event, "ABIChanged", log); err != nil { 8218 return err 8219 } 8220 event.Raw = log 8221 8222 select { 8223 case sink <- event: 8224 case err := <-sub.Err(): 8225 return err 8226 case <-quit: 8227 return nil 8228 } 8229 case err := <-sub.Err(): 8230 return err 8231 case <-quit: 8232 return nil 8233 } 8234 } 8235 }), nil 8236 } 8237 8238 // ParseABIChanged is a log parse operation binding the contract event 0xaa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3. 8239 // 8240 // Solidity: event ABIChanged(bytes32 indexed node, uint256 indexed contentType) 8241 func (_PublicResolver *PublicResolverFilterer) ParseABIChanged(log types.Log) (*PublicResolverABIChanged, error) { 8242 event := new(PublicResolverABIChanged) 8243 if err := _PublicResolver.contract.UnpackLog(event, "ABIChanged", log); err != nil { 8244 return nil, err 8245 } 8246 event.Raw = log 8247 return event, nil 8248 } 8249 8250 // PublicResolverAddrChangedIterator is returned from FilterAddrChanged and is used to iterate over the raw logs and unpacked data for AddrChanged events raised by the PublicResolver contract. 8251 type PublicResolverAddrChangedIterator struct { 8252 Event *PublicResolverAddrChanged // Event containing the contract specifics and raw log 8253 8254 contract *bind.BoundContract // Generic contract to use for unpacking event data 8255 event string // Event name to use for unpacking event data 8256 8257 logs chan types.Log // Log channel receiving the found contract events 8258 sub ethereum.Subscription // Subscription for errors, completion and termination 8259 done bool // Whether the subscription completed delivering logs 8260 fail error // Occurred error to stop iteration 8261 } 8262 8263 // Next advances the iterator to the subsequent event, returning whether there 8264 // are any more events found. In case of a retrieval or parsing error, false is 8265 // returned and Error() can be queried for the exact failure. 8266 func (it *PublicResolverAddrChangedIterator) Next() bool { 8267 // If the iterator failed, stop iterating 8268 if it.fail != nil { 8269 return false 8270 } 8271 // If the iterator completed, deliver directly whatever's available 8272 if it.done { 8273 select { 8274 case log := <-it.logs: 8275 it.Event = new(PublicResolverAddrChanged) 8276 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8277 it.fail = err 8278 return false 8279 } 8280 it.Event.Raw = log 8281 return true 8282 8283 default: 8284 return false 8285 } 8286 } 8287 // Iterator still in progress, wait for either a data or an error event 8288 select { 8289 case log := <-it.logs: 8290 it.Event = new(PublicResolverAddrChanged) 8291 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8292 it.fail = err 8293 return false 8294 } 8295 it.Event.Raw = log 8296 return true 8297 8298 case err := <-it.sub.Err(): 8299 it.done = true 8300 it.fail = err 8301 return it.Next() 8302 } 8303 } 8304 8305 // Error returns any retrieval or parsing error occurred during filtering. 8306 func (it *PublicResolverAddrChangedIterator) Error() error { 8307 return it.fail 8308 } 8309 8310 // Close terminates the iteration process, releasing any pending underlying 8311 // resources. 8312 func (it *PublicResolverAddrChangedIterator) Close() error { 8313 it.sub.Unsubscribe() 8314 return nil 8315 } 8316 8317 // PublicResolverAddrChanged represents a AddrChanged event raised by the PublicResolver contract. 8318 type PublicResolverAddrChanged struct { 8319 Node [32]byte 8320 A common.Address 8321 Raw types.Log // Blockchain specific contextual infos 8322 } 8323 8324 // FilterAddrChanged is a free log retrieval operation binding the contract event 0x52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2. 8325 // 8326 // Solidity: event AddrChanged(bytes32 indexed node, address a) 8327 func (_PublicResolver *PublicResolverFilterer) FilterAddrChanged(opts *bind.FilterOpts, node [][32]byte) (*PublicResolverAddrChangedIterator, error) { 8328 8329 var nodeRule []interface{} 8330 for _, nodeItem := range node { 8331 nodeRule = append(nodeRule, nodeItem) 8332 } 8333 8334 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "AddrChanged", nodeRule) 8335 if err != nil { 8336 return nil, err 8337 } 8338 return &PublicResolverAddrChangedIterator{contract: _PublicResolver.contract, event: "AddrChanged", logs: logs, sub: sub}, nil 8339 } 8340 8341 // WatchAddrChanged is a free log subscription operation binding the contract event 0x52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2. 8342 // 8343 // Solidity: event AddrChanged(bytes32 indexed node, address a) 8344 func (_PublicResolver *PublicResolverFilterer) WatchAddrChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverAddrChanged, node [][32]byte) (event.Subscription, error) { 8345 8346 var nodeRule []interface{} 8347 for _, nodeItem := range node { 8348 nodeRule = append(nodeRule, nodeItem) 8349 } 8350 8351 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "AddrChanged", nodeRule) 8352 if err != nil { 8353 return nil, err 8354 } 8355 return event.NewSubscription(func(quit <-chan struct{}) error { 8356 defer sub.Unsubscribe() 8357 for { 8358 select { 8359 case log := <-logs: 8360 // New log arrived, parse the event and forward to the user 8361 event := new(PublicResolverAddrChanged) 8362 if err := _PublicResolver.contract.UnpackLog(event, "AddrChanged", log); err != nil { 8363 return err 8364 } 8365 event.Raw = log 8366 8367 select { 8368 case sink <- event: 8369 case err := <-sub.Err(): 8370 return err 8371 case <-quit: 8372 return nil 8373 } 8374 case err := <-sub.Err(): 8375 return err 8376 case <-quit: 8377 return nil 8378 } 8379 } 8380 }), nil 8381 } 8382 8383 // ParseAddrChanged is a log parse operation binding the contract event 0x52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd2. 8384 // 8385 // Solidity: event AddrChanged(bytes32 indexed node, address a) 8386 func (_PublicResolver *PublicResolverFilterer) ParseAddrChanged(log types.Log) (*PublicResolverAddrChanged, error) { 8387 event := new(PublicResolverAddrChanged) 8388 if err := _PublicResolver.contract.UnpackLog(event, "AddrChanged", log); err != nil { 8389 return nil, err 8390 } 8391 event.Raw = log 8392 return event, nil 8393 } 8394 8395 // PublicResolverAddressChangedIterator is returned from FilterAddressChanged and is used to iterate over the raw logs and unpacked data for AddressChanged events raised by the PublicResolver contract. 8396 type PublicResolverAddressChangedIterator struct { 8397 Event *PublicResolverAddressChanged // Event containing the contract specifics and raw log 8398 8399 contract *bind.BoundContract // Generic contract to use for unpacking event data 8400 event string // Event name to use for unpacking event data 8401 8402 logs chan types.Log // Log channel receiving the found contract events 8403 sub ethereum.Subscription // Subscription for errors, completion and termination 8404 done bool // Whether the subscription completed delivering logs 8405 fail error // Occurred error to stop iteration 8406 } 8407 8408 // Next advances the iterator to the subsequent event, returning whether there 8409 // are any more events found. In case of a retrieval or parsing error, false is 8410 // returned and Error() can be queried for the exact failure. 8411 func (it *PublicResolverAddressChangedIterator) Next() bool { 8412 // If the iterator failed, stop iterating 8413 if it.fail != nil { 8414 return false 8415 } 8416 // If the iterator completed, deliver directly whatever's available 8417 if it.done { 8418 select { 8419 case log := <-it.logs: 8420 it.Event = new(PublicResolverAddressChanged) 8421 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8422 it.fail = err 8423 return false 8424 } 8425 it.Event.Raw = log 8426 return true 8427 8428 default: 8429 return false 8430 } 8431 } 8432 // Iterator still in progress, wait for either a data or an error event 8433 select { 8434 case log := <-it.logs: 8435 it.Event = new(PublicResolverAddressChanged) 8436 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8437 it.fail = err 8438 return false 8439 } 8440 it.Event.Raw = log 8441 return true 8442 8443 case err := <-it.sub.Err(): 8444 it.done = true 8445 it.fail = err 8446 return it.Next() 8447 } 8448 } 8449 8450 // Error returns any retrieval or parsing error occurred during filtering. 8451 func (it *PublicResolverAddressChangedIterator) Error() error { 8452 return it.fail 8453 } 8454 8455 // Close terminates the iteration process, releasing any pending underlying 8456 // resources. 8457 func (it *PublicResolverAddressChangedIterator) Close() error { 8458 it.sub.Unsubscribe() 8459 return nil 8460 } 8461 8462 // PublicResolverAddressChanged represents a AddressChanged event raised by the PublicResolver contract. 8463 type PublicResolverAddressChanged struct { 8464 Node [32]byte 8465 CoinType *big.Int 8466 NewAddress []byte 8467 Raw types.Log // Blockchain specific contextual infos 8468 } 8469 8470 // FilterAddressChanged is a free log retrieval operation binding the contract event 0x65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752. 8471 // 8472 // Solidity: event AddressChanged(bytes32 indexed node, uint256 coinType, bytes newAddress) 8473 func (_PublicResolver *PublicResolverFilterer) FilterAddressChanged(opts *bind.FilterOpts, node [][32]byte) (*PublicResolverAddressChangedIterator, error) { 8474 8475 var nodeRule []interface{} 8476 for _, nodeItem := range node { 8477 nodeRule = append(nodeRule, nodeItem) 8478 } 8479 8480 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "AddressChanged", nodeRule) 8481 if err != nil { 8482 return nil, err 8483 } 8484 return &PublicResolverAddressChangedIterator{contract: _PublicResolver.contract, event: "AddressChanged", logs: logs, sub: sub}, nil 8485 } 8486 8487 // WatchAddressChanged is a free log subscription operation binding the contract event 0x65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752. 8488 // 8489 // Solidity: event AddressChanged(bytes32 indexed node, uint256 coinType, bytes newAddress) 8490 func (_PublicResolver *PublicResolverFilterer) WatchAddressChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverAddressChanged, node [][32]byte) (event.Subscription, error) { 8491 8492 var nodeRule []interface{} 8493 for _, nodeItem := range node { 8494 nodeRule = append(nodeRule, nodeItem) 8495 } 8496 8497 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "AddressChanged", nodeRule) 8498 if err != nil { 8499 return nil, err 8500 } 8501 return event.NewSubscription(func(quit <-chan struct{}) error { 8502 defer sub.Unsubscribe() 8503 for { 8504 select { 8505 case log := <-logs: 8506 // New log arrived, parse the event and forward to the user 8507 event := new(PublicResolverAddressChanged) 8508 if err := _PublicResolver.contract.UnpackLog(event, "AddressChanged", log); err != nil { 8509 return err 8510 } 8511 event.Raw = log 8512 8513 select { 8514 case sink <- event: 8515 case err := <-sub.Err(): 8516 return err 8517 case <-quit: 8518 return nil 8519 } 8520 case err := <-sub.Err(): 8521 return err 8522 case <-quit: 8523 return nil 8524 } 8525 } 8526 }), nil 8527 } 8528 8529 // ParseAddressChanged is a log parse operation binding the contract event 0x65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af752. 8530 // 8531 // Solidity: event AddressChanged(bytes32 indexed node, uint256 coinType, bytes newAddress) 8532 func (_PublicResolver *PublicResolverFilterer) ParseAddressChanged(log types.Log) (*PublicResolverAddressChanged, error) { 8533 event := new(PublicResolverAddressChanged) 8534 if err := _PublicResolver.contract.UnpackLog(event, "AddressChanged", log); err != nil { 8535 return nil, err 8536 } 8537 event.Raw = log 8538 return event, nil 8539 } 8540 8541 // PublicResolverAuthorisationChangedIterator is returned from FilterAuthorisationChanged and is used to iterate over the raw logs and unpacked data for AuthorisationChanged events raised by the PublicResolver contract. 8542 type PublicResolverAuthorisationChangedIterator struct { 8543 Event *PublicResolverAuthorisationChanged // Event containing the contract specifics and raw log 8544 8545 contract *bind.BoundContract // Generic contract to use for unpacking event data 8546 event string // Event name to use for unpacking event data 8547 8548 logs chan types.Log // Log channel receiving the found contract events 8549 sub ethereum.Subscription // Subscription for errors, completion and termination 8550 done bool // Whether the subscription completed delivering logs 8551 fail error // Occurred error to stop iteration 8552 } 8553 8554 // Next advances the iterator to the subsequent event, returning whether there 8555 // are any more events found. In case of a retrieval or parsing error, false is 8556 // returned and Error() can be queried for the exact failure. 8557 func (it *PublicResolverAuthorisationChangedIterator) Next() bool { 8558 // If the iterator failed, stop iterating 8559 if it.fail != nil { 8560 return false 8561 } 8562 // If the iterator completed, deliver directly whatever's available 8563 if it.done { 8564 select { 8565 case log := <-it.logs: 8566 it.Event = new(PublicResolverAuthorisationChanged) 8567 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8568 it.fail = err 8569 return false 8570 } 8571 it.Event.Raw = log 8572 return true 8573 8574 default: 8575 return false 8576 } 8577 } 8578 // Iterator still in progress, wait for either a data or an error event 8579 select { 8580 case log := <-it.logs: 8581 it.Event = new(PublicResolverAuthorisationChanged) 8582 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8583 it.fail = err 8584 return false 8585 } 8586 it.Event.Raw = log 8587 return true 8588 8589 case err := <-it.sub.Err(): 8590 it.done = true 8591 it.fail = err 8592 return it.Next() 8593 } 8594 } 8595 8596 // Error returns any retrieval or parsing error occurred during filtering. 8597 func (it *PublicResolverAuthorisationChangedIterator) Error() error { 8598 return it.fail 8599 } 8600 8601 // Close terminates the iteration process, releasing any pending underlying 8602 // resources. 8603 func (it *PublicResolverAuthorisationChangedIterator) Close() error { 8604 it.sub.Unsubscribe() 8605 return nil 8606 } 8607 8608 // PublicResolverAuthorisationChanged represents a AuthorisationChanged event raised by the PublicResolver contract. 8609 type PublicResolverAuthorisationChanged struct { 8610 Node [32]byte 8611 Owner common.Address 8612 Target common.Address 8613 IsAuthorised bool 8614 Raw types.Log // Blockchain specific contextual infos 8615 } 8616 8617 // FilterAuthorisationChanged is a free log retrieval operation binding the contract event 0xe1c5610a6e0cbe10764ecd182adcef1ec338dc4e199c99c32ce98f38e12791df. 8618 // 8619 // Solidity: event AuthorisationChanged(bytes32 indexed node, address indexed owner, address indexed target, bool isAuthorised) 8620 func (_PublicResolver *PublicResolverFilterer) FilterAuthorisationChanged(opts *bind.FilterOpts, node [][32]byte, owner []common.Address, target []common.Address) (*PublicResolverAuthorisationChangedIterator, error) { 8621 8622 var nodeRule []interface{} 8623 for _, nodeItem := range node { 8624 nodeRule = append(nodeRule, nodeItem) 8625 } 8626 var ownerRule []interface{} 8627 for _, ownerItem := range owner { 8628 ownerRule = append(ownerRule, ownerItem) 8629 } 8630 var targetRule []interface{} 8631 for _, targetItem := range target { 8632 targetRule = append(targetRule, targetItem) 8633 } 8634 8635 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "AuthorisationChanged", nodeRule, ownerRule, targetRule) 8636 if err != nil { 8637 return nil, err 8638 } 8639 return &PublicResolverAuthorisationChangedIterator{contract: _PublicResolver.contract, event: "AuthorisationChanged", logs: logs, sub: sub}, nil 8640 } 8641 8642 // WatchAuthorisationChanged is a free log subscription operation binding the contract event 0xe1c5610a6e0cbe10764ecd182adcef1ec338dc4e199c99c32ce98f38e12791df. 8643 // 8644 // Solidity: event AuthorisationChanged(bytes32 indexed node, address indexed owner, address indexed target, bool isAuthorised) 8645 func (_PublicResolver *PublicResolverFilterer) WatchAuthorisationChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverAuthorisationChanged, node [][32]byte, owner []common.Address, target []common.Address) (event.Subscription, error) { 8646 8647 var nodeRule []interface{} 8648 for _, nodeItem := range node { 8649 nodeRule = append(nodeRule, nodeItem) 8650 } 8651 var ownerRule []interface{} 8652 for _, ownerItem := range owner { 8653 ownerRule = append(ownerRule, ownerItem) 8654 } 8655 var targetRule []interface{} 8656 for _, targetItem := range target { 8657 targetRule = append(targetRule, targetItem) 8658 } 8659 8660 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "AuthorisationChanged", nodeRule, ownerRule, targetRule) 8661 if err != nil { 8662 return nil, err 8663 } 8664 return event.NewSubscription(func(quit <-chan struct{}) error { 8665 defer sub.Unsubscribe() 8666 for { 8667 select { 8668 case log := <-logs: 8669 // New log arrived, parse the event and forward to the user 8670 event := new(PublicResolverAuthorisationChanged) 8671 if err := _PublicResolver.contract.UnpackLog(event, "AuthorisationChanged", log); err != nil { 8672 return err 8673 } 8674 event.Raw = log 8675 8676 select { 8677 case sink <- event: 8678 case err := <-sub.Err(): 8679 return err 8680 case <-quit: 8681 return nil 8682 } 8683 case err := <-sub.Err(): 8684 return err 8685 case <-quit: 8686 return nil 8687 } 8688 } 8689 }), nil 8690 } 8691 8692 // ParseAuthorisationChanged is a log parse operation binding the contract event 0xe1c5610a6e0cbe10764ecd182adcef1ec338dc4e199c99c32ce98f38e12791df. 8693 // 8694 // Solidity: event AuthorisationChanged(bytes32 indexed node, address indexed owner, address indexed target, bool isAuthorised) 8695 func (_PublicResolver *PublicResolverFilterer) ParseAuthorisationChanged(log types.Log) (*PublicResolverAuthorisationChanged, error) { 8696 event := new(PublicResolverAuthorisationChanged) 8697 if err := _PublicResolver.contract.UnpackLog(event, "AuthorisationChanged", log); err != nil { 8698 return nil, err 8699 } 8700 event.Raw = log 8701 return event, nil 8702 } 8703 8704 // PublicResolverContenthashChangedIterator is returned from FilterContenthashChanged and is used to iterate over the raw logs and unpacked data for ContenthashChanged events raised by the PublicResolver contract. 8705 type PublicResolverContenthashChangedIterator struct { 8706 Event *PublicResolverContenthashChanged // Event containing the contract specifics and raw log 8707 8708 contract *bind.BoundContract // Generic contract to use for unpacking event data 8709 event string // Event name to use for unpacking event data 8710 8711 logs chan types.Log // Log channel receiving the found contract events 8712 sub ethereum.Subscription // Subscription for errors, completion and termination 8713 done bool // Whether the subscription completed delivering logs 8714 fail error // Occurred error to stop iteration 8715 } 8716 8717 // Next advances the iterator to the subsequent event, returning whether there 8718 // are any more events found. In case of a retrieval or parsing error, false is 8719 // returned and Error() can be queried for the exact failure. 8720 func (it *PublicResolverContenthashChangedIterator) Next() bool { 8721 // If the iterator failed, stop iterating 8722 if it.fail != nil { 8723 return false 8724 } 8725 // If the iterator completed, deliver directly whatever's available 8726 if it.done { 8727 select { 8728 case log := <-it.logs: 8729 it.Event = new(PublicResolverContenthashChanged) 8730 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8731 it.fail = err 8732 return false 8733 } 8734 it.Event.Raw = log 8735 return true 8736 8737 default: 8738 return false 8739 } 8740 } 8741 // Iterator still in progress, wait for either a data or an error event 8742 select { 8743 case log := <-it.logs: 8744 it.Event = new(PublicResolverContenthashChanged) 8745 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8746 it.fail = err 8747 return false 8748 } 8749 it.Event.Raw = log 8750 return true 8751 8752 case err := <-it.sub.Err(): 8753 it.done = true 8754 it.fail = err 8755 return it.Next() 8756 } 8757 } 8758 8759 // Error returns any retrieval or parsing error occurred during filtering. 8760 func (it *PublicResolverContenthashChangedIterator) Error() error { 8761 return it.fail 8762 } 8763 8764 // Close terminates the iteration process, releasing any pending underlying 8765 // resources. 8766 func (it *PublicResolverContenthashChangedIterator) Close() error { 8767 it.sub.Unsubscribe() 8768 return nil 8769 } 8770 8771 // PublicResolverContenthashChanged represents a ContenthashChanged event raised by the PublicResolver contract. 8772 type PublicResolverContenthashChanged struct { 8773 Node [32]byte 8774 Hash []byte 8775 Raw types.Log // Blockchain specific contextual infos 8776 } 8777 8778 // FilterContenthashChanged is a free log retrieval operation binding the contract event 0xe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d7578. 8779 // 8780 // Solidity: event ContenthashChanged(bytes32 indexed node, bytes hash) 8781 func (_PublicResolver *PublicResolverFilterer) FilterContenthashChanged(opts *bind.FilterOpts, node [][32]byte) (*PublicResolverContenthashChangedIterator, error) { 8782 8783 var nodeRule []interface{} 8784 for _, nodeItem := range node { 8785 nodeRule = append(nodeRule, nodeItem) 8786 } 8787 8788 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "ContenthashChanged", nodeRule) 8789 if err != nil { 8790 return nil, err 8791 } 8792 return &PublicResolverContenthashChangedIterator{contract: _PublicResolver.contract, event: "ContenthashChanged", logs: logs, sub: sub}, nil 8793 } 8794 8795 // WatchContenthashChanged is a free log subscription operation binding the contract event 0xe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d7578. 8796 // 8797 // Solidity: event ContenthashChanged(bytes32 indexed node, bytes hash) 8798 func (_PublicResolver *PublicResolverFilterer) WatchContenthashChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverContenthashChanged, node [][32]byte) (event.Subscription, error) { 8799 8800 var nodeRule []interface{} 8801 for _, nodeItem := range node { 8802 nodeRule = append(nodeRule, nodeItem) 8803 } 8804 8805 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "ContenthashChanged", nodeRule) 8806 if err != nil { 8807 return nil, err 8808 } 8809 return event.NewSubscription(func(quit <-chan struct{}) error { 8810 defer sub.Unsubscribe() 8811 for { 8812 select { 8813 case log := <-logs: 8814 // New log arrived, parse the event and forward to the user 8815 event := new(PublicResolverContenthashChanged) 8816 if err := _PublicResolver.contract.UnpackLog(event, "ContenthashChanged", log); err != nil { 8817 return err 8818 } 8819 event.Raw = log 8820 8821 select { 8822 case sink <- event: 8823 case err := <-sub.Err(): 8824 return err 8825 case <-quit: 8826 return nil 8827 } 8828 case err := <-sub.Err(): 8829 return err 8830 case <-quit: 8831 return nil 8832 } 8833 } 8834 }), nil 8835 } 8836 8837 // ParseContenthashChanged is a log parse operation binding the contract event 0xe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d7578. 8838 // 8839 // Solidity: event ContenthashChanged(bytes32 indexed node, bytes hash) 8840 func (_PublicResolver *PublicResolverFilterer) ParseContenthashChanged(log types.Log) (*PublicResolverContenthashChanged, error) { 8841 event := new(PublicResolverContenthashChanged) 8842 if err := _PublicResolver.contract.UnpackLog(event, "ContenthashChanged", log); err != nil { 8843 return nil, err 8844 } 8845 event.Raw = log 8846 return event, nil 8847 } 8848 8849 // PublicResolverDNSRecordChangedIterator is returned from FilterDNSRecordChanged and is used to iterate over the raw logs and unpacked data for DNSRecordChanged events raised by the PublicResolver contract. 8850 type PublicResolverDNSRecordChangedIterator struct { 8851 Event *PublicResolverDNSRecordChanged // Event containing the contract specifics and raw log 8852 8853 contract *bind.BoundContract // Generic contract to use for unpacking event data 8854 event string // Event name to use for unpacking event data 8855 8856 logs chan types.Log // Log channel receiving the found contract events 8857 sub ethereum.Subscription // Subscription for errors, completion and termination 8858 done bool // Whether the subscription completed delivering logs 8859 fail error // Occurred error to stop iteration 8860 } 8861 8862 // Next advances the iterator to the subsequent event, returning whether there 8863 // are any more events found. In case of a retrieval or parsing error, false is 8864 // returned and Error() can be queried for the exact failure. 8865 func (it *PublicResolverDNSRecordChangedIterator) Next() bool { 8866 // If the iterator failed, stop iterating 8867 if it.fail != nil { 8868 return false 8869 } 8870 // If the iterator completed, deliver directly whatever's available 8871 if it.done { 8872 select { 8873 case log := <-it.logs: 8874 it.Event = new(PublicResolverDNSRecordChanged) 8875 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8876 it.fail = err 8877 return false 8878 } 8879 it.Event.Raw = log 8880 return true 8881 8882 default: 8883 return false 8884 } 8885 } 8886 // Iterator still in progress, wait for either a data or an error event 8887 select { 8888 case log := <-it.logs: 8889 it.Event = new(PublicResolverDNSRecordChanged) 8890 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8891 it.fail = err 8892 return false 8893 } 8894 it.Event.Raw = log 8895 return true 8896 8897 case err := <-it.sub.Err(): 8898 it.done = true 8899 it.fail = err 8900 return it.Next() 8901 } 8902 } 8903 8904 // Error returns any retrieval or parsing error occurred during filtering. 8905 func (it *PublicResolverDNSRecordChangedIterator) Error() error { 8906 return it.fail 8907 } 8908 8909 // Close terminates the iteration process, releasing any pending underlying 8910 // resources. 8911 func (it *PublicResolverDNSRecordChangedIterator) Close() error { 8912 it.sub.Unsubscribe() 8913 return nil 8914 } 8915 8916 // PublicResolverDNSRecordChanged represents a DNSRecordChanged event raised by the PublicResolver contract. 8917 type PublicResolverDNSRecordChanged struct { 8918 Node [32]byte 8919 Name []byte 8920 Resource uint16 8921 Record []byte 8922 Raw types.Log // Blockchain specific contextual infos 8923 } 8924 8925 // FilterDNSRecordChanged is a free log retrieval operation binding the contract event 0x52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b. 8926 // 8927 // Solidity: event DNSRecordChanged(bytes32 indexed node, bytes name, uint16 resource, bytes record) 8928 func (_PublicResolver *PublicResolverFilterer) FilterDNSRecordChanged(opts *bind.FilterOpts, node [][32]byte) (*PublicResolverDNSRecordChangedIterator, error) { 8929 8930 var nodeRule []interface{} 8931 for _, nodeItem := range node { 8932 nodeRule = append(nodeRule, nodeItem) 8933 } 8934 8935 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "DNSRecordChanged", nodeRule) 8936 if err != nil { 8937 return nil, err 8938 } 8939 return &PublicResolverDNSRecordChangedIterator{contract: _PublicResolver.contract, event: "DNSRecordChanged", logs: logs, sub: sub}, nil 8940 } 8941 8942 // WatchDNSRecordChanged is a free log subscription operation binding the contract event 0x52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b. 8943 // 8944 // Solidity: event DNSRecordChanged(bytes32 indexed node, bytes name, uint16 resource, bytes record) 8945 func (_PublicResolver *PublicResolverFilterer) WatchDNSRecordChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverDNSRecordChanged, node [][32]byte) (event.Subscription, error) { 8946 8947 var nodeRule []interface{} 8948 for _, nodeItem := range node { 8949 nodeRule = append(nodeRule, nodeItem) 8950 } 8951 8952 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "DNSRecordChanged", nodeRule) 8953 if err != nil { 8954 return nil, err 8955 } 8956 return event.NewSubscription(func(quit <-chan struct{}) error { 8957 defer sub.Unsubscribe() 8958 for { 8959 select { 8960 case log := <-logs: 8961 // New log arrived, parse the event and forward to the user 8962 event := new(PublicResolverDNSRecordChanged) 8963 if err := _PublicResolver.contract.UnpackLog(event, "DNSRecordChanged", log); err != nil { 8964 return err 8965 } 8966 event.Raw = log 8967 8968 select { 8969 case sink <- event: 8970 case err := <-sub.Err(): 8971 return err 8972 case <-quit: 8973 return nil 8974 } 8975 case err := <-sub.Err(): 8976 return err 8977 case <-quit: 8978 return nil 8979 } 8980 } 8981 }), nil 8982 } 8983 8984 // ParseDNSRecordChanged is a log parse operation binding the contract event 0x52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b. 8985 // 8986 // Solidity: event DNSRecordChanged(bytes32 indexed node, bytes name, uint16 resource, bytes record) 8987 func (_PublicResolver *PublicResolverFilterer) ParseDNSRecordChanged(log types.Log) (*PublicResolverDNSRecordChanged, error) { 8988 event := new(PublicResolverDNSRecordChanged) 8989 if err := _PublicResolver.contract.UnpackLog(event, "DNSRecordChanged", log); err != nil { 8990 return nil, err 8991 } 8992 event.Raw = log 8993 return event, nil 8994 } 8995 8996 // PublicResolverDNSRecordDeletedIterator is returned from FilterDNSRecordDeleted and is used to iterate over the raw logs and unpacked data for DNSRecordDeleted events raised by the PublicResolver contract. 8997 type PublicResolverDNSRecordDeletedIterator struct { 8998 Event *PublicResolverDNSRecordDeleted // Event containing the contract specifics and raw log 8999 9000 contract *bind.BoundContract // Generic contract to use for unpacking event data 9001 event string // Event name to use for unpacking event data 9002 9003 logs chan types.Log // Log channel receiving the found contract events 9004 sub ethereum.Subscription // Subscription for errors, completion and termination 9005 done bool // Whether the subscription completed delivering logs 9006 fail error // Occurred error to stop iteration 9007 } 9008 9009 // Next advances the iterator to the subsequent event, returning whether there 9010 // are any more events found. In case of a retrieval or parsing error, false is 9011 // returned and Error() can be queried for the exact failure. 9012 func (it *PublicResolverDNSRecordDeletedIterator) Next() bool { 9013 // If the iterator failed, stop iterating 9014 if it.fail != nil { 9015 return false 9016 } 9017 // If the iterator completed, deliver directly whatever's available 9018 if it.done { 9019 select { 9020 case log := <-it.logs: 9021 it.Event = new(PublicResolverDNSRecordDeleted) 9022 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9023 it.fail = err 9024 return false 9025 } 9026 it.Event.Raw = log 9027 return true 9028 9029 default: 9030 return false 9031 } 9032 } 9033 // Iterator still in progress, wait for either a data or an error event 9034 select { 9035 case log := <-it.logs: 9036 it.Event = new(PublicResolverDNSRecordDeleted) 9037 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9038 it.fail = err 9039 return false 9040 } 9041 it.Event.Raw = log 9042 return true 9043 9044 case err := <-it.sub.Err(): 9045 it.done = true 9046 it.fail = err 9047 return it.Next() 9048 } 9049 } 9050 9051 // Error returns any retrieval or parsing error occurred during filtering. 9052 func (it *PublicResolverDNSRecordDeletedIterator) Error() error { 9053 return it.fail 9054 } 9055 9056 // Close terminates the iteration process, releasing any pending underlying 9057 // resources. 9058 func (it *PublicResolverDNSRecordDeletedIterator) Close() error { 9059 it.sub.Unsubscribe() 9060 return nil 9061 } 9062 9063 // PublicResolverDNSRecordDeleted represents a DNSRecordDeleted event raised by the PublicResolver contract. 9064 type PublicResolverDNSRecordDeleted struct { 9065 Node [32]byte 9066 Name []byte 9067 Resource uint16 9068 Raw types.Log // Blockchain specific contextual infos 9069 } 9070 9071 // FilterDNSRecordDeleted is a free log retrieval operation binding the contract event 0x03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a1207. 9072 // 9073 // Solidity: event DNSRecordDeleted(bytes32 indexed node, bytes name, uint16 resource) 9074 func (_PublicResolver *PublicResolverFilterer) FilterDNSRecordDeleted(opts *bind.FilterOpts, node [][32]byte) (*PublicResolverDNSRecordDeletedIterator, error) { 9075 9076 var nodeRule []interface{} 9077 for _, nodeItem := range node { 9078 nodeRule = append(nodeRule, nodeItem) 9079 } 9080 9081 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "DNSRecordDeleted", nodeRule) 9082 if err != nil { 9083 return nil, err 9084 } 9085 return &PublicResolverDNSRecordDeletedIterator{contract: _PublicResolver.contract, event: "DNSRecordDeleted", logs: logs, sub: sub}, nil 9086 } 9087 9088 // WatchDNSRecordDeleted is a free log subscription operation binding the contract event 0x03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a1207. 9089 // 9090 // Solidity: event DNSRecordDeleted(bytes32 indexed node, bytes name, uint16 resource) 9091 func (_PublicResolver *PublicResolverFilterer) WatchDNSRecordDeleted(opts *bind.WatchOpts, sink chan<- *PublicResolverDNSRecordDeleted, node [][32]byte) (event.Subscription, error) { 9092 9093 var nodeRule []interface{} 9094 for _, nodeItem := range node { 9095 nodeRule = append(nodeRule, nodeItem) 9096 } 9097 9098 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "DNSRecordDeleted", nodeRule) 9099 if err != nil { 9100 return nil, err 9101 } 9102 return event.NewSubscription(func(quit <-chan struct{}) error { 9103 defer sub.Unsubscribe() 9104 for { 9105 select { 9106 case log := <-logs: 9107 // New log arrived, parse the event and forward to the user 9108 event := new(PublicResolverDNSRecordDeleted) 9109 if err := _PublicResolver.contract.UnpackLog(event, "DNSRecordDeleted", log); err != nil { 9110 return err 9111 } 9112 event.Raw = log 9113 9114 select { 9115 case sink <- event: 9116 case err := <-sub.Err(): 9117 return err 9118 case <-quit: 9119 return nil 9120 } 9121 case err := <-sub.Err(): 9122 return err 9123 case <-quit: 9124 return nil 9125 } 9126 } 9127 }), nil 9128 } 9129 9130 // ParseDNSRecordDeleted is a log parse operation binding the contract event 0x03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a1207. 9131 // 9132 // Solidity: event DNSRecordDeleted(bytes32 indexed node, bytes name, uint16 resource) 9133 func (_PublicResolver *PublicResolverFilterer) ParseDNSRecordDeleted(log types.Log) (*PublicResolverDNSRecordDeleted, error) { 9134 event := new(PublicResolverDNSRecordDeleted) 9135 if err := _PublicResolver.contract.UnpackLog(event, "DNSRecordDeleted", log); err != nil { 9136 return nil, err 9137 } 9138 event.Raw = log 9139 return event, nil 9140 } 9141 9142 // PublicResolverDNSZoneClearedIterator is returned from FilterDNSZoneCleared and is used to iterate over the raw logs and unpacked data for DNSZoneCleared events raised by the PublicResolver contract. 9143 type PublicResolverDNSZoneClearedIterator struct { 9144 Event *PublicResolverDNSZoneCleared // Event containing the contract specifics and raw log 9145 9146 contract *bind.BoundContract // Generic contract to use for unpacking event data 9147 event string // Event name to use for unpacking event data 9148 9149 logs chan types.Log // Log channel receiving the found contract events 9150 sub ethereum.Subscription // Subscription for errors, completion and termination 9151 done bool // Whether the subscription completed delivering logs 9152 fail error // Occurred error to stop iteration 9153 } 9154 9155 // Next advances the iterator to the subsequent event, returning whether there 9156 // are any more events found. In case of a retrieval or parsing error, false is 9157 // returned and Error() can be queried for the exact failure. 9158 func (it *PublicResolverDNSZoneClearedIterator) Next() bool { 9159 // If the iterator failed, stop iterating 9160 if it.fail != nil { 9161 return false 9162 } 9163 // If the iterator completed, deliver directly whatever's available 9164 if it.done { 9165 select { 9166 case log := <-it.logs: 9167 it.Event = new(PublicResolverDNSZoneCleared) 9168 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9169 it.fail = err 9170 return false 9171 } 9172 it.Event.Raw = log 9173 return true 9174 9175 default: 9176 return false 9177 } 9178 } 9179 // Iterator still in progress, wait for either a data or an error event 9180 select { 9181 case log := <-it.logs: 9182 it.Event = new(PublicResolverDNSZoneCleared) 9183 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9184 it.fail = err 9185 return false 9186 } 9187 it.Event.Raw = log 9188 return true 9189 9190 case err := <-it.sub.Err(): 9191 it.done = true 9192 it.fail = err 9193 return it.Next() 9194 } 9195 } 9196 9197 // Error returns any retrieval or parsing error occurred during filtering. 9198 func (it *PublicResolverDNSZoneClearedIterator) Error() error { 9199 return it.fail 9200 } 9201 9202 // Close terminates the iteration process, releasing any pending underlying 9203 // resources. 9204 func (it *PublicResolverDNSZoneClearedIterator) Close() error { 9205 it.sub.Unsubscribe() 9206 return nil 9207 } 9208 9209 // PublicResolverDNSZoneCleared represents a DNSZoneCleared event raised by the PublicResolver contract. 9210 type PublicResolverDNSZoneCleared struct { 9211 Node [32]byte 9212 Raw types.Log // Blockchain specific contextual infos 9213 } 9214 9215 // FilterDNSZoneCleared is a free log retrieval operation binding the contract event 0xb757169b8492ca2f1c6619d9d76ce22803035c3b1d5f6930dffe7b127c1a1983. 9216 // 9217 // Solidity: event DNSZoneCleared(bytes32 indexed node) 9218 func (_PublicResolver *PublicResolverFilterer) FilterDNSZoneCleared(opts *bind.FilterOpts, node [][32]byte) (*PublicResolverDNSZoneClearedIterator, error) { 9219 9220 var nodeRule []interface{} 9221 for _, nodeItem := range node { 9222 nodeRule = append(nodeRule, nodeItem) 9223 } 9224 9225 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "DNSZoneCleared", nodeRule) 9226 if err != nil { 9227 return nil, err 9228 } 9229 return &PublicResolverDNSZoneClearedIterator{contract: _PublicResolver.contract, event: "DNSZoneCleared", logs: logs, sub: sub}, nil 9230 } 9231 9232 // WatchDNSZoneCleared is a free log subscription operation binding the contract event 0xb757169b8492ca2f1c6619d9d76ce22803035c3b1d5f6930dffe7b127c1a1983. 9233 // 9234 // Solidity: event DNSZoneCleared(bytes32 indexed node) 9235 func (_PublicResolver *PublicResolverFilterer) WatchDNSZoneCleared(opts *bind.WatchOpts, sink chan<- *PublicResolverDNSZoneCleared, node [][32]byte) (event.Subscription, error) { 9236 9237 var nodeRule []interface{} 9238 for _, nodeItem := range node { 9239 nodeRule = append(nodeRule, nodeItem) 9240 } 9241 9242 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "DNSZoneCleared", nodeRule) 9243 if err != nil { 9244 return nil, err 9245 } 9246 return event.NewSubscription(func(quit <-chan struct{}) error { 9247 defer sub.Unsubscribe() 9248 for { 9249 select { 9250 case log := <-logs: 9251 // New log arrived, parse the event and forward to the user 9252 event := new(PublicResolverDNSZoneCleared) 9253 if err := _PublicResolver.contract.UnpackLog(event, "DNSZoneCleared", log); err != nil { 9254 return err 9255 } 9256 event.Raw = log 9257 9258 select { 9259 case sink <- event: 9260 case err := <-sub.Err(): 9261 return err 9262 case <-quit: 9263 return nil 9264 } 9265 case err := <-sub.Err(): 9266 return err 9267 case <-quit: 9268 return nil 9269 } 9270 } 9271 }), nil 9272 } 9273 9274 // ParseDNSZoneCleared is a log parse operation binding the contract event 0xb757169b8492ca2f1c6619d9d76ce22803035c3b1d5f6930dffe7b127c1a1983. 9275 // 9276 // Solidity: event DNSZoneCleared(bytes32 indexed node) 9277 func (_PublicResolver *PublicResolverFilterer) ParseDNSZoneCleared(log types.Log) (*PublicResolverDNSZoneCleared, error) { 9278 event := new(PublicResolverDNSZoneCleared) 9279 if err := _PublicResolver.contract.UnpackLog(event, "DNSZoneCleared", log); err != nil { 9280 return nil, err 9281 } 9282 event.Raw = log 9283 return event, nil 9284 } 9285 9286 // PublicResolverInterfaceChangedIterator is returned from FilterInterfaceChanged and is used to iterate over the raw logs and unpacked data for InterfaceChanged events raised by the PublicResolver contract. 9287 type PublicResolverInterfaceChangedIterator struct { 9288 Event *PublicResolverInterfaceChanged // Event containing the contract specifics and raw log 9289 9290 contract *bind.BoundContract // Generic contract to use for unpacking event data 9291 event string // Event name to use for unpacking event data 9292 9293 logs chan types.Log // Log channel receiving the found contract events 9294 sub ethereum.Subscription // Subscription for errors, completion and termination 9295 done bool // Whether the subscription completed delivering logs 9296 fail error // Occurred error to stop iteration 9297 } 9298 9299 // Next advances the iterator to the subsequent event, returning whether there 9300 // are any more events found. In case of a retrieval or parsing error, false is 9301 // returned and Error() can be queried for the exact failure. 9302 func (it *PublicResolverInterfaceChangedIterator) Next() bool { 9303 // If the iterator failed, stop iterating 9304 if it.fail != nil { 9305 return false 9306 } 9307 // If the iterator completed, deliver directly whatever's available 9308 if it.done { 9309 select { 9310 case log := <-it.logs: 9311 it.Event = new(PublicResolverInterfaceChanged) 9312 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9313 it.fail = err 9314 return false 9315 } 9316 it.Event.Raw = log 9317 return true 9318 9319 default: 9320 return false 9321 } 9322 } 9323 // Iterator still in progress, wait for either a data or an error event 9324 select { 9325 case log := <-it.logs: 9326 it.Event = new(PublicResolverInterfaceChanged) 9327 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9328 it.fail = err 9329 return false 9330 } 9331 it.Event.Raw = log 9332 return true 9333 9334 case err := <-it.sub.Err(): 9335 it.done = true 9336 it.fail = err 9337 return it.Next() 9338 } 9339 } 9340 9341 // Error returns any retrieval or parsing error occurred during filtering. 9342 func (it *PublicResolverInterfaceChangedIterator) Error() error { 9343 return it.fail 9344 } 9345 9346 // Close terminates the iteration process, releasing any pending underlying 9347 // resources. 9348 func (it *PublicResolverInterfaceChangedIterator) Close() error { 9349 it.sub.Unsubscribe() 9350 return nil 9351 } 9352 9353 // PublicResolverInterfaceChanged represents a InterfaceChanged event raised by the PublicResolver contract. 9354 type PublicResolverInterfaceChanged struct { 9355 Node [32]byte 9356 InterfaceID [4]byte 9357 Implementer common.Address 9358 Raw types.Log // Blockchain specific contextual infos 9359 } 9360 9361 // FilterInterfaceChanged is a free log retrieval operation binding the contract event 0x7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa. 9362 // 9363 // Solidity: event InterfaceChanged(bytes32 indexed node, bytes4 indexed interfaceID, address implementer) 9364 func (_PublicResolver *PublicResolverFilterer) FilterInterfaceChanged(opts *bind.FilterOpts, node [][32]byte, interfaceID [][4]byte) (*PublicResolverInterfaceChangedIterator, error) { 9365 9366 var nodeRule []interface{} 9367 for _, nodeItem := range node { 9368 nodeRule = append(nodeRule, nodeItem) 9369 } 9370 var interfaceIDRule []interface{} 9371 for _, interfaceIDItem := range interfaceID { 9372 interfaceIDRule = append(interfaceIDRule, interfaceIDItem) 9373 } 9374 9375 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "InterfaceChanged", nodeRule, interfaceIDRule) 9376 if err != nil { 9377 return nil, err 9378 } 9379 return &PublicResolverInterfaceChangedIterator{contract: _PublicResolver.contract, event: "InterfaceChanged", logs: logs, sub: sub}, nil 9380 } 9381 9382 // WatchInterfaceChanged is a free log subscription operation binding the contract event 0x7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa. 9383 // 9384 // Solidity: event InterfaceChanged(bytes32 indexed node, bytes4 indexed interfaceID, address implementer) 9385 func (_PublicResolver *PublicResolverFilterer) WatchInterfaceChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverInterfaceChanged, node [][32]byte, interfaceID [][4]byte) (event.Subscription, error) { 9386 9387 var nodeRule []interface{} 9388 for _, nodeItem := range node { 9389 nodeRule = append(nodeRule, nodeItem) 9390 } 9391 var interfaceIDRule []interface{} 9392 for _, interfaceIDItem := range interfaceID { 9393 interfaceIDRule = append(interfaceIDRule, interfaceIDItem) 9394 } 9395 9396 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "InterfaceChanged", nodeRule, interfaceIDRule) 9397 if err != nil { 9398 return nil, err 9399 } 9400 return event.NewSubscription(func(quit <-chan struct{}) error { 9401 defer sub.Unsubscribe() 9402 for { 9403 select { 9404 case log := <-logs: 9405 // New log arrived, parse the event and forward to the user 9406 event := new(PublicResolverInterfaceChanged) 9407 if err := _PublicResolver.contract.UnpackLog(event, "InterfaceChanged", log); err != nil { 9408 return err 9409 } 9410 event.Raw = log 9411 9412 select { 9413 case sink <- event: 9414 case err := <-sub.Err(): 9415 return err 9416 case <-quit: 9417 return nil 9418 } 9419 case err := <-sub.Err(): 9420 return err 9421 case <-quit: 9422 return nil 9423 } 9424 } 9425 }), nil 9426 } 9427 9428 // ParseInterfaceChanged is a log parse operation binding the contract event 0x7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa. 9429 // 9430 // Solidity: event InterfaceChanged(bytes32 indexed node, bytes4 indexed interfaceID, address implementer) 9431 func (_PublicResolver *PublicResolverFilterer) ParseInterfaceChanged(log types.Log) (*PublicResolverInterfaceChanged, error) { 9432 event := new(PublicResolverInterfaceChanged) 9433 if err := _PublicResolver.contract.UnpackLog(event, "InterfaceChanged", log); err != nil { 9434 return nil, err 9435 } 9436 event.Raw = log 9437 return event, nil 9438 } 9439 9440 // PublicResolverNameChangedIterator is returned from FilterNameChanged and is used to iterate over the raw logs and unpacked data for NameChanged events raised by the PublicResolver contract. 9441 type PublicResolverNameChangedIterator struct { 9442 Event *PublicResolverNameChanged // Event containing the contract specifics and raw log 9443 9444 contract *bind.BoundContract // Generic contract to use for unpacking event data 9445 event string // Event name to use for unpacking event data 9446 9447 logs chan types.Log // Log channel receiving the found contract events 9448 sub ethereum.Subscription // Subscription for errors, completion and termination 9449 done bool // Whether the subscription completed delivering logs 9450 fail error // Occurred error to stop iteration 9451 } 9452 9453 // Next advances the iterator to the subsequent event, returning whether there 9454 // are any more events found. In case of a retrieval or parsing error, false is 9455 // returned and Error() can be queried for the exact failure. 9456 func (it *PublicResolverNameChangedIterator) Next() bool { 9457 // If the iterator failed, stop iterating 9458 if it.fail != nil { 9459 return false 9460 } 9461 // If the iterator completed, deliver directly whatever's available 9462 if it.done { 9463 select { 9464 case log := <-it.logs: 9465 it.Event = new(PublicResolverNameChanged) 9466 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9467 it.fail = err 9468 return false 9469 } 9470 it.Event.Raw = log 9471 return true 9472 9473 default: 9474 return false 9475 } 9476 } 9477 // Iterator still in progress, wait for either a data or an error event 9478 select { 9479 case log := <-it.logs: 9480 it.Event = new(PublicResolverNameChanged) 9481 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9482 it.fail = err 9483 return false 9484 } 9485 it.Event.Raw = log 9486 return true 9487 9488 case err := <-it.sub.Err(): 9489 it.done = true 9490 it.fail = err 9491 return it.Next() 9492 } 9493 } 9494 9495 // Error returns any retrieval or parsing error occurred during filtering. 9496 func (it *PublicResolverNameChangedIterator) Error() error { 9497 return it.fail 9498 } 9499 9500 // Close terminates the iteration process, releasing any pending underlying 9501 // resources. 9502 func (it *PublicResolverNameChangedIterator) Close() error { 9503 it.sub.Unsubscribe() 9504 return nil 9505 } 9506 9507 // PublicResolverNameChanged represents a NameChanged event raised by the PublicResolver contract. 9508 type PublicResolverNameChanged struct { 9509 Node [32]byte 9510 Name string 9511 Raw types.Log // Blockchain specific contextual infos 9512 } 9513 9514 // FilterNameChanged is a free log retrieval operation binding the contract event 0xb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f7. 9515 // 9516 // Solidity: event NameChanged(bytes32 indexed node, string name) 9517 func (_PublicResolver *PublicResolverFilterer) FilterNameChanged(opts *bind.FilterOpts, node [][32]byte) (*PublicResolverNameChangedIterator, error) { 9518 9519 var nodeRule []interface{} 9520 for _, nodeItem := range node { 9521 nodeRule = append(nodeRule, nodeItem) 9522 } 9523 9524 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "NameChanged", nodeRule) 9525 if err != nil { 9526 return nil, err 9527 } 9528 return &PublicResolverNameChangedIterator{contract: _PublicResolver.contract, event: "NameChanged", logs: logs, sub: sub}, nil 9529 } 9530 9531 // WatchNameChanged is a free log subscription operation binding the contract event 0xb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f7. 9532 // 9533 // Solidity: event NameChanged(bytes32 indexed node, string name) 9534 func (_PublicResolver *PublicResolverFilterer) WatchNameChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverNameChanged, node [][32]byte) (event.Subscription, error) { 9535 9536 var nodeRule []interface{} 9537 for _, nodeItem := range node { 9538 nodeRule = append(nodeRule, nodeItem) 9539 } 9540 9541 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "NameChanged", nodeRule) 9542 if err != nil { 9543 return nil, err 9544 } 9545 return event.NewSubscription(func(quit <-chan struct{}) error { 9546 defer sub.Unsubscribe() 9547 for { 9548 select { 9549 case log := <-logs: 9550 // New log arrived, parse the event and forward to the user 9551 event := new(PublicResolverNameChanged) 9552 if err := _PublicResolver.contract.UnpackLog(event, "NameChanged", log); err != nil { 9553 return err 9554 } 9555 event.Raw = log 9556 9557 select { 9558 case sink <- event: 9559 case err := <-sub.Err(): 9560 return err 9561 case <-quit: 9562 return nil 9563 } 9564 case err := <-sub.Err(): 9565 return err 9566 case <-quit: 9567 return nil 9568 } 9569 } 9570 }), nil 9571 } 9572 9573 // ParseNameChanged is a log parse operation binding the contract event 0xb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f7. 9574 // 9575 // Solidity: event NameChanged(bytes32 indexed node, string name) 9576 func (_PublicResolver *PublicResolverFilterer) ParseNameChanged(log types.Log) (*PublicResolverNameChanged, error) { 9577 event := new(PublicResolverNameChanged) 9578 if err := _PublicResolver.contract.UnpackLog(event, "NameChanged", log); err != nil { 9579 return nil, err 9580 } 9581 event.Raw = log 9582 return event, nil 9583 } 9584 9585 // PublicResolverPubkeyChangedIterator is returned from FilterPubkeyChanged and is used to iterate over the raw logs and unpacked data for PubkeyChanged events raised by the PublicResolver contract. 9586 type PublicResolverPubkeyChangedIterator struct { 9587 Event *PublicResolverPubkeyChanged // Event containing the contract specifics and raw log 9588 9589 contract *bind.BoundContract // Generic contract to use for unpacking event data 9590 event string // Event name to use for unpacking event data 9591 9592 logs chan types.Log // Log channel receiving the found contract events 9593 sub ethereum.Subscription // Subscription for errors, completion and termination 9594 done bool // Whether the subscription completed delivering logs 9595 fail error // Occurred error to stop iteration 9596 } 9597 9598 // Next advances the iterator to the subsequent event, returning whether there 9599 // are any more events found. In case of a retrieval or parsing error, false is 9600 // returned and Error() can be queried for the exact failure. 9601 func (it *PublicResolverPubkeyChangedIterator) Next() bool { 9602 // If the iterator failed, stop iterating 9603 if it.fail != nil { 9604 return false 9605 } 9606 // If the iterator completed, deliver directly whatever's available 9607 if it.done { 9608 select { 9609 case log := <-it.logs: 9610 it.Event = new(PublicResolverPubkeyChanged) 9611 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9612 it.fail = err 9613 return false 9614 } 9615 it.Event.Raw = log 9616 return true 9617 9618 default: 9619 return false 9620 } 9621 } 9622 // Iterator still in progress, wait for either a data or an error event 9623 select { 9624 case log := <-it.logs: 9625 it.Event = new(PublicResolverPubkeyChanged) 9626 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9627 it.fail = err 9628 return false 9629 } 9630 it.Event.Raw = log 9631 return true 9632 9633 case err := <-it.sub.Err(): 9634 it.done = true 9635 it.fail = err 9636 return it.Next() 9637 } 9638 } 9639 9640 // Error returns any retrieval or parsing error occurred during filtering. 9641 func (it *PublicResolverPubkeyChangedIterator) Error() error { 9642 return it.fail 9643 } 9644 9645 // Close terminates the iteration process, releasing any pending underlying 9646 // resources. 9647 func (it *PublicResolverPubkeyChangedIterator) Close() error { 9648 it.sub.Unsubscribe() 9649 return nil 9650 } 9651 9652 // PublicResolverPubkeyChanged represents a PubkeyChanged event raised by the PublicResolver contract. 9653 type PublicResolverPubkeyChanged struct { 9654 Node [32]byte 9655 X [32]byte 9656 Y [32]byte 9657 Raw types.Log // Blockchain specific contextual infos 9658 } 9659 9660 // FilterPubkeyChanged is a free log retrieval operation binding the contract event 0x1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e46. 9661 // 9662 // Solidity: event PubkeyChanged(bytes32 indexed node, bytes32 x, bytes32 y) 9663 func (_PublicResolver *PublicResolverFilterer) FilterPubkeyChanged(opts *bind.FilterOpts, node [][32]byte) (*PublicResolverPubkeyChangedIterator, error) { 9664 9665 var nodeRule []interface{} 9666 for _, nodeItem := range node { 9667 nodeRule = append(nodeRule, nodeItem) 9668 } 9669 9670 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "PubkeyChanged", nodeRule) 9671 if err != nil { 9672 return nil, err 9673 } 9674 return &PublicResolverPubkeyChangedIterator{contract: _PublicResolver.contract, event: "PubkeyChanged", logs: logs, sub: sub}, nil 9675 } 9676 9677 // WatchPubkeyChanged is a free log subscription operation binding the contract event 0x1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e46. 9678 // 9679 // Solidity: event PubkeyChanged(bytes32 indexed node, bytes32 x, bytes32 y) 9680 func (_PublicResolver *PublicResolverFilterer) WatchPubkeyChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverPubkeyChanged, node [][32]byte) (event.Subscription, error) { 9681 9682 var nodeRule []interface{} 9683 for _, nodeItem := range node { 9684 nodeRule = append(nodeRule, nodeItem) 9685 } 9686 9687 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "PubkeyChanged", nodeRule) 9688 if err != nil { 9689 return nil, err 9690 } 9691 return event.NewSubscription(func(quit <-chan struct{}) error { 9692 defer sub.Unsubscribe() 9693 for { 9694 select { 9695 case log := <-logs: 9696 // New log arrived, parse the event and forward to the user 9697 event := new(PublicResolverPubkeyChanged) 9698 if err := _PublicResolver.contract.UnpackLog(event, "PubkeyChanged", log); err != nil { 9699 return err 9700 } 9701 event.Raw = log 9702 9703 select { 9704 case sink <- event: 9705 case err := <-sub.Err(): 9706 return err 9707 case <-quit: 9708 return nil 9709 } 9710 case err := <-sub.Err(): 9711 return err 9712 case <-quit: 9713 return nil 9714 } 9715 } 9716 }), nil 9717 } 9718 9719 // ParsePubkeyChanged is a log parse operation binding the contract event 0x1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e46. 9720 // 9721 // Solidity: event PubkeyChanged(bytes32 indexed node, bytes32 x, bytes32 y) 9722 func (_PublicResolver *PublicResolverFilterer) ParsePubkeyChanged(log types.Log) (*PublicResolverPubkeyChanged, error) { 9723 event := new(PublicResolverPubkeyChanged) 9724 if err := _PublicResolver.contract.UnpackLog(event, "PubkeyChanged", log); err != nil { 9725 return nil, err 9726 } 9727 event.Raw = log 9728 return event, nil 9729 } 9730 9731 // PublicResolverTextChangedIterator is returned from FilterTextChanged and is used to iterate over the raw logs and unpacked data for TextChanged events raised by the PublicResolver contract. 9732 type PublicResolverTextChangedIterator struct { 9733 Event *PublicResolverTextChanged // Event containing the contract specifics and raw log 9734 9735 contract *bind.BoundContract // Generic contract to use for unpacking event data 9736 event string // Event name to use for unpacking event data 9737 9738 logs chan types.Log // Log channel receiving the found contract events 9739 sub ethereum.Subscription // Subscription for errors, completion and termination 9740 done bool // Whether the subscription completed delivering logs 9741 fail error // Occurred error to stop iteration 9742 } 9743 9744 // Next advances the iterator to the subsequent event, returning whether there 9745 // are any more events found. In case of a retrieval or parsing error, false is 9746 // returned and Error() can be queried for the exact failure. 9747 func (it *PublicResolverTextChangedIterator) Next() bool { 9748 // If the iterator failed, stop iterating 9749 if it.fail != nil { 9750 return false 9751 } 9752 // If the iterator completed, deliver directly whatever's available 9753 if it.done { 9754 select { 9755 case log := <-it.logs: 9756 it.Event = new(PublicResolverTextChanged) 9757 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9758 it.fail = err 9759 return false 9760 } 9761 it.Event.Raw = log 9762 return true 9763 9764 default: 9765 return false 9766 } 9767 } 9768 // Iterator still in progress, wait for either a data or an error event 9769 select { 9770 case log := <-it.logs: 9771 it.Event = new(PublicResolverTextChanged) 9772 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9773 it.fail = err 9774 return false 9775 } 9776 it.Event.Raw = log 9777 return true 9778 9779 case err := <-it.sub.Err(): 9780 it.done = true 9781 it.fail = err 9782 return it.Next() 9783 } 9784 } 9785 9786 // Error returns any retrieval or parsing error occurred during filtering. 9787 func (it *PublicResolverTextChangedIterator) Error() error { 9788 return it.fail 9789 } 9790 9791 // Close terminates the iteration process, releasing any pending underlying 9792 // resources. 9793 func (it *PublicResolverTextChangedIterator) Close() error { 9794 it.sub.Unsubscribe() 9795 return nil 9796 } 9797 9798 // PublicResolverTextChanged represents a TextChanged event raised by the PublicResolver contract. 9799 type PublicResolverTextChanged struct { 9800 Node [32]byte 9801 IndexedKey common.Hash 9802 Key string 9803 Raw types.Log // Blockchain specific contextual infos 9804 } 9805 9806 // FilterTextChanged is a free log retrieval operation binding the contract event 0xd8c9334b1a9c2f9da342a0a2b32629c1a229b6445dad78947f674b44444a7550. 9807 // 9808 // Solidity: event TextChanged(bytes32 indexed node, string indexed indexedKey, string key) 9809 func (_PublicResolver *PublicResolverFilterer) FilterTextChanged(opts *bind.FilterOpts, node [][32]byte, indexedKey []string) (*PublicResolverTextChangedIterator, error) { 9810 9811 var nodeRule []interface{} 9812 for _, nodeItem := range node { 9813 nodeRule = append(nodeRule, nodeItem) 9814 } 9815 var indexedKeyRule []interface{} 9816 for _, indexedKeyItem := range indexedKey { 9817 indexedKeyRule = append(indexedKeyRule, indexedKeyItem) 9818 } 9819 9820 logs, sub, err := _PublicResolver.contract.FilterLogs(opts, "TextChanged", nodeRule, indexedKeyRule) 9821 if err != nil { 9822 return nil, err 9823 } 9824 return &PublicResolverTextChangedIterator{contract: _PublicResolver.contract, event: "TextChanged", logs: logs, sub: sub}, nil 9825 } 9826 9827 // WatchTextChanged is a free log subscription operation binding the contract event 0xd8c9334b1a9c2f9da342a0a2b32629c1a229b6445dad78947f674b44444a7550. 9828 // 9829 // Solidity: event TextChanged(bytes32 indexed node, string indexed indexedKey, string key) 9830 func (_PublicResolver *PublicResolverFilterer) WatchTextChanged(opts *bind.WatchOpts, sink chan<- *PublicResolverTextChanged, node [][32]byte, indexedKey []string) (event.Subscription, error) { 9831 9832 var nodeRule []interface{} 9833 for _, nodeItem := range node { 9834 nodeRule = append(nodeRule, nodeItem) 9835 } 9836 var indexedKeyRule []interface{} 9837 for _, indexedKeyItem := range indexedKey { 9838 indexedKeyRule = append(indexedKeyRule, indexedKeyItem) 9839 } 9840 9841 logs, sub, err := _PublicResolver.contract.WatchLogs(opts, "TextChanged", nodeRule, indexedKeyRule) 9842 if err != nil { 9843 return nil, err 9844 } 9845 return event.NewSubscription(func(quit <-chan struct{}) error { 9846 defer sub.Unsubscribe() 9847 for { 9848 select { 9849 case log := <-logs: 9850 // New log arrived, parse the event and forward to the user 9851 event := new(PublicResolverTextChanged) 9852 if err := _PublicResolver.contract.UnpackLog(event, "TextChanged", log); err != nil { 9853 return err 9854 } 9855 event.Raw = log 9856 9857 select { 9858 case sink <- event: 9859 case err := <-sub.Err(): 9860 return err 9861 case <-quit: 9862 return nil 9863 } 9864 case err := <-sub.Err(): 9865 return err 9866 case <-quit: 9867 return nil 9868 } 9869 } 9870 }), nil 9871 } 9872 9873 // ParseTextChanged is a log parse operation binding the contract event 0xd8c9334b1a9c2f9da342a0a2b32629c1a229b6445dad78947f674b44444a7550. 9874 // 9875 // Solidity: event TextChanged(bytes32 indexed node, string indexed indexedKey, string key) 9876 func (_PublicResolver *PublicResolverFilterer) ParseTextChanged(log types.Log) (*PublicResolverTextChanged, error) { 9877 event := new(PublicResolverTextChanged) 9878 if err := _PublicResolver.contract.UnpackLog(event, "TextChanged", log); err != nil { 9879 return nil, err 9880 } 9881 event.Raw = log 9882 return event, nil 9883 } 9884 9885 // ResolverBaseABI is the input ABI used to generate the binding from. 9886 const ResolverBaseABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"}]" 9887 9888 // ResolverBaseFuncSigs maps the 4-byte function signature to its string representation. 9889 var ResolverBaseFuncSigs = map[string]string{ 9890 "01ffc9a7": "supportsInterface(bytes4)", 9891 } 9892 9893 // ResolverBase is an auto generated Go binding around an Ethereum contract. 9894 type ResolverBase struct { 9895 ResolverBaseCaller // Read-only binding to the contract 9896 ResolverBaseTransactor // Write-only binding to the contract 9897 ResolverBaseFilterer // Log filterer for contract events 9898 } 9899 9900 // ResolverBaseCaller is an auto generated read-only Go binding around an Ethereum contract. 9901 type ResolverBaseCaller struct { 9902 contract *bind.BoundContract // Generic contract wrapper for the low level calls 9903 } 9904 9905 // ResolverBaseTransactor is an auto generated write-only Go binding around an Ethereum contract. 9906 type ResolverBaseTransactor struct { 9907 contract *bind.BoundContract // Generic contract wrapper for the low level calls 9908 } 9909 9910 // ResolverBaseFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 9911 type ResolverBaseFilterer struct { 9912 contract *bind.BoundContract // Generic contract wrapper for the low level calls 9913 } 9914 9915 // ResolverBaseSession is an auto generated Go binding around an Ethereum contract, 9916 // with pre-set call and transact options. 9917 type ResolverBaseSession struct { 9918 Contract *ResolverBase // Generic contract binding to set the session for 9919 CallOpts bind.CallOpts // Call options to use throughout this session 9920 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 9921 } 9922 9923 // ResolverBaseCallerSession is an auto generated read-only Go binding around an Ethereum contract, 9924 // with pre-set call options. 9925 type ResolverBaseCallerSession struct { 9926 Contract *ResolverBaseCaller // Generic contract caller binding to set the session for 9927 CallOpts bind.CallOpts // Call options to use throughout this session 9928 } 9929 9930 // ResolverBaseTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 9931 // with pre-set transact options. 9932 type ResolverBaseTransactorSession struct { 9933 Contract *ResolverBaseTransactor // Generic contract transactor binding to set the session for 9934 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 9935 } 9936 9937 // ResolverBaseRaw is an auto generated low-level Go binding around an Ethereum contract. 9938 type ResolverBaseRaw struct { 9939 Contract *ResolverBase // Generic contract binding to access the raw methods on 9940 } 9941 9942 // ResolverBaseCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 9943 type ResolverBaseCallerRaw struct { 9944 Contract *ResolverBaseCaller // Generic read-only contract binding to access the raw methods on 9945 } 9946 9947 // ResolverBaseTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 9948 type ResolverBaseTransactorRaw struct { 9949 Contract *ResolverBaseTransactor // Generic write-only contract binding to access the raw methods on 9950 } 9951 9952 // NewResolverBase creates a new instance of ResolverBase, bound to a specific deployed contract. 9953 func NewResolverBase(address common.Address, backend bind.ContractBackend) (*ResolverBase, error) { 9954 contract, err := bindResolverBase(address, backend, backend, backend) 9955 if err != nil { 9956 return nil, err 9957 } 9958 return &ResolverBase{ResolverBaseCaller: ResolverBaseCaller{contract: contract}, ResolverBaseTransactor: ResolverBaseTransactor{contract: contract}, ResolverBaseFilterer: ResolverBaseFilterer{contract: contract}}, nil 9959 } 9960 9961 // NewResolverBaseCaller creates a new read-only instance of ResolverBase, bound to a specific deployed contract. 9962 func NewResolverBaseCaller(address common.Address, caller bind.ContractCaller) (*ResolverBaseCaller, error) { 9963 contract, err := bindResolverBase(address, caller, nil, nil) 9964 if err != nil { 9965 return nil, err 9966 } 9967 return &ResolverBaseCaller{contract: contract}, nil 9968 } 9969 9970 // NewResolverBaseTransactor creates a new write-only instance of ResolverBase, bound to a specific deployed contract. 9971 func NewResolverBaseTransactor(address common.Address, transactor bind.ContractTransactor) (*ResolverBaseTransactor, error) { 9972 contract, err := bindResolverBase(address, nil, transactor, nil) 9973 if err != nil { 9974 return nil, err 9975 } 9976 return &ResolverBaseTransactor{contract: contract}, nil 9977 } 9978 9979 // NewResolverBaseFilterer creates a new log filterer instance of ResolverBase, bound to a specific deployed contract. 9980 func NewResolverBaseFilterer(address common.Address, filterer bind.ContractFilterer) (*ResolverBaseFilterer, error) { 9981 contract, err := bindResolverBase(address, nil, nil, filterer) 9982 if err != nil { 9983 return nil, err 9984 } 9985 return &ResolverBaseFilterer{contract: contract}, nil 9986 } 9987 9988 // bindResolverBase binds a generic wrapper to an already deployed contract. 9989 func bindResolverBase(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 9990 parsed, err := abi.JSON(strings.NewReader(ResolverBaseABI)) 9991 if err != nil { 9992 return nil, err 9993 } 9994 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 9995 } 9996 9997 // Call invokes the (constant) contract method with params as input values and 9998 // sets the output to result. The result type might be a single field for simple 9999 // returns, a slice of interfaces for anonymous returns and a struct for named 10000 // returns. 10001 func (_ResolverBase *ResolverBaseRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 10002 return _ResolverBase.Contract.ResolverBaseCaller.contract.Call(opts, result, method, params...) 10003 } 10004 10005 // Transfer initiates a plain transaction to move funds to the contract, calling 10006 // its default method if one is available. 10007 func (_ResolverBase *ResolverBaseRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 10008 return _ResolverBase.Contract.ResolverBaseTransactor.contract.Transfer(opts) 10009 } 10010 10011 // Transact invokes the (paid) contract method with params as input values. 10012 func (_ResolverBase *ResolverBaseRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 10013 return _ResolverBase.Contract.ResolverBaseTransactor.contract.Transact(opts, method, params...) 10014 } 10015 10016 // Call invokes the (constant) contract method with params as input values and 10017 // sets the output to result. The result type might be a single field for simple 10018 // returns, a slice of interfaces for anonymous returns and a struct for named 10019 // returns. 10020 func (_ResolverBase *ResolverBaseCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 10021 return _ResolverBase.Contract.contract.Call(opts, result, method, params...) 10022 } 10023 10024 // Transfer initiates a plain transaction to move funds to the contract, calling 10025 // its default method if one is available. 10026 func (_ResolverBase *ResolverBaseTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 10027 return _ResolverBase.Contract.contract.Transfer(opts) 10028 } 10029 10030 // Transact invokes the (paid) contract method with params as input values. 10031 func (_ResolverBase *ResolverBaseTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 10032 return _ResolverBase.Contract.contract.Transact(opts, method, params...) 10033 } 10034 10035 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 10036 // 10037 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 10038 func (_ResolverBase *ResolverBaseCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 10039 var out []interface{} 10040 err := _ResolverBase.contract.Call(opts, &out, "supportsInterface", interfaceID) 10041 10042 if err != nil { 10043 return *new(bool), err 10044 } 10045 10046 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 10047 10048 return out0, err 10049 10050 } 10051 10052 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 10053 // 10054 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 10055 func (_ResolverBase *ResolverBaseSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 10056 return _ResolverBase.Contract.SupportsInterface(&_ResolverBase.CallOpts, interfaceID) 10057 } 10058 10059 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 10060 // 10061 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 10062 func (_ResolverBase *ResolverBaseCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 10063 return _ResolverBase.Contract.SupportsInterface(&_ResolverBase.CallOpts, interfaceID) 10064 } 10065 10066 // TextResolverABI is the input ABI used to generate the binding from. 10067 const TextResolverABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"key\",\"type\":\"string\"},{\"name\":\"value\",\"type\":\"string\"}],\"name\":\"setText\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"node\",\"type\":\"bytes32\"},{\"name\":\"key\",\"type\":\"string\"}],\"name\":\"text\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"node\",\"type\":\"bytes32\"},{\"indexed\":true,\"name\":\"indexedKey\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"key\",\"type\":\"string\"}],\"name\":\"TextChanged\",\"type\":\"event\"}]" 10068 10069 // TextResolverFuncSigs maps the 4-byte function signature to its string representation. 10070 var TextResolverFuncSigs = map[string]string{ 10071 "10f13a8c": "setText(bytes32,string,string)", 10072 "01ffc9a7": "supportsInterface(bytes4)", 10073 "59d1d43c": "text(bytes32,string)", 10074 } 10075 10076 // TextResolver is an auto generated Go binding around an Ethereum contract. 10077 type TextResolver struct { 10078 TextResolverCaller // Read-only binding to the contract 10079 TextResolverTransactor // Write-only binding to the contract 10080 TextResolverFilterer // Log filterer for contract events 10081 } 10082 10083 // TextResolverCaller is an auto generated read-only Go binding around an Ethereum contract. 10084 type TextResolverCaller struct { 10085 contract *bind.BoundContract // Generic contract wrapper for the low level calls 10086 } 10087 10088 // TextResolverTransactor is an auto generated write-only Go binding around an Ethereum contract. 10089 type TextResolverTransactor struct { 10090 contract *bind.BoundContract // Generic contract wrapper for the low level calls 10091 } 10092 10093 // TextResolverFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 10094 type TextResolverFilterer struct { 10095 contract *bind.BoundContract // Generic contract wrapper for the low level calls 10096 } 10097 10098 // TextResolverSession is an auto generated Go binding around an Ethereum contract, 10099 // with pre-set call and transact options. 10100 type TextResolverSession struct { 10101 Contract *TextResolver // Generic contract binding to set the session for 10102 CallOpts bind.CallOpts // Call options to use throughout this session 10103 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 10104 } 10105 10106 // TextResolverCallerSession is an auto generated read-only Go binding around an Ethereum contract, 10107 // with pre-set call options. 10108 type TextResolverCallerSession struct { 10109 Contract *TextResolverCaller // Generic contract caller binding to set the session for 10110 CallOpts bind.CallOpts // Call options to use throughout this session 10111 } 10112 10113 // TextResolverTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 10114 // with pre-set transact options. 10115 type TextResolverTransactorSession struct { 10116 Contract *TextResolverTransactor // Generic contract transactor binding to set the session for 10117 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 10118 } 10119 10120 // TextResolverRaw is an auto generated low-level Go binding around an Ethereum contract. 10121 type TextResolverRaw struct { 10122 Contract *TextResolver // Generic contract binding to access the raw methods on 10123 } 10124 10125 // TextResolverCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 10126 type TextResolverCallerRaw struct { 10127 Contract *TextResolverCaller // Generic read-only contract binding to access the raw methods on 10128 } 10129 10130 // TextResolverTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 10131 type TextResolverTransactorRaw struct { 10132 Contract *TextResolverTransactor // Generic write-only contract binding to access the raw methods on 10133 } 10134 10135 // NewTextResolver creates a new instance of TextResolver, bound to a specific deployed contract. 10136 func NewTextResolver(address common.Address, backend bind.ContractBackend) (*TextResolver, error) { 10137 contract, err := bindTextResolver(address, backend, backend, backend) 10138 if err != nil { 10139 return nil, err 10140 } 10141 return &TextResolver{TextResolverCaller: TextResolverCaller{contract: contract}, TextResolverTransactor: TextResolverTransactor{contract: contract}, TextResolverFilterer: TextResolverFilterer{contract: contract}}, nil 10142 } 10143 10144 // NewTextResolverCaller creates a new read-only instance of TextResolver, bound to a specific deployed contract. 10145 func NewTextResolverCaller(address common.Address, caller bind.ContractCaller) (*TextResolverCaller, error) { 10146 contract, err := bindTextResolver(address, caller, nil, nil) 10147 if err != nil { 10148 return nil, err 10149 } 10150 return &TextResolverCaller{contract: contract}, nil 10151 } 10152 10153 // NewTextResolverTransactor creates a new write-only instance of TextResolver, bound to a specific deployed contract. 10154 func NewTextResolverTransactor(address common.Address, transactor bind.ContractTransactor) (*TextResolverTransactor, error) { 10155 contract, err := bindTextResolver(address, nil, transactor, nil) 10156 if err != nil { 10157 return nil, err 10158 } 10159 return &TextResolverTransactor{contract: contract}, nil 10160 } 10161 10162 // NewTextResolverFilterer creates a new log filterer instance of TextResolver, bound to a specific deployed contract. 10163 func NewTextResolverFilterer(address common.Address, filterer bind.ContractFilterer) (*TextResolverFilterer, error) { 10164 contract, err := bindTextResolver(address, nil, nil, filterer) 10165 if err != nil { 10166 return nil, err 10167 } 10168 return &TextResolverFilterer{contract: contract}, nil 10169 } 10170 10171 // bindTextResolver binds a generic wrapper to an already deployed contract. 10172 func bindTextResolver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 10173 parsed, err := abi.JSON(strings.NewReader(TextResolverABI)) 10174 if err != nil { 10175 return nil, err 10176 } 10177 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 10178 } 10179 10180 // Call invokes the (constant) contract method with params as input values and 10181 // sets the output to result. The result type might be a single field for simple 10182 // returns, a slice of interfaces for anonymous returns and a struct for named 10183 // returns. 10184 func (_TextResolver *TextResolverRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 10185 return _TextResolver.Contract.TextResolverCaller.contract.Call(opts, result, method, params...) 10186 } 10187 10188 // Transfer initiates a plain transaction to move funds to the contract, calling 10189 // its default method if one is available. 10190 func (_TextResolver *TextResolverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 10191 return _TextResolver.Contract.TextResolverTransactor.contract.Transfer(opts) 10192 } 10193 10194 // Transact invokes the (paid) contract method with params as input values. 10195 func (_TextResolver *TextResolverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 10196 return _TextResolver.Contract.TextResolverTransactor.contract.Transact(opts, method, params...) 10197 } 10198 10199 // Call invokes the (constant) contract method with params as input values and 10200 // sets the output to result. The result type might be a single field for simple 10201 // returns, a slice of interfaces for anonymous returns and a struct for named 10202 // returns. 10203 func (_TextResolver *TextResolverCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 10204 return _TextResolver.Contract.contract.Call(opts, result, method, params...) 10205 } 10206 10207 // Transfer initiates a plain transaction to move funds to the contract, calling 10208 // its default method if one is available. 10209 func (_TextResolver *TextResolverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 10210 return _TextResolver.Contract.contract.Transfer(opts) 10211 } 10212 10213 // Transact invokes the (paid) contract method with params as input values. 10214 func (_TextResolver *TextResolverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 10215 return _TextResolver.Contract.contract.Transact(opts, method, params...) 10216 } 10217 10218 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 10219 // 10220 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 10221 func (_TextResolver *TextResolverCaller) SupportsInterface(opts *bind.CallOpts, interfaceID [4]byte) (bool, error) { 10222 var out []interface{} 10223 err := _TextResolver.contract.Call(opts, &out, "supportsInterface", interfaceID) 10224 10225 if err != nil { 10226 return *new(bool), err 10227 } 10228 10229 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 10230 10231 return out0, err 10232 10233 } 10234 10235 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 10236 // 10237 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 10238 func (_TextResolver *TextResolverSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 10239 return _TextResolver.Contract.SupportsInterface(&_TextResolver.CallOpts, interfaceID) 10240 } 10241 10242 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 10243 // 10244 // Solidity: function supportsInterface(bytes4 interfaceID) pure returns(bool) 10245 func (_TextResolver *TextResolverCallerSession) SupportsInterface(interfaceID [4]byte) (bool, error) { 10246 return _TextResolver.Contract.SupportsInterface(&_TextResolver.CallOpts, interfaceID) 10247 } 10248 10249 // Text is a free data retrieval call binding the contract method 0x59d1d43c. 10250 // 10251 // Solidity: function text(bytes32 node, string key) view returns(string) 10252 func (_TextResolver *TextResolverCaller) Text(opts *bind.CallOpts, node [32]byte, key string) (string, error) { 10253 var out []interface{} 10254 err := _TextResolver.contract.Call(opts, &out, "text", node, key) 10255 10256 if err != nil { 10257 return *new(string), err 10258 } 10259 10260 out0 := *abi.ConvertType(out[0], new(string)).(*string) 10261 10262 return out0, err 10263 10264 } 10265 10266 // Text is a free data retrieval call binding the contract method 0x59d1d43c. 10267 // 10268 // Solidity: function text(bytes32 node, string key) view returns(string) 10269 func (_TextResolver *TextResolverSession) Text(node [32]byte, key string) (string, error) { 10270 return _TextResolver.Contract.Text(&_TextResolver.CallOpts, node, key) 10271 } 10272 10273 // Text is a free data retrieval call binding the contract method 0x59d1d43c. 10274 // 10275 // Solidity: function text(bytes32 node, string key) view returns(string) 10276 func (_TextResolver *TextResolverCallerSession) Text(node [32]byte, key string) (string, error) { 10277 return _TextResolver.Contract.Text(&_TextResolver.CallOpts, node, key) 10278 } 10279 10280 // SetText is a paid mutator transaction binding the contract method 0x10f13a8c. 10281 // 10282 // Solidity: function setText(bytes32 node, string key, string value) returns() 10283 func (_TextResolver *TextResolverTransactor) SetText(opts *bind.TransactOpts, node [32]byte, key string, value string) (*types.Transaction, error) { 10284 return _TextResolver.contract.Transact(opts, "setText", node, key, value) 10285 } 10286 10287 // SetText is a paid mutator transaction binding the contract method 0x10f13a8c. 10288 // 10289 // Solidity: function setText(bytes32 node, string key, string value) returns() 10290 func (_TextResolver *TextResolverSession) SetText(node [32]byte, key string, value string) (*types.Transaction, error) { 10291 return _TextResolver.Contract.SetText(&_TextResolver.TransactOpts, node, key, value) 10292 } 10293 10294 // SetText is a paid mutator transaction binding the contract method 0x10f13a8c. 10295 // 10296 // Solidity: function setText(bytes32 node, string key, string value) returns() 10297 func (_TextResolver *TextResolverTransactorSession) SetText(node [32]byte, key string, value string) (*types.Transaction, error) { 10298 return _TextResolver.Contract.SetText(&_TextResolver.TransactOpts, node, key, value) 10299 } 10300 10301 // TextResolverTextChangedIterator is returned from FilterTextChanged and is used to iterate over the raw logs and unpacked data for TextChanged events raised by the TextResolver contract. 10302 type TextResolverTextChangedIterator struct { 10303 Event *TextResolverTextChanged // Event containing the contract specifics and raw log 10304 10305 contract *bind.BoundContract // Generic contract to use for unpacking event data 10306 event string // Event name to use for unpacking event data 10307 10308 logs chan types.Log // Log channel receiving the found contract events 10309 sub ethereum.Subscription // Subscription for errors, completion and termination 10310 done bool // Whether the subscription completed delivering logs 10311 fail error // Occurred error to stop iteration 10312 } 10313 10314 // Next advances the iterator to the subsequent event, returning whether there 10315 // are any more events found. In case of a retrieval or parsing error, false is 10316 // returned and Error() can be queried for the exact failure. 10317 func (it *TextResolverTextChangedIterator) Next() bool { 10318 // If the iterator failed, stop iterating 10319 if it.fail != nil { 10320 return false 10321 } 10322 // If the iterator completed, deliver directly whatever's available 10323 if it.done { 10324 select { 10325 case log := <-it.logs: 10326 it.Event = new(TextResolverTextChanged) 10327 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10328 it.fail = err 10329 return false 10330 } 10331 it.Event.Raw = log 10332 return true 10333 10334 default: 10335 return false 10336 } 10337 } 10338 // Iterator still in progress, wait for either a data or an error event 10339 select { 10340 case log := <-it.logs: 10341 it.Event = new(TextResolverTextChanged) 10342 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10343 it.fail = err 10344 return false 10345 } 10346 it.Event.Raw = log 10347 return true 10348 10349 case err := <-it.sub.Err(): 10350 it.done = true 10351 it.fail = err 10352 return it.Next() 10353 } 10354 } 10355 10356 // Error returns any retrieval or parsing error occurred during filtering. 10357 func (it *TextResolverTextChangedIterator) Error() error { 10358 return it.fail 10359 } 10360 10361 // Close terminates the iteration process, releasing any pending underlying 10362 // resources. 10363 func (it *TextResolverTextChangedIterator) Close() error { 10364 it.sub.Unsubscribe() 10365 return nil 10366 } 10367 10368 // TextResolverTextChanged represents a TextChanged event raised by the TextResolver contract. 10369 type TextResolverTextChanged struct { 10370 Node [32]byte 10371 IndexedKey common.Hash 10372 Key string 10373 Raw types.Log // Blockchain specific contextual infos 10374 } 10375 10376 // FilterTextChanged is a free log retrieval operation binding the contract event 0xd8c9334b1a9c2f9da342a0a2b32629c1a229b6445dad78947f674b44444a7550. 10377 // 10378 // Solidity: event TextChanged(bytes32 indexed node, string indexed indexedKey, string key) 10379 func (_TextResolver *TextResolverFilterer) FilterTextChanged(opts *bind.FilterOpts, node [][32]byte, indexedKey []string) (*TextResolverTextChangedIterator, error) { 10380 10381 var nodeRule []interface{} 10382 for _, nodeItem := range node { 10383 nodeRule = append(nodeRule, nodeItem) 10384 } 10385 var indexedKeyRule []interface{} 10386 for _, indexedKeyItem := range indexedKey { 10387 indexedKeyRule = append(indexedKeyRule, indexedKeyItem) 10388 } 10389 10390 logs, sub, err := _TextResolver.contract.FilterLogs(opts, "TextChanged", nodeRule, indexedKeyRule) 10391 if err != nil { 10392 return nil, err 10393 } 10394 return &TextResolverTextChangedIterator{contract: _TextResolver.contract, event: "TextChanged", logs: logs, sub: sub}, nil 10395 } 10396 10397 // WatchTextChanged is a free log subscription operation binding the contract event 0xd8c9334b1a9c2f9da342a0a2b32629c1a229b6445dad78947f674b44444a7550. 10398 // 10399 // Solidity: event TextChanged(bytes32 indexed node, string indexed indexedKey, string key) 10400 func (_TextResolver *TextResolverFilterer) WatchTextChanged(opts *bind.WatchOpts, sink chan<- *TextResolverTextChanged, node [][32]byte, indexedKey []string) (event.Subscription, error) { 10401 10402 var nodeRule []interface{} 10403 for _, nodeItem := range node { 10404 nodeRule = append(nodeRule, nodeItem) 10405 } 10406 var indexedKeyRule []interface{} 10407 for _, indexedKeyItem := range indexedKey { 10408 indexedKeyRule = append(indexedKeyRule, indexedKeyItem) 10409 } 10410 10411 logs, sub, err := _TextResolver.contract.WatchLogs(opts, "TextChanged", nodeRule, indexedKeyRule) 10412 if err != nil { 10413 return nil, err 10414 } 10415 return event.NewSubscription(func(quit <-chan struct{}) error { 10416 defer sub.Unsubscribe() 10417 for { 10418 select { 10419 case log := <-logs: 10420 // New log arrived, parse the event and forward to the user 10421 event := new(TextResolverTextChanged) 10422 if err := _TextResolver.contract.UnpackLog(event, "TextChanged", log); err != nil { 10423 return err 10424 } 10425 event.Raw = log 10426 10427 select { 10428 case sink <- event: 10429 case err := <-sub.Err(): 10430 return err 10431 case <-quit: 10432 return nil 10433 } 10434 case err := <-sub.Err(): 10435 return err 10436 case <-quit: 10437 return nil 10438 } 10439 } 10440 }), nil 10441 } 10442 10443 // ParseTextChanged is a log parse operation binding the contract event 0xd8c9334b1a9c2f9da342a0a2b32629c1a229b6445dad78947f674b44444a7550. 10444 // 10445 // Solidity: event TextChanged(bytes32 indexed node, string indexed indexedKey, string key) 10446 func (_TextResolver *TextResolverFilterer) ParseTextChanged(log types.Log) (*TextResolverTextChanged, error) { 10447 event := new(TextResolverTextChanged) 10448 if err := _TextResolver.contract.UnpackLog(event, "TextChanged", log); err != nil { 10449 return nil, err 10450 } 10451 event.Raw = log 10452 return event, nil 10453 }