12732 lines
572 KiB
JSON
12732 lines
572 KiB
JSON
{
|
|
"contractName": "MockContract",
|
|
"abi": [
|
|
{
|
|
"constant": true,
|
|
"inputs": [],
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"inputs": [],
|
|
"name": "MOCKS_LIST_START",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "bytes32"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"inputs": [],
|
|
"name": "MOCKS_LIST_END",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"inputs": [],
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"outputs": [
|
|
{
|
|
"name": "",
|
|
"type": "bytes4"
|
|
}
|
|
],
|
|
"payable": false,
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "constructor"
|
|
},
|
|
{
|
|
"payable": true,
|
|
"stateMutability": "payable",
|
|
"type": "fallback"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenReturn",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "method",
|
|
"type": "bytes4"
|
|
},
|
|
{
|
|
"name": "response",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenReturnAny",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenRevert",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "method",
|
|
"type": "bytes4"
|
|
}
|
|
],
|
|
"name": "givenRevertAny",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
},
|
|
{
|
|
"name": "message",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "givenRevertWithMessage",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "method",
|
|
"type": "bytes4"
|
|
},
|
|
{
|
|
"name": "message",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "givenRevertAnyWithMessage",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "call",
|
|
"type": "bytes"
|
|
}
|
|
],
|
|
"name": "givenOutOfGas",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [
|
|
{
|
|
"name": "method",
|
|
"type": "bytes4"
|
|
}
|
|
],
|
|
"name": "givenOutOfGasAny",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"inputs": [],
|
|
"name": "reset",
|
|
"outputs": [],
|
|
"payable": false,
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
}
|
|
],
|
|
"bytecode": "0x60806040523480156200001157600080fd5b506040805190810160405280600481526020017f3078666600000000000000000000000000000000000000000000000000000000815250600080600180026000191660001916815260200190815260200160002090805190602001906200007a9291906200014b565b5060017c0100000000000000000000000000000000000000000000000000000000026004600060017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c010000000000000000000000000000000000000000000000000000000090040217905550620001fa565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018e57805160ff1916838001178555620001bf565b82800160010185558215620001bf579182015b82811115620001be578251825591602001919060010190620001a1565b5b509050620001ce9190620001d2565b5090565b620001f791905b80821115620001f3576000816000905550600101620001d9565b5090565b90565b61231c806200020a6000396000f3006080604052600436106100c5576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806311bcf7b21461062f578063122e523f146106985780632ed238dc1461072a57806350b908731461075d5780635fd1e7fa146107c657806367aad04a146108125780636ef7920f146108455780637a63538b146108915780637cd96ee414610923578063b947d020146109b3578063d826f88f14610a62578063f07da22914610a79578063fc95802514610ae2575b600060606000359150600160028111156100db57fe5b600160003660405180838380828437820191505092505050908152602001604051809103902060009054906101000a900460ff16600281111561011a57fe5b14156102045760036000366040518083838082843782019150509250505090815260200160405180910390206040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156101f55780601f106101ca576101008083540402835291602001916101f5565b820191906000526020600020905b8154815290600101906020018083116101d857829003601f168201915b50509250505060405180910390fd5b60028081111561021057fe5b600160003660405180838380828437820191505092505050908152602001604051809103902060009054906101000a900460ff16600281111561024f57fe5b141561025e5761025d610b91565b5b60026000366040518083838082843782019150509250505090815260200160405180910390208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103185780601f106102ed57610100808354040283529160200191610318565b820191906000526020600020905b8154815290600101906020018083116102fb57829003601f168201915b50505050509050600081511415610627576001600281111561033657fe5b60056000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff1660028111156103a057fe5b14156104b55760076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000206040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156104a65780601f1061047b576101008083540402835291602001916104a6565b820191906000526020600020905b81548152906001019060200180831161048957829003601f168201915b50509250505060405180910390fd5b6002808111156104c157fe5b60056000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff16600281111561052b57fe5b141561053a57610539610b91565b5b60066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000208054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561061f5780601f106105f45761010080835404028352916020019161061f565b820191906000526020600020905b81548152906001019060200180831161060257829003601f168201915b505050505090505b805181602001f35b34801561063b57600080fd5b50610696600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ba6565b005b3480156106a457600080fd5b5061072860048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c3f565b005b34801561073657600080fd5b5061073f610d25565b60405180826000191660001916815260200191505060405180910390f35b34801561076957600080fd5b506107c4600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610dc0565b005b3480156107d257600080fd5b5061081060048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610ee8565b005b34801561081e57600080fd5b50610827610f67565b60405180826000191660001916815260200191505060405180910390f35b34801561085157600080fd5b5061088f60048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610f6e565b005b34801561089d57600080fd5b5061092160048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fed565b005b34801561092f57600080fd5b506109386110d3565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109bf57600080fd5b50610a60600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061110c565b005b348015610a6e57600080fd5b50610a77611225565b005b348015610a8557600080fd5b50610a8e611bc7565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b348015610aee57600080fd5b50610b8f600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611beb565b005b5b600115610ba457600160405455610b92565b565b60026001826040518082805190602001908083835b602083101515610be05780518252602082019150602081019050602083039250610bbb565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115610c2e57fe5b0217905550610c3c81611d05565b50565b600160056000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115610cad57fe5b02179055508060076000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000209080519060200190610d179291906120c4565b50610d2182611e31565b5050565b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506040518082805190602001908083835b602083101515610d905780518252602082019150602081019050602083039250610d6b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902081565b600180826040518082805190602001908083835b602083101515610df95780518252602082019150602081019050602083039250610dd4565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115610e4757fe5b021790555060206040519081016040528060008152506003826040518082805190602001908083835b602083101515610e955780518252602082019150602081019050602083039250610e70565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190610edb9291906120c4565b50610ee581611d05565b50565b600160056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115610f5657fe5b0217905550610f6481611e31565b50565b6001800281565b600260056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115610fdc57fe5b0217905550610fea81611e31565b50565b600060056000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff0219169083600281111561105b57fe5b02179055508060066000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002090805190602001906110c5929190612144565b506110cf82611e31565b5050565b6040805190810160405280600481526020017f307866660000000000000000000000000000000000000000000000000000000081525081565b600180836040518082805190602001908083835b6020831015156111455780518252602082019150602081019050602083039250611120565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff0219169083600281111561119357fe5b0217905550806003836040518082805190602001908083835b6020831015156111d157805182526020820191506020810190506020830392506111ac565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902090805190602001906112179291906120c4565b5061122182611d05565b5050565b6060600080600080600060018002600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112dd5780601f106112b2576101008083540402835291602001916112dd565b820191906000526020600020905b8154815290600101906020018083116112c057829003601f168201915b50505050509350836040518082805190602001908083835b60208310151561131a57805182526020820191506020810190506020830392506112f5565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092505b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506040518082805190602001908083835b6020831015156113b55780518252602082019150602081019050602083039250611390565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191683600019161415156116fd5760006001856040518082805190602001908083835b60208310151561142c5780518252602082019150602081019050602083039250611407565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff0219169083600281111561147a57fe5b021790555060206040519081016040528060008152506002856040518082805190602001908083835b6020831015156114c857805182526020820191506020810190506020830392506114a3565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020908051906020019061150e9291906121c4565b5060206040519081016040528060008152506003856040518082805190602001908083835b6020831015156115585780518252602082019150602081019050602083039250611533565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020908051906020019061159e9291906120c4565b5060008084600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561164d5780601f106116225761010080835404028352916020019161164d565b820191906000526020600020905b81548152906001019060200180831161163057829003601f168201915b505050505093506020604051908101604052806000815250600080856000191660001916815260200190815260200160002090805190602001906116929291906121c4565b50836040518082805190602001908083835b6020831015156116c957805182526020820191506020810190506020830392506116a4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061134a565b6040805190810160405280600481526020017f307866660000000000000000000000000000000000000000000000000000000081525060008060018002600019166000191681526020019081526020016000209080519060200190611763929190612144565b506004600060017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c01000000000000000000000000000000000000000000000000000000000291505b60017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141515611af757819050600060056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff021916908360028111156118da57fe5b0217905550602060405190810160405280600081525060066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002090805190602001906119549291906121c4565b50602060405190810160405280600081525060076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002090805190602001906119ca9291906120c4565b5060046000827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c010000000000000000000000000000000000000000000000000000000002915060007c01000000000000000000000000000000000000000000000000000000000260046000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c010000000000000000000000000000000000000000000000000000000090040217905550611802565b60017c0100000000000000000000000000000000000000000000000000000000026004600060017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c01000000000000000000000000000000000000000000000000000000009004021790555050505050565b60017c01000000000000000000000000000000000000000000000000000000000281565b60006001836040518082805190602001908083835b602083101515611c255780518252602082019150602081019050602083039250611c00565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115611c7357fe5b0217905550806002836040518082805190602001908083835b602083101515611cb15780518252602082019150602081019050602083039250611c8c565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190611cf7929190612144565b50611d0182611d05565b5050565b6000816040518082805190602001908083835b602083101515611d3d5780518252602082019150602081019050602083039250611d18565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600080600083600019166000191681526020019081526020016000208054600181600116156101000203166002900490501415611e2d57600080600180026000191660001916815260200190815260200160002060008083600019166000191681526020019081526020016000209080546001816001161561010002031660029004611df9929190612244565b508160008060018002600019166000191681526020019081526020016000209080519060200190611e2b929190612144565b505b5050565b60007c01000000000000000000000000000000000000000000000000000000000260046000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614156120c1576004600060017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c01000000000000000000000000000000000000000000000000000000000260046000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c010000000000000000000000000000000000000000000000000000000090040217905550806004600060017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c0100000000000000000000000000000000000000000000000000000000900402179055505b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061210557805160ff1916838001178555612133565b82800160010185558215612133579182015b82811115612132578251825591602001919060010190612117565b5b50905061214091906122cb565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061218557805160ff19168380011785556121b3565b828001600101855582156121b3579182015b828111156121b2578251825591602001919060010190612197565b5b5090506121c091906122cb565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061220557805160ff1916838001178555612233565b82800160010185558215612233579182015b82811115612232578251825591602001919060010190612217565b5b50905061224091906122cb565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061227d57805485556122ba565b828001600101855582156122ba57600052602060002091601f016020900482015b828111156122b957825482559160010191906001019061229e565b5b5090506122c791906122cb565b5090565b6122ed91905b808211156122e95760008160009055506001016122d1565b5090565b905600a165627a7a72305820e3d9d37bc53f32c931f3f9481042543fd8b3c9d309d8b8ccac2c32e98ff9c7bb0029",
|
|
"deployedBytecode": "0x6080604052600436106100c5576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806311bcf7b21461062f578063122e523f146106985780632ed238dc1461072a57806350b908731461075d5780635fd1e7fa146107c657806367aad04a146108125780636ef7920f146108455780637a63538b146108915780637cd96ee414610923578063b947d020146109b3578063d826f88f14610a62578063f07da22914610a79578063fc95802514610ae2575b600060606000359150600160028111156100db57fe5b600160003660405180838380828437820191505092505050908152602001604051809103902060009054906101000a900460ff16600281111561011a57fe5b14156102045760036000366040518083838082843782019150509250505090815260200160405180910390206040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156101f55780601f106101ca576101008083540402835291602001916101f5565b820191906000526020600020905b8154815290600101906020018083116101d857829003601f168201915b50509250505060405180910390fd5b60028081111561021057fe5b600160003660405180838380828437820191505092505050908152602001604051809103902060009054906101000a900460ff16600281111561024f57fe5b141561025e5761025d610b91565b5b60026000366040518083838082843782019150509250505090815260200160405180910390208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103185780601f106102ed57610100808354040283529160200191610318565b820191906000526020600020905b8154815290600101906020018083116102fb57829003601f168201915b50505050509050600081511415610627576001600281111561033657fe5b60056000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff1660028111156103a057fe5b14156104b55760076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000206040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156104a65780601f1061047b576101008083540402835291602001916104a6565b820191906000526020600020905b81548152906001019060200180831161048957829003601f168201915b50509250505060405180910390fd5b6002808111156104c157fe5b60056000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff16600281111561052b57fe5b141561053a57610539610b91565b5b60066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000208054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561061f5780601f106105f45761010080835404028352916020019161061f565b820191906000526020600020905b81548152906001019060200180831161060257829003601f168201915b505050505090505b805181602001f35b34801561063b57600080fd5b50610696600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ba6565b005b3480156106a457600080fd5b5061072860048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c3f565b005b34801561073657600080fd5b5061073f610d25565b60405180826000191660001916815260200191505060405180910390f35b34801561076957600080fd5b506107c4600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610dc0565b005b3480156107d257600080fd5b5061081060048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610ee8565b005b34801561081e57600080fd5b50610827610f67565b60405180826000191660001916815260200191505060405180910390f35b34801561085157600080fd5b5061088f60048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610f6e565b005b34801561089d57600080fd5b5061092160048036038101908080357bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fed565b005b34801561092f57600080fd5b506109386110d3565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109bf57600080fd5b50610a60600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061110c565b005b348015610a6e57600080fd5b50610a77611225565b005b348015610a8557600080fd5b50610a8e611bc7565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b348015610aee57600080fd5b50610b8f600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611beb565b005b5b600115610ba457600160405455610b92565b565b60026001826040518082805190602001908083835b602083101515610be05780518252602082019150602081019050602083039250610bbb565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115610c2e57fe5b0217905550610c3c81611d05565b50565b600160056000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115610cad57fe5b02179055508060076000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019081526020016000209080519060200190610d179291906120c4565b50610d2182611e31565b5050565b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506040518082805190602001908083835b602083101515610d905780518252602082019150602081019050602083039250610d6b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902081565b600180826040518082805190602001908083835b602083101515610df95780518252602082019150602081019050602083039250610dd4565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115610e4757fe5b021790555060206040519081016040528060008152506003826040518082805190602001908083835b602083101515610e955780518252602082019150602081019050602083039250610e70565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190610edb9291906120c4565b50610ee581611d05565b50565b600160056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115610f5657fe5b0217905550610f6481611e31565b50565b6001800281565b600260056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690836002811115610fdc57fe5b0217905550610fea81611e31565b50565b600060056000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff0219169083600281111561105b57fe5b02179055508060066000847bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002090805190602001906110c5929190612144565b506110cf82611e31565b5050565b6040805190810160405280600481526020017f307866660000000000000000000000000000000000000000000000000000000081525081565b600180836040518082805190602001908083835b6020831015156111455780518252602082019150602081019050602083039250611120565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff0219169083600281111561119357fe5b0217905550806003836040518082805190602001908083835b6020831015156111d157805182526020820191506020810190506020830392506111ac565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902090805190602001906112179291906120c4565b5061122182611d05565b5050565b6060600080600080600060018002600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112dd5780601f106112b2576101008083540402835291602001916112dd565b820191906000526020600020905b8154815290600101906020018083116112c057829003601f168201915b50505050509350836040518082805190602001908083835b60208310151561131a57805182526020820191506020810190506020830392506112f5565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092505b6040805190810160405280600481526020017f30786666000000000000000000000000000000000000000000000000000000008152506040518082805190602001908083835b6020831015156113b55780518252602082019150602081019050602083039250611390565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191683600019161415156116fd5760006001856040518082805190602001908083835b60208310151561142c5780518252602082019150602081019050602083039250611407565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff0219169083600281111561147a57fe5b021790555060206040519081016040528060008152506002856040518082805190602001908083835b6020831015156114c857805182526020820191506020810190506020830392506114a3565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020908051906020019061150e9291906121c4565b5060206040519081016040528060008152506003856040518082805190602001908083835b6020831015156115585780518252602082019150602081019050602083039250611533565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020908051906020019061159e9291906120c4565b5060008084600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561164d5780601f106116225761010080835404028352916020019161164d565b820191906000526020600020905b81548152906001019060200180831161163057829003601f168201915b505050505093506020604051908101604052806000815250600080856000191660001916815260200190815260200160002090805190602001906116929291906121c4565b50836040518082805190602001908083835b6020831015156116c957805182526020820191506020810190506020830392506116a4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061134a565b6040805190810160405280600481526020017f307866660000000000000000000000000000000000000000000000000000000081525060008060018002600019166000191681526020019081526020016000209080519060200190611763929190612144565b506004600060017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c01000000000000000000000000000000000000000000000000000000000291505b60017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141515611af757819050600060056000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff021916908360028111156118da57fe5b0217905550602060405190810160405280600081525060066000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002090805190602001906119549291906121c4565b50602060405190810160405280600081525060076000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002090805190602001906119ca9291906120c4565b5060046000827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c010000000000000000000000000000000000000000000000000000000002915060007c01000000000000000000000000000000000000000000000000000000000260046000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c010000000000000000000000000000000000000000000000000000000090040217905550611802565b60017c0100000000000000000000000000000000000000000000000000000000026004600060017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c01000000000000000000000000000000000000000000000000000000009004021790555050505050565b60017c01000000000000000000000000000000000000000000000000000000000281565b60006001836040518082805190602001908083835b602083101515611c255780518252602082019150602081019050602083039250611c00565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548160ff02191690836002811115611c7357fe5b0217905550806002836040518082805190602001908083835b602083101515611cb15780518252602082019150602081019050602083039250611c8c565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209080519060200190611cf7929190612144565b50611d0182611d05565b5050565b6000816040518082805190602001908083835b602083101515611d3d5780518252602082019150602081019050602083039250611d18565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600080600083600019166000191681526020019081526020016000208054600181600116156101000203166002900490501415611e2d57600080600180026000191660001916815260200190815260200160002060008083600019166000191681526020019081526020016000209080546001816001161561010002031660029004611df9929190612244565b508160008060018002600019166000191681526020019081526020016000209080519060200190611e2b929190612144565b505b5050565b60007c01000000000000000000000000000000000000000000000000000000000260046000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614156120c1576004600060017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a90047c01000000000000000000000000000000000000000000000000000000000260046000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c010000000000000000000000000000000000000000000000000000000090040217905550806004600060017c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548163ffffffff02191690837c0100000000000000000000000000000000000000000000000000000000900402179055505b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061210557805160ff1916838001178555612133565b82800160010185558215612133579182015b82811115612132578251825591602001919060010190612117565b5b50905061214091906122cb565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061218557805160ff19168380011785556121b3565b828001600101855582156121b3579182015b828111156121b2578251825591602001919060010190612197565b5b5090506121c091906122cb565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061220557805160ff1916838001178555612233565b82800160010185558215612233579182015b82811115612232578251825591602001919060010190612217565b5b50905061224091906122cb565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061227d57805485556122ba565b828001600101855582156122ba57600052602060002091601f016020900482015b828111156122b957825482559160010191906001019061229e565b5b5090506122c791906122cb565b5090565b6122ed91905b808211156122e95760008160009055506001016122d1565b5090565b905600a165627a7a72305820e3d9d37bc53f32c931f3f9481042543fd8b3c9d309d8b8ccac2c32e98ff9c7bb0029",
|
|
"sourceMap": "26:4585:27:-;;;703:115;8:9:-1;5:2;;;30:1;27;20:12;5:2;703:115:27;747:14;;;;;;;;;;;;;;;;;;721:5;:23;140:3;727:16;;721:23;;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;:::i;:::-;;312:3;796:18;;765:8;:28;312:3;774:18;;765:28;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;;26:4585;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;",
|
|
"deployedSourceMap": "26:4585:27:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3978:15;4203:19;4036:1;4023:15;4011:27;;4072:15;4049:38;;;;;;;;:9;4059:8;;4049:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:38;;;;;;;;;4045:85;;;4101:13;4115:8;;4101:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4094:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4045:85;4160:17;4137:40;;;;;;;;:9;4147:8;;4137:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:40;;;;;;;;;4133:67;;;4184:11;:9;:11::i;:::-;4133:67;4225:12;4238:8;;4225:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4203:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4325:1;4308:6;:13;:18;4304:241;;;4363:15;4337:41;;;;;;;;:12;:22;4350:8;4337:22;;;;;;;;;;;;;;;;;;;;;;;;;;;:41;;;;;;;;;4333:93;;;4393:16;:26;4410:8;4393:26;;;;;;;;;;;;;;;;;4386:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4333:93;4460:17;4434:43;;;;;;;;:12;:22;4447:8;4434:22;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;;;;;;;4430:72;;;4485:11;:9;:11::i;:::-;4430:72;4515:15;:25;4531:8;4515:25;;;;;;;;;;;;;;;;;4506:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4304:241;4594:6;4588:13;4579:6;4573:4;4569:17;4562:40;2536:104;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2536:104:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2350:183;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2350:183:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;194:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;194:71:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1935:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1935:128:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2066:118;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2066:118:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;97:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;97:46:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2643:121;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2643:121:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1760:172;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1760:172:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;146:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;146:45:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;146:45:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2187:160;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2187:160:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2767:1076;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2767:1076:27;;;;;;268:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;268:47:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1608:149;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1608:149:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3846:99;3879:63;3885:4;3879:63;;;3931:1;3924:4;3918:11;3911:22;3905:33;;;3846:99::o;2536:104::-;2600:17;2582:9;2592:4;2582:15;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2582:15:27;;;;;;;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;;;;;;;2621:15;2631:4;2621:9;:15::i;:::-;2536:104;:::o;2350:183::-;2450:15;2427:12;:20;2440:6;2427:20;;;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;;;;;;;2496:7;2469:16;:24;2486:6;2469:24;;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;:::i;:::-;;2507:20;2520:6;2507:12;:20::i;:::-;2350:183;;:::o;194:71::-;250:14;;;;;;;;;;;;;;;;;;240:25;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;240:25:27;;;;;;;;;;;;;;;;194:71;:::o;1935:128::-;1997:15;1979:9;1989:4;1979:15;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1979:15:27;;;;;;;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;;;;;;;2016:24;;;;;;;;;;;;;:13;2030:4;2016:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2016:19:27;;;;;;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;:::i;:::-;;2044:15;2054:4;2044:9;:15::i;:::-;1935:128;:::o;2066:118::-;2139:15;2116:12;:20;2129:6;2116:20;;;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;;;;;;;2158:20;2171:6;2158:12;:20::i;:::-;2066:118;:::o;97:46::-;140:3;97:46;;;:::o;2643:121::-;2718:17;2695:12;:20;2708:6;2695:20;;;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;;;;;;;2739:20;2752:6;2739:12;:20::i;:::-;2643:121;:::o;1760:172::-;1849:15;1826:12;:20;1839:6;1826:20;;;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;;;;;;;1894:8;1868:15;:23;1884:6;1868:23;;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;:::i;:::-;;1906:20;1919:6;1906:12;:20::i;:::-;1760:172;;:::o;146:45::-;;;;;;;;;;;;;;;;;;;;:::o;2187:160::-;2276:15;2258:9;2268:4;2258:15;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2258:15:27;;;;;;;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;;;;;;;2317:7;2295:13;2309:4;2295:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2295:19:27;;;;;;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;:::i;:::-;;2328:15;2338:4;2328:9;:15::i;:::-;2187:160;;:::o;2767:1076::-;2822:21;2873:16;3387:18;3486:21;2846:5;:23;140:3;2852:16;;2846:23;;;;;;;;;;;;;;;;;2822:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2902:8;2892:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2892:19:27;;;;;;;;;;;;;;;;2873:38;;2944:354;250:14;;;;;;;;;;;;;;;;;;240:25;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;240:25:27;;;;;;;;;;;;;;;;2950:31;;;:8;:31;;;;;2944:354;;;3036:15;3014:9;3024:8;3014:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3014:19:27;;;;;;;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;;;;;;;3056:30;;;;;;;;;;;;;:12;3069:8;3056:22;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3056:22:27;;;;;;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;:::i;:::-;;3091:28;;;;;;;;;;;;;:13;3105:8;3091:23;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3091:23:27;;;;;;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;:::i;:::-;;3165:5;:15;3171:8;3165:15;;;;;;;;;;;;;;;;;3154:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3215:20;;;;;;;;;;;;;:5;:15;3221:8;3215:15;;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;:::i;:::-;;3284:8;3274:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3274:19:27;;;;;;;;;;;;;;;;3263:30;;2944:354;;;3343:14;;;;;;;;;;;;;;;;;;3317:5;:23;140:3;3323:16;;3317:23;;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;:::i;:::-;;3408:8;:28;312:3;3417:18;;3408:28;;;;;;;;;;;;;;;;;;;;;;;;;;;3387:49;;3440:331;312:3;3461:18;;3446:33;;;:11;:33;;;;;3440:331;;;3510:11;3486:35;;3557:15;3526:12;:28;3539:14;3526:28;;;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;;;;;;;3577:39;;;;;;;;;;;;;:15;:31;3593:14;3577:31;;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;:::i;:::-;;3621:37;;;;;;;;;;;;;:16;:32;3638:14;3621:32;;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;:::i;:::-;;3677:8;:24;3686:14;3677:24;;;;;;;;;;;;;;;;;;;;;;;;;;;3663:38;;3763:3;3736:30;;:8;:24;3745:14;3736:24;;;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;;3440:331;;;312:3;3821:18;;3790:8;:28;312:3;3799:18;;3790:28;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;;2767:1076;;;;:::o;268:47::-;312:3;268:47;;;:::o;1608:149::-;1686:15;1668:9;1678:4;1668:15;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1668:15:27;;;;;;;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;;;;;;;1726:8;1705:12;1718:4;1705:18;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1705:18:27;;;;;;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;:::i;:::-;;1738:15;1748:4;1738:9;:15::i;:::-;1608:149;;:::o;821:203::-;864:16;893:4;883:15;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;883:15:27;;;;;;;;;;;;;;;;864:34;;932:1;906:5;:15;912:8;906:15;;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;:27;902:119;;;958:5;:23;140:3;964:16;;958:23;;;;;;;;;;;;;;;;;940:5;:15;946:8;940:15;;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1012:4;986:5;:23;140:3;992:16;;986:23;;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;:::i;:::-;;902:119;821:203;;:::o;1027:188::-;1104:3;1082:25;;:8;:18;1091:8;1082:18;;;;;;;;;;;;;;;;;;;;;;;;;;;:25;;;;1078:134;;;1135:8;:28;312:3;1144:18;;1135:28;;;;;;;;;;;;;;;;;;;;;;;;;;;1114:8;:18;1123:8;1114:18;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;;1199:8;1168;:28;312:3;1177:18;;1168:28;;;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;;1078:134;1027:188;:::o;26:4585::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
|
|
"source": "pragma solidity ^0.4.23;\n\ncontract MockContract {\n\tenum MockType { Return, Revert, OutOfGas }\n\t\n\tbytes32 public constant MOCKS_LIST_START = 0x1;\n\tbytes public constant MOCKS_LIST_END = \"0xff\";\n\tbytes32 public constant MOCKS_LIST_END_HASH = keccak256(MOCKS_LIST_END);\n\tbytes4 public constant SENTINEL_ANY_MOCKS = 0x1;\n\n\t// A linked list allows easy iteration and inclusion checks\n\tmapping(bytes32 => bytes) mocks;\n\tmapping(bytes => MockType) mockTypes;\n\tmapping(bytes => bytes) expectations;\n\tmapping(bytes => string) revertMessage;\n\n\tmapping(bytes4 => bytes4) anyMocks;\n\tmapping(bytes4 => MockType) mockTypesAny;\n\tmapping(bytes4 => bytes) expectationsAny;\n\tmapping(bytes4 => string) revertMessageAny;\n\n\tconstructor() {\n\t\tmocks[MOCKS_LIST_START] = MOCKS_LIST_END;\n\t\tanyMocks[SENTINEL_ANY_MOCKS] = SENTINEL_ANY_MOCKS;\n\t}\n\n\tfunction trackMock(bytes call) private {\n\t\tbytes32 callHash = keccak256(call);\n\t\tif (mocks[callHash].length == 0) {\n\t\t\tmocks[callHash] = mocks[MOCKS_LIST_START];\n\t\t\tmocks[MOCKS_LIST_START] = call;\n\t\t}\n\t}\n\n\tfunction trackAnyMock(bytes4 methodId) private {\n\t\tif (anyMocks[methodId] == 0x0) {\n\t\t\tanyMocks[methodId] = anyMocks[SENTINEL_ANY_MOCKS];\n\t\t\tanyMocks[SENTINEL_ANY_MOCKS] = methodId;\n\t\t}\n\t}\n\n\t/**\n\t * @dev Stores a response that the contract will return if the fallback function is called with the given method name and matching arguments.\n\t * @param call ABI encoded calldata that if invoked on this contract will return `response`. Parameter values need to match exactly.\n\t * @param response ABI encoded response that will be returned if this contract is invoked with `call`\n\t */\n\tfunction givenReturn(bytes call, bytes response) public {\n\t\tmockTypes[call] = MockType.Return;\n\t\texpectations[call] = response;\n\t\ttrackMock(call);\n\t}\n\n\tfunction givenReturnAny(bytes4 method, bytes response) public {\n\t\tmockTypesAny[method] = MockType.Return;\n\t\texpectationsAny[method] = response;\n\t\ttrackAnyMock(method);\t\t\n\t}\n\n\tfunction givenRevert(bytes call) public {\n\t\tmockTypes[call] = MockType.Revert;\n\t\trevertMessage[call] = \"\";\n\t\ttrackMock(call);\n\t}\n\n\tfunction givenRevertAny(bytes4 method) public {\n\t\tmockTypesAny[method] = MockType.Revert;\n\t\ttrackAnyMock(method);\t\t\n\t}\n\n\tfunction givenRevertWithMessage(bytes call, string message) public {\n\t\tmockTypes[call] = MockType.Revert;\n\t\trevertMessage[call] = message;\n\t\ttrackMock(call);\n\t}\n\n\tfunction givenRevertAnyWithMessage(bytes4 method, string message) public {\n\t\tmockTypesAny[method] = MockType.Revert;\n\t\trevertMessageAny[method] = message;\n\t\ttrackAnyMock(method);\t\t\n\t}\n\n\tfunction givenOutOfGas(bytes call) public {\n\t\tmockTypes[call] = MockType.OutOfGas;\n\t\ttrackMock(call);\n\t}\n\n\tfunction givenOutOfGasAny(bytes4 method) public {\n\t\tmockTypesAny[method] = MockType.OutOfGas;\n\t\ttrackAnyMock(method);\t\n\t}\n\n\tfunction reset() public {\n\t\t// Reset all exact mocks\n\t\tbytes memory nextMock = mocks[MOCKS_LIST_START];\n\t\tbytes32 mockHash = keccak256(nextMock);\n\t\t// We cannot compary bytes\n\t\twhile(mockHash != MOCKS_LIST_END_HASH) {\n\t\t\t// Reset all mock maps\n\t\t\tmockTypes[nextMock] = MockType.Return;\n\t\t\texpectations[nextMock] = hex\"\";\n\t\t\trevertMessage[nextMock] = \"\";\n\t\t\t// Set next mock to remove\n\t\t\tnextMock = mocks[mockHash];\n\t\t\t// Remove from linked list\n\t\t\tmocks[mockHash] = \"\";\n\t\t\t// Update mock hash\n\t\t\tmockHash = keccak256(nextMock);\n\t\t}\n\t\t// Clear list\n\t\tmocks[MOCKS_LIST_START] = MOCKS_LIST_END;\n\n\t\t// Reset all any mocks\n\t\tbytes4 nextAnyMock = anyMocks[SENTINEL_ANY_MOCKS];\n\t\twhile(nextAnyMock != SENTINEL_ANY_MOCKS) {\n\t\t\tbytes4 currentAnyMock = nextAnyMock;\n\t\t\tmockTypesAny[currentAnyMock] = MockType.Return;\n\t\t\texpectationsAny[currentAnyMock] = hex\"\";\n\t\t\trevertMessageAny[currentAnyMock] = \"\";\n\t\t\tnextAnyMock = anyMocks[currentAnyMock];\n\t\t\t// Remove from linked list\n\t\t\tanyMocks[currentAnyMock] = 0x0;\n\t\t}\n\t\t// Clear list\n\t\tanyMocks[SENTINEL_ANY_MOCKS] = SENTINEL_ANY_MOCKS;\n\t}\n\n\tfunction useAllGas() private {\n\t\twhile(true) {\n\t\t\tassembly {\n\t\t\t\tsstore(sload(0x40), 1)\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction() payable public {\n\t\tbytes4 methodId;\n\t\tassembly {\n\t\t\tmethodId := calldataload(0)\n\t\t}\n\t\tif (mockTypes[msg.data] == MockType.Revert) {\n\t\t\trevert(revertMessage[msg.data]);\n\t\t}\n\t\tif (mockTypes[msg.data] == MockType.OutOfGas) {\n\t\t\tuseAllGas();\n\t\t}\n\t\tbytes memory result = expectations[msg.data];\n\n\t\t// Check any mocks if there is no expected result\n\t\tif (result.length == 0) {\n\t\t\tif (mockTypesAny[methodId] == MockType.Revert) {\n\t\t\t\trevert(revertMessageAny[methodId]);\n\t\t\t}\n\t\t\tif (mockTypesAny[methodId] == MockType.OutOfGas) {\n\t\t\t\tuseAllGas();\n\t\t\t}\n\t\t\tresult = expectationsAny[methodId];\n\t\t}\n\t\tassembly {\n\t\t\treturn(add(0x20, result), mload(result))\n\t\t}\n\t}\n}\n",
|
|
"sourcePath": "@gnosis.pm/mock-contract/contracts/MockContract.sol",
|
|
"ast": {
|
|
"absolutePath": "@gnosis.pm/mock-contract/contracts/MockContract.sol",
|
|
"exportedSymbols": {
|
|
"MockContract": [
|
|
4476
|
|
]
|
|
},
|
|
"id": 4477,
|
|
"nodeType": "SourceUnit",
|
|
"nodes": [
|
|
{
|
|
"id": 3969,
|
|
"literals": [
|
|
"solidity",
|
|
"^",
|
|
"0.4",
|
|
".23"
|
|
],
|
|
"nodeType": "PragmaDirective",
|
|
"src": "0:24:27"
|
|
},
|
|
{
|
|
"baseContracts": [],
|
|
"contractDependencies": [],
|
|
"contractKind": "contract",
|
|
"documentation": null,
|
|
"fullyImplemented": true,
|
|
"id": 4476,
|
|
"linearizedBaseContracts": [
|
|
4476
|
|
],
|
|
"name": "MockContract",
|
|
"nodeType": "ContractDefinition",
|
|
"nodes": [
|
|
{
|
|
"canonicalName": "MockContract.MockType",
|
|
"id": 3973,
|
|
"members": [
|
|
{
|
|
"id": 3970,
|
|
"name": "Return",
|
|
"nodeType": "EnumValue",
|
|
"src": "67:6:27"
|
|
},
|
|
{
|
|
"id": 3971,
|
|
"name": "Revert",
|
|
"nodeType": "EnumValue",
|
|
"src": "75:6:27"
|
|
},
|
|
{
|
|
"id": 3972,
|
|
"name": "OutOfGas",
|
|
"nodeType": "EnumValue",
|
|
"src": "83:8:27"
|
|
}
|
|
],
|
|
"name": "MockType",
|
|
"nodeType": "EnumDefinition",
|
|
"src": "51:42:27"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3976,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "97:46:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3974,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "97:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307831",
|
|
"id": 3975,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "140:3:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "0x1"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3979,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "146:45:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3977,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "146:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30786666",
|
|
"id": 3978,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "185:6:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_420daffad4b177bce28bead5f76f7bc97ef63c3aae74c496db8ce6aafe9e6513",
|
|
"typeString": "literal_string \"0xff\""
|
|
},
|
|
"value": "0xff"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3984,
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "194:71:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3980,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "194:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3982,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3979,
|
|
"src": "250:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3981,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4485,
|
|
"src": "240:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3983,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "240:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3987,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "268:47:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3985,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "268:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307831",
|
|
"id": 3986,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "312:3:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "0x1"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3991,
|
|
"name": "mocks",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "380:31:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3990,
|
|
"keyType": {
|
|
"id": 3988,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "388:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "380:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3989,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "399:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3995,
|
|
"name": "mockTypes",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "414:36:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes => enum MockContract.MockType)"
|
|
},
|
|
"typeName": {
|
|
"id": 3994,
|
|
"keyType": {
|
|
"id": 3992,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "422:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "414:26:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes => enum MockContract.MockType)"
|
|
},
|
|
"valueType": {
|
|
"contractScope": null,
|
|
"id": 3993,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3973,
|
|
"src": "431:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3999,
|
|
"name": "expectations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "453:36:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3998,
|
|
"keyType": {
|
|
"id": 3996,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "461:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "453:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3997,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "470:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4003,
|
|
"name": "revertMessage",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "492:38:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes => string)"
|
|
},
|
|
"typeName": {
|
|
"id": 4002,
|
|
"keyType": {
|
|
"id": 4000,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "500:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "492:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes => string)"
|
|
},
|
|
"valueType": {
|
|
"id": 4001,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "509:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4007,
|
|
"name": "anyMocks",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "534:34:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
},
|
|
"typeName": {
|
|
"id": 4006,
|
|
"keyType": {
|
|
"id": 4004,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "542:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "534:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
},
|
|
"valueType": {
|
|
"id": 4005,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "552:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4011,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "571:40:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
},
|
|
"typeName": {
|
|
"id": 4010,
|
|
"keyType": {
|
|
"id": 4008,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "579:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "571:27:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
},
|
|
"valueType": {
|
|
"contractScope": null,
|
|
"id": 4009,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3973,
|
|
"src": "589:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4015,
|
|
"name": "expectationsAny",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "614:40:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 4014,
|
|
"keyType": {
|
|
"id": 4012,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "622:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "614:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 4013,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "632:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4019,
|
|
"name": "revertMessageAny",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "657:42:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string)"
|
|
},
|
|
"typeName": {
|
|
"id": 4018,
|
|
"keyType": {
|
|
"id": 4016,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "665:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "657:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string)"
|
|
},
|
|
"valueType": {
|
|
"id": 4017,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "675:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4034,
|
|
"nodeType": "Block",
|
|
"src": "717:101:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4026,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4022,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "721:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4024,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4023,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "727:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "721:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4025,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3979,
|
|
"src": "747:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "721:40:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4027,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "721:40:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4032,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4028,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "765:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4030,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4029,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "774:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "765:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4031,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "796:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "765:49:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4033,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "765:49:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4035,
|
|
"implemented": true,
|
|
"isConstructor": true,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4020,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "714:2:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4021,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "717:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "703:115:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4068,
|
|
"nodeType": "Block",
|
|
"src": "860:164:27",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
4041
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4041,
|
|
"name": "callHash",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4069,
|
|
"src": "864:16:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 4040,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "864:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4045,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4043,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4037,
|
|
"src": "893:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4042,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4485,
|
|
"src": "883:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 4044,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "883:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "864:34:27"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 4051,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4046,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "906:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4048,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4047,
|
|
"name": "callHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4041,
|
|
"src": "912:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "906:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4049,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "906:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 4050,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "932:1:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "906:27:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4067,
|
|
"nodeType": "IfStatement",
|
|
"src": "902:119:27",
|
|
"trueBody": {
|
|
"id": 4066,
|
|
"nodeType": "Block",
|
|
"src": "935:86:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4058,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4052,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "940:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4054,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4053,
|
|
"name": "callHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4041,
|
|
"src": "946:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "940:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4055,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "958:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4057,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4056,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "964:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "958:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "940:41:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4059,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "940:41:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4064,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4060,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "986:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4062,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4061,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "992:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "986:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4063,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4037,
|
|
"src": "1012:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "986:30:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4065,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "986:30:27"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4069,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "trackMock",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4038,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4037,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4069,
|
|
"src": "840:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4036,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "840:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "839:12:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4039,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "860:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "821:203:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4095,
|
|
"nodeType": "Block",
|
|
"src": "1074:141:27",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 4078,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4074,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "1082:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4076,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4075,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4071,
|
|
"src": "1091:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1082:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307830",
|
|
"id": 4077,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "1104:3:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0x0"
|
|
},
|
|
"src": "1082:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4094,
|
|
"nodeType": "IfStatement",
|
|
"src": "1078:134:27",
|
|
"trueBody": {
|
|
"id": 4093,
|
|
"nodeType": "Block",
|
|
"src": "1109:103:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4085,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4079,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "1114:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4081,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4080,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4071,
|
|
"src": "1123:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1114:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4082,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "1135:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4084,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4083,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "1144:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1135:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "1114:49:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4086,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1114:49:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4091,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4087,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "1168:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4089,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4088,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "1177:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1168:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4090,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4071,
|
|
"src": "1199:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "1168:39:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4092,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1168:39:27"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4096,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "trackAnyMock",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4072,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4071,
|
|
"name": "methodId",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4096,
|
|
"src": "1049:15:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4070,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1049:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1048:17:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4073,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1074:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "1027:188:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4120,
|
|
"nodeType": "Block",
|
|
"src": "1664:93:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4108,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4103,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "1668:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4105,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4104,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4098,
|
|
"src": "1678:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1668:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4106,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "1686:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4107,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "1686:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "1668:33:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4109,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1668:33:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4114,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4110,
|
|
"name": "expectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3999,
|
|
"src": "1705:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4112,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4111,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4098,
|
|
"src": "1718:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1705:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4113,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4100,
|
|
"src": "1726:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "1705:29:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4115,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1705:29:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4117,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4098,
|
|
"src": "1748:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4116,
|
|
"name": "trackMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4069,
|
|
"src": "1738:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 4118,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1738:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4119,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1738:15:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": "@dev Stores a response that the contract will return if the fallback function is called with the given method name and matching arguments.\n@param call ABI encoded calldata that if invoked on this contract will return `response`. Parameter values need to match exactly.\n@param response ABI encoded response that will be returned if this contract is invoked with `call`",
|
|
"id": 4121,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4101,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4098,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4121,
|
|
"src": "1629:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4097,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1629:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4100,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4121,
|
|
"src": "1641:14:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4099,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1641:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1628:28:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4102,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1664:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "1608:149:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4145,
|
|
"nodeType": "Block",
|
|
"src": "1822:110:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4133,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4128,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "1826:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4130,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4129,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4123,
|
|
"src": "1839:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1826:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4131,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "1849:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4132,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "1849:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "1826:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4134,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1826:38:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4139,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4135,
|
|
"name": "expectationsAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "1868:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4137,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4136,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4123,
|
|
"src": "1884:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1868:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4138,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4125,
|
|
"src": "1894:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "1868:34:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4140,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1868:34:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4142,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4123,
|
|
"src": "1919:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 4141,
|
|
"name": "trackAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4096,
|
|
"src": "1906:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 4143,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1906:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4144,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1906:20:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4146,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenReturnAny",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4126,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4123,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4146,
|
|
"src": "1784:13:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4122,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1784:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4125,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4146,
|
|
"src": "1799:14:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4124,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1799:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1783:31:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4127,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1822:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "1760:172:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4168,
|
|
"nodeType": "Block",
|
|
"src": "1975:88:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4156,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4151,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "1979:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4153,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4152,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4148,
|
|
"src": "1989:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1979:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4154,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "1997:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4155,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "1997:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "1979:33:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4157,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1979:33:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4162,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4158,
|
|
"name": "revertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4003,
|
|
"src": "2016:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4160,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4159,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4148,
|
|
"src": "2030:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2016:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4161,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2038:2:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "2016:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4163,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2016:24:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4165,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4148,
|
|
"src": "2054:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4164,
|
|
"name": "trackMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4069,
|
|
"src": "2044:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 4166,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2044:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4167,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2044:15:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4169,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4149,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4148,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4169,
|
|
"src": "1956:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4147,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1956:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1955:12:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4150,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1975:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "1935:128:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4185,
|
|
"nodeType": "Block",
|
|
"src": "2112:72:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4179,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4174,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "2116:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4176,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4175,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4171,
|
|
"src": "2129:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2116:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4177,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2139:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4178,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2139:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2116:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4180,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2116:38:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4182,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4171,
|
|
"src": "2171:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 4181,
|
|
"name": "trackAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4096,
|
|
"src": "2158:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 4183,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2158:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4184,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2158:20:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4186,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenRevertAny",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4172,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4171,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4186,
|
|
"src": "2090:13:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4170,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2090:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2089:15:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4173,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2112:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2066:118:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4210,
|
|
"nodeType": "Block",
|
|
"src": "2254:93:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4198,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4193,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "2258:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4195,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4194,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4188,
|
|
"src": "2268:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2258:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4196,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2276:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4197,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2276:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2258:33:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4199,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2258:33:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4204,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4200,
|
|
"name": "revertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4003,
|
|
"src": "2295:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4202,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4201,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4188,
|
|
"src": "2309:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2295:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4203,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4190,
|
|
"src": "2317:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
},
|
|
"src": "2295:29:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4205,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2295:29:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4207,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4188,
|
|
"src": "2338:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4206,
|
|
"name": "trackMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4069,
|
|
"src": "2328:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 4208,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2328:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4209,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2328:15:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4211,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4191,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4188,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4211,
|
|
"src": "2219:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4187,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2219:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4190,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4211,
|
|
"src": "2231:14:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 4189,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2231:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2218:28:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4192,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2254:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2187:160:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4235,
|
|
"nodeType": "Block",
|
|
"src": "2423:110:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4223,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4218,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "2427:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4220,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4219,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4213,
|
|
"src": "2440:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2427:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4221,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2450:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4222,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2450:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2427:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4224,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2427:38:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4229,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4225,
|
|
"name": "revertMessageAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4019,
|
|
"src": "2469:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4227,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4226,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4213,
|
|
"src": "2486:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2469:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4228,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4215,
|
|
"src": "2496:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
},
|
|
"src": "2469:34:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4230,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2469:34:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4232,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4213,
|
|
"src": "2520:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 4231,
|
|
"name": "trackAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4096,
|
|
"src": "2507:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 4233,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2507:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4234,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2507:20:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4236,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenRevertAnyWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4216,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4213,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4236,
|
|
"src": "2385:13:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4212,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2385:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4215,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4236,
|
|
"src": "2400:14:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 4214,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2400:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2384:31:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4217,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2423:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2350:183:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4252,
|
|
"nodeType": "Block",
|
|
"src": "2578:62:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4246,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4241,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "2582:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4243,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4242,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4238,
|
|
"src": "2592:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2582:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4244,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2600:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4245,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2600:17:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2582:35:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4247,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2582:35:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4249,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4238,
|
|
"src": "2631:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4248,
|
|
"name": "trackMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4069,
|
|
"src": "2621:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 4250,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2621:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4251,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2621:15:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4253,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4239,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4238,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4253,
|
|
"src": "2559:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4237,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2559:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2558:12:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4240,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2578:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2536:104:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4269,
|
|
"nodeType": "Block",
|
|
"src": "2691:73:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4263,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4258,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "2695:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4260,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4259,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4255,
|
|
"src": "2708:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2695:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4261,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2718:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4262,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2718:17:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2695:40:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4264,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2695:40:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4266,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4255,
|
|
"src": "2752:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 4265,
|
|
"name": "trackAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4096,
|
|
"src": "2739:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 4267,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2739:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4268,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2739:20:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4270,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenOutOfGasAny",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4256,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4255,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4270,
|
|
"src": "2669:13:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4254,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2669:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2668:15:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4257,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2691:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2643:121:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4385,
|
|
"nodeType": "Block",
|
|
"src": "2791:1052:27",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
4274
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4274,
|
|
"name": "nextMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4386,
|
|
"src": "2822:21:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4273,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2822:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4278,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4275,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "2846:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4277,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4276,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "2852:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2846:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "2822:47:27"
|
|
},
|
|
{
|
|
"assignments": [
|
|
4280
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4280,
|
|
"name": "mockHash",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4386,
|
|
"src": "2873:16:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 4279,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2873:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4284,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4282,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "2902:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4281,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4485,
|
|
"src": "2892:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 4283,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2892:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "2873:38:27"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4325,
|
|
"nodeType": "Block",
|
|
"src": "2983:315:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4293,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4288,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "3014:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4290,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4289,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3024:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3014:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4291,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "3036:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4292,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "3036:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "3014:37:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4294,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3014:37:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4299,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4295,
|
|
"name": "expectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3999,
|
|
"src": "3056:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4297,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4296,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3069:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3056:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4298,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3081:5:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3056:30:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4300,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3056:30:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4305,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4301,
|
|
"name": "revertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4003,
|
|
"src": "3091:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4303,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4302,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3105:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3091:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4304,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3117:2:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3091:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4306,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3091:28:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4311,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4307,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3154:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4308,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "3165:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4310,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4309,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4280,
|
|
"src": "3171:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3165:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "3154:26:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 4312,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3154:26:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4317,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4313,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "3215:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4315,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4314,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4280,
|
|
"src": "3221:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3215:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4316,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3233:2:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3215:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4318,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3215:20:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4323,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4319,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4280,
|
|
"src": "3263:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4321,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3284:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4320,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4485,
|
|
"src": "3274:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 4322,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3274:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "3263:30:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 4324,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3263:30:27"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 4287,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4285,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4280,
|
|
"src": "2950:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4286,
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3984,
|
|
"src": "2962:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "2950:31:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 4326,
|
|
"nodeType": "WhileStatement",
|
|
"src": "2944:354:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4331,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4327,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "3317:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4329,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4328,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "3323:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3317:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4330,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3979,
|
|
"src": "3343:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "3317:40:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4332,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3317:40:27"
|
|
},
|
|
{
|
|
"assignments": [
|
|
4334
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4334,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4386,
|
|
"src": "3387:18:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4333,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3387:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4338,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4335,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "3408:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4337,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4336,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "3417:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3408:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "3387:49:27"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4377,
|
|
"nodeType": "Block",
|
|
"src": "3481:290:27",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
4343
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4343,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4386,
|
|
"src": "3486:21:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4342,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3486:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4345,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"id": 4344,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4334,
|
|
"src": "3510:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "3486:35:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4351,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4346,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "3526:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4348,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4347,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3539:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3526:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4349,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "3557:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4350,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "3557:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "3526:46:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4352,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3526:46:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4357,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4353,
|
|
"name": "expectationsAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "3577:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4355,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4354,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3593:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3577:31:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4356,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3611:5:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3577:39:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4358,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3577:39:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4363,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4359,
|
|
"name": "revertMessageAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4019,
|
|
"src": "3621:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4361,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4360,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3638:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3621:32:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4362,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3656:2:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3621:37:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4364,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3621:37:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4369,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4365,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4334,
|
|
"src": "3663:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4366,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "3677:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4368,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4367,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3686:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3677:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "3663:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4370,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3663:38:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4375,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4371,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "3736:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4373,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4372,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3745:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3736:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307830",
|
|
"id": 4374,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3763:3:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0x0"
|
|
},
|
|
"src": "3736:30:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4376,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3736:30:27"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 4341,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4339,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4334,
|
|
"src": "3446:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4340,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "3461:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "3446:33:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 4378,
|
|
"nodeType": "WhileStatement",
|
|
"src": "3440:331:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4383,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4379,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "3790:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4381,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4380,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "3799:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3790:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4382,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "3821:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "3790:49:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4384,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3790:49:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4386,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "reset",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4271,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2781:2:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4272,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2791:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2767:1076:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4393,
|
|
"nodeType": "Block",
|
|
"src": "3875:70:27",
|
|
"statements": [
|
|
{
|
|
"body": {
|
|
"id": 4391,
|
|
"nodeType": "Block",
|
|
"src": "3891:51:27",
|
|
"statements": [
|
|
{
|
|
"externalReferences": [],
|
|
"id": 4390,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n sstore(sload(0x40), 1)\n}",
|
|
"src": "3896:46:27"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"hexValue": "74727565",
|
|
"id": 4389,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3885:4:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "true"
|
|
},
|
|
"id": 4392,
|
|
"nodeType": "WhileStatement",
|
|
"src": "3879:63:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4394,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "useAllGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4387,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3864:2:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4388,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3875:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "3846:99:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4474,
|
|
"nodeType": "Block",
|
|
"src": "3974:635:27",
|
|
"statements": [
|
|
{
|
|
"assignments": [],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4398,
|
|
"name": "methodId",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4475,
|
|
"src": "3978:15:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4397,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3978:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4399,
|
|
"initialValue": null,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "3978:15:27"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"methodId": {
|
|
"declaration": 4398,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "4011:8:27",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 4400,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n methodId := calldataload(0)\n}",
|
|
"src": "3997:50:27"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 4407,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4401,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "4049:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4404,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4402,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4491,
|
|
"src": "4059:3:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 4403,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4059:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4049:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4405,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "4072:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4406,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4072:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "4049:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4416,
|
|
"nodeType": "IfStatement",
|
|
"src": "4045:85:27",
|
|
"trueBody": {
|
|
"id": 4415,
|
|
"nodeType": "Block",
|
|
"src": "4089:41:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4409,
|
|
"name": "revertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4003,
|
|
"src": "4101:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4412,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4410,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4491,
|
|
"src": "4115:3:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 4411,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4115:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4101:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 4408,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4496,
|
|
4497
|
|
],
|
|
"referencedDeclaration": 4497,
|
|
"src": "4094:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 4413,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4094:31:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4414,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4094:31:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 4423,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4417,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "4137:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4420,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4418,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4491,
|
|
"src": "4147:3:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 4419,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4147:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4137:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4421,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "4160:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4422,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4160:17:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "4137:40:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4428,
|
|
"nodeType": "IfStatement",
|
|
"src": "4133:67:27",
|
|
"trueBody": {
|
|
"id": 4427,
|
|
"nodeType": "Block",
|
|
"src": "4179:21:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 4424,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4394,
|
|
"src": "4184:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 4425,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4184:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4426,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4184:11:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"assignments": [
|
|
4430
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4430,
|
|
"name": "result",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4475,
|
|
"src": "4203:19:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4429,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4203:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4435,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4431,
|
|
"name": "expectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3999,
|
|
"src": "4225:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4434,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4432,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4491,
|
|
"src": "4238:3:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 4433,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4238:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4225:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "4203:44:27"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 4439,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4436,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4430,
|
|
"src": "4308:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 4437,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4308:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 4438,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "4325:1:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "4308:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4472,
|
|
"nodeType": "IfStatement",
|
|
"src": "4304:241:27",
|
|
"trueBody": {
|
|
"id": 4471,
|
|
"nodeType": "Block",
|
|
"src": "4328:217:27",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 4445,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4440,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "4337:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4442,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4441,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4398,
|
|
"src": "4350:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4337:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4443,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "4363:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4444,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4363:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "4337:41:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4453,
|
|
"nodeType": "IfStatement",
|
|
"src": "4333:93:27",
|
|
"trueBody": {
|
|
"id": 4452,
|
|
"nodeType": "Block",
|
|
"src": "4380:46:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4447,
|
|
"name": "revertMessageAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4019,
|
|
"src": "4393:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4449,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4448,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4398,
|
|
"src": "4410:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4393:26:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 4446,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4496,
|
|
4497
|
|
],
|
|
"referencedDeclaration": 4497,
|
|
"src": "4386:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 4450,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4386:34:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4451,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4386:34:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 4459,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4454,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "4434:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4456,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4455,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4398,
|
|
"src": "4447:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4434:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4457,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "4460:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4458,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4460:17:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "4434:43:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4464,
|
|
"nodeType": "IfStatement",
|
|
"src": "4430:72:27",
|
|
"trueBody": {
|
|
"id": 4463,
|
|
"nodeType": "Block",
|
|
"src": "4479:23:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 4460,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4394,
|
|
"src": "4485:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 4461,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4485:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4462,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4485:11:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4469,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4465,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4430,
|
|
"src": "4506:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4466,
|
|
"name": "expectationsAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "4515:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4468,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4467,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4398,
|
|
"src": "4531:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4515:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "4506:34:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 4470,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4506:34:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"result": {
|
|
"declaration": 4430,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "4579:6:27",
|
|
"valueSize": 1
|
|
}
|
|
},
|
|
{
|
|
"result": {
|
|
"declaration": 4430,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "4594:6:27",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 4473,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n return(add(0x20, result), mload(result))\n}",
|
|
"src": "4548:61:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4475,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4395,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3956:2:27"
|
|
},
|
|
"payable": true,
|
|
"returnParameters": {
|
|
"id": 4396,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3974:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "3948:661:27",
|
|
"stateMutability": "payable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
}
|
|
],
|
|
"scope": 4477,
|
|
"src": "26:4585:27"
|
|
}
|
|
],
|
|
"src": "0:4612:27"
|
|
},
|
|
"legacyAST": {
|
|
"absolutePath": "@gnosis.pm/mock-contract/contracts/MockContract.sol",
|
|
"exportedSymbols": {
|
|
"MockContract": [
|
|
4476
|
|
]
|
|
},
|
|
"id": 4477,
|
|
"nodeType": "SourceUnit",
|
|
"nodes": [
|
|
{
|
|
"id": 3969,
|
|
"literals": [
|
|
"solidity",
|
|
"^",
|
|
"0.4",
|
|
".23"
|
|
],
|
|
"nodeType": "PragmaDirective",
|
|
"src": "0:24:27"
|
|
},
|
|
{
|
|
"baseContracts": [],
|
|
"contractDependencies": [],
|
|
"contractKind": "contract",
|
|
"documentation": null,
|
|
"fullyImplemented": true,
|
|
"id": 4476,
|
|
"linearizedBaseContracts": [
|
|
4476
|
|
],
|
|
"name": "MockContract",
|
|
"nodeType": "ContractDefinition",
|
|
"nodes": [
|
|
{
|
|
"canonicalName": "MockContract.MockType",
|
|
"id": 3973,
|
|
"members": [
|
|
{
|
|
"id": 3970,
|
|
"name": "Return",
|
|
"nodeType": "EnumValue",
|
|
"src": "67:6:27"
|
|
},
|
|
{
|
|
"id": 3971,
|
|
"name": "Revert",
|
|
"nodeType": "EnumValue",
|
|
"src": "75:6:27"
|
|
},
|
|
{
|
|
"id": 3972,
|
|
"name": "OutOfGas",
|
|
"nodeType": "EnumValue",
|
|
"src": "83:8:27"
|
|
}
|
|
],
|
|
"name": "MockType",
|
|
"nodeType": "EnumDefinition",
|
|
"src": "51:42:27"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3976,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "97:46:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3974,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "97:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307831",
|
|
"id": 3975,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "140:3:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "0x1"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3979,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "146:45:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 3977,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "146:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30786666",
|
|
"id": 3978,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "185:6:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_420daffad4b177bce28bead5f76f7bc97ef63c3aae74c496db8ce6aafe9e6513",
|
|
"typeString": "literal_string \"0xff\""
|
|
},
|
|
"value": "0xff"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3984,
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "194:71:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 3980,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "194:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 3982,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3979,
|
|
"src": "250:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 3981,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4485,
|
|
"src": "240:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 3983,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "240:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": true,
|
|
"id": 3987,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "268:47:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 3985,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "268:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307831",
|
|
"id": 3986,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "312:3:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "0x1"
|
|
},
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3991,
|
|
"name": "mocks",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "380:31:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3990,
|
|
"keyType": {
|
|
"id": 3988,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "388:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "380:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3989,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "399:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3995,
|
|
"name": "mockTypes",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "414:36:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes => enum MockContract.MockType)"
|
|
},
|
|
"typeName": {
|
|
"id": 3994,
|
|
"keyType": {
|
|
"id": 3992,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "422:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "414:26:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes => enum MockContract.MockType)"
|
|
},
|
|
"valueType": {
|
|
"contractScope": null,
|
|
"id": 3993,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3973,
|
|
"src": "431:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 3999,
|
|
"name": "expectations",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "453:36:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 3998,
|
|
"keyType": {
|
|
"id": 3996,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "461:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "453:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 3997,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "470:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4003,
|
|
"name": "revertMessage",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "492:38:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes => string)"
|
|
},
|
|
"typeName": {
|
|
"id": 4002,
|
|
"keyType": {
|
|
"id": 4000,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "500:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "492:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes => string)"
|
|
},
|
|
"valueType": {
|
|
"id": 4001,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "509:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4007,
|
|
"name": "anyMocks",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "534:34:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
},
|
|
"typeName": {
|
|
"id": 4006,
|
|
"keyType": {
|
|
"id": 4004,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "542:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "534:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
},
|
|
"valueType": {
|
|
"id": 4005,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "552:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4011,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "571:40:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
},
|
|
"typeName": {
|
|
"id": 4010,
|
|
"keyType": {
|
|
"id": 4008,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "579:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "571:27:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
},
|
|
"valueType": {
|
|
"contractScope": null,
|
|
"id": 4009,
|
|
"name": "MockType",
|
|
"nodeType": "UserDefinedTypeName",
|
|
"referencedDeclaration": 3973,
|
|
"src": "589:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4015,
|
|
"name": "expectationsAny",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "614:40:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes)"
|
|
},
|
|
"typeName": {
|
|
"id": 4014,
|
|
"keyType": {
|
|
"id": 4012,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "622:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "614:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes)"
|
|
},
|
|
"valueType": {
|
|
"id": 4013,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "632:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4019,
|
|
"name": "revertMessageAny",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4476,
|
|
"src": "657:42:27",
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string)"
|
|
},
|
|
"typeName": {
|
|
"id": 4018,
|
|
"keyType": {
|
|
"id": 4016,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "665:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "657:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string)"
|
|
},
|
|
"valueType": {
|
|
"id": 4017,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "675:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4034,
|
|
"nodeType": "Block",
|
|
"src": "717:101:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4026,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4022,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "721:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4024,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4023,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "727:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "721:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4025,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3979,
|
|
"src": "747:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "721:40:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4027,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "721:40:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4032,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4028,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "765:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4030,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4029,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "774:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "765:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4031,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "796:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "765:49:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4033,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "765:49:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4035,
|
|
"implemented": true,
|
|
"isConstructor": true,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4020,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "714:2:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4021,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "717:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "703:115:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4068,
|
|
"nodeType": "Block",
|
|
"src": "860:164:27",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
4041
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4041,
|
|
"name": "callHash",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4069,
|
|
"src": "864:16:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 4040,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "864:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4045,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4043,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4037,
|
|
"src": "893:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4042,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4485,
|
|
"src": "883:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 4044,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "883:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "864:34:27"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 4051,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4046,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "906:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4048,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4047,
|
|
"name": "callHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4041,
|
|
"src": "912:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "906:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4049,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "906:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 4050,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "932:1:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "906:27:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4067,
|
|
"nodeType": "IfStatement",
|
|
"src": "902:119:27",
|
|
"trueBody": {
|
|
"id": 4066,
|
|
"nodeType": "Block",
|
|
"src": "935:86:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4058,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4052,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "940:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4054,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4053,
|
|
"name": "callHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4041,
|
|
"src": "946:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "940:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4055,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "958:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4057,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4056,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "964:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "958:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "940:41:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4059,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "940:41:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4064,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4060,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "986:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4062,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4061,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "992:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "986:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4063,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4037,
|
|
"src": "1012:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "986:30:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4065,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "986:30:27"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4069,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "trackMock",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4038,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4037,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4069,
|
|
"src": "840:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4036,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "840:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "839:12:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4039,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "860:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "821:203:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4095,
|
|
"nodeType": "Block",
|
|
"src": "1074:141:27",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 4078,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4074,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "1082:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4076,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4075,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4071,
|
|
"src": "1091:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1082:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307830",
|
|
"id": 4077,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "1104:3:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0x0"
|
|
},
|
|
"src": "1082:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4094,
|
|
"nodeType": "IfStatement",
|
|
"src": "1078:134:27",
|
|
"trueBody": {
|
|
"id": 4093,
|
|
"nodeType": "Block",
|
|
"src": "1109:103:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4085,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4079,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "1114:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4081,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4080,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4071,
|
|
"src": "1123:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1114:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4082,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "1135:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4084,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4083,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "1144:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1135:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "1114:49:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4086,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1114:49:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4091,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4087,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "1168:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4089,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4088,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "1177:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1168:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4090,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4071,
|
|
"src": "1199:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "1168:39:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4092,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1168:39:27"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4096,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "trackAnyMock",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4072,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4071,
|
|
"name": "methodId",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4096,
|
|
"src": "1049:15:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4070,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1049:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1048:17:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4073,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1074:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "1027:188:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4120,
|
|
"nodeType": "Block",
|
|
"src": "1664:93:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4108,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4103,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "1668:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4105,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4104,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4098,
|
|
"src": "1678:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1668:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4106,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "1686:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4107,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "1686:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "1668:33:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4109,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1668:33:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4114,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4110,
|
|
"name": "expectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3999,
|
|
"src": "1705:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4112,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4111,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4098,
|
|
"src": "1718:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1705:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4113,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4100,
|
|
"src": "1726:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "1705:29:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4115,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1705:29:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4117,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4098,
|
|
"src": "1748:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4116,
|
|
"name": "trackMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4069,
|
|
"src": "1738:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 4118,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1738:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4119,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1738:15:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": "@dev Stores a response that the contract will return if the fallback function is called with the given method name and matching arguments.\n@param call ABI encoded calldata that if invoked on this contract will return `response`. Parameter values need to match exactly.\n@param response ABI encoded response that will be returned if this contract is invoked with `call`",
|
|
"id": 4121,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenReturn",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4101,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4098,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4121,
|
|
"src": "1629:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4097,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1629:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4100,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4121,
|
|
"src": "1641:14:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4099,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1641:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1628:28:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4102,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1664:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "1608:149:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4145,
|
|
"nodeType": "Block",
|
|
"src": "1822:110:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4133,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4128,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "1826:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4130,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4129,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4123,
|
|
"src": "1839:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1826:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4131,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "1849:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4132,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "1849:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "1826:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4134,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1826:38:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4139,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4135,
|
|
"name": "expectationsAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "1868:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4137,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4136,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4123,
|
|
"src": "1884:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1868:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4138,
|
|
"name": "response",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4125,
|
|
"src": "1894:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "1868:34:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4140,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1868:34:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4142,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4123,
|
|
"src": "1919:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 4141,
|
|
"name": "trackAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4096,
|
|
"src": "1906:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 4143,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1906:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4144,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1906:20:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4146,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenReturnAny",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4126,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4123,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4146,
|
|
"src": "1784:13:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4122,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1784:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4125,
|
|
"name": "response",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4146,
|
|
"src": "1799:14:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4124,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1799:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1783:31:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4127,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1822:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "1760:172:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4168,
|
|
"nodeType": "Block",
|
|
"src": "1975:88:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4156,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4151,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "1979:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4153,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4152,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4148,
|
|
"src": "1989:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1979:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4154,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "1997:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4155,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "1997:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "1979:33:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4157,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1979:33:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4162,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4158,
|
|
"name": "revertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4003,
|
|
"src": "2016:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4160,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4159,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4148,
|
|
"src": "2030:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2016:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4161,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2038:2:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "2016:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4163,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2016:24:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4165,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4148,
|
|
"src": "2054:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4164,
|
|
"name": "trackMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4069,
|
|
"src": "2044:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 4166,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2044:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4167,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2044:15:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4169,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenRevert",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4149,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4148,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4169,
|
|
"src": "1956:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4147,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1956:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1955:12:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4150,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "1975:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "1935:128:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4185,
|
|
"nodeType": "Block",
|
|
"src": "2112:72:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4179,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4174,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "2116:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4176,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4175,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4171,
|
|
"src": "2129:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2116:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4177,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2139:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4178,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2139:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2116:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4180,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2116:38:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4182,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4171,
|
|
"src": "2171:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 4181,
|
|
"name": "trackAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4096,
|
|
"src": "2158:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 4183,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2158:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4184,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2158:20:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4186,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenRevertAny",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4172,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4171,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4186,
|
|
"src": "2090:13:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4170,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2090:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2089:15:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4173,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2112:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2066:118:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4210,
|
|
"nodeType": "Block",
|
|
"src": "2254:93:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4198,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4193,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "2258:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4195,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4194,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4188,
|
|
"src": "2268:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2258:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4196,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2276:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4197,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2276:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2258:33:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4199,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2258:33:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4204,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4200,
|
|
"name": "revertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4003,
|
|
"src": "2295:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4202,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4201,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4188,
|
|
"src": "2309:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2295:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4203,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4190,
|
|
"src": "2317:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
},
|
|
"src": "2295:29:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4205,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2295:29:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4207,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4188,
|
|
"src": "2338:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4206,
|
|
"name": "trackMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4069,
|
|
"src": "2328:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 4208,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2328:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4209,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2328:15:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4211,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenRevertWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4191,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4188,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4211,
|
|
"src": "2219:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4187,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2219:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4190,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4211,
|
|
"src": "2231:14:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 4189,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2231:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2218:28:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4192,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2254:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2187:160:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4235,
|
|
"nodeType": "Block",
|
|
"src": "2423:110:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4223,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4218,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "2427:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4220,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4219,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4213,
|
|
"src": "2440:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2427:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4221,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2450:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4222,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2450:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2427:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4224,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2427:38:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4229,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4225,
|
|
"name": "revertMessageAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4019,
|
|
"src": "2469:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4227,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4226,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4213,
|
|
"src": "2486:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2469:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4228,
|
|
"name": "message",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4215,
|
|
"src": "2496:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
},
|
|
"src": "2469:34:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4230,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2469:34:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4232,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4213,
|
|
"src": "2520:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 4231,
|
|
"name": "trackAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4096,
|
|
"src": "2507:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 4233,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2507:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4234,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2507:20:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4236,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenRevertAnyWithMessage",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4216,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4213,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4236,
|
|
"src": "2385:13:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4212,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2385:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 4215,
|
|
"name": "message",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4236,
|
|
"src": "2400:14:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 4214,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2400:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2384:31:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4217,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2423:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2350:183:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4252,
|
|
"nodeType": "Block",
|
|
"src": "2578:62:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4246,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4241,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "2582:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4243,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4242,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4238,
|
|
"src": "2592:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2582:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4244,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2600:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4245,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2600:17:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2582:35:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4247,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2582:35:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4249,
|
|
"name": "call",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4238,
|
|
"src": "2631:4:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4248,
|
|
"name": "trackMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4069,
|
|
"src": "2621:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$",
|
|
"typeString": "function (bytes memory)"
|
|
}
|
|
},
|
|
"id": 4250,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2621:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4251,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2621:15:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4253,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenOutOfGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4239,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4238,
|
|
"name": "call",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4253,
|
|
"src": "2559:10:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4237,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2559:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2558:12:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4240,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2578:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2536:104:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4269,
|
|
"nodeType": "Block",
|
|
"src": "2691:73:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4263,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4258,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "2695:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4260,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4259,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4255,
|
|
"src": "2708:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2695:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4261,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "2718:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4262,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "2718:17:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "2695:40:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4264,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2695:40:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4266,
|
|
"name": "method",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4255,
|
|
"src": "2752:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"id": 4265,
|
|
"name": "trackAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4096,
|
|
"src": "2739:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes4_$returns$__$",
|
|
"typeString": "function (bytes4)"
|
|
}
|
|
},
|
|
"id": 4267,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2739:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4268,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2739:20:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4270,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "givenOutOfGasAny",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4256,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 4255,
|
|
"name": "method",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4270,
|
|
"src": "2669:13:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4254,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2669:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "2668:15:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4257,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2691:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2643:121:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4385,
|
|
"nodeType": "Block",
|
|
"src": "2791:1052:27",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
4274
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4274,
|
|
"name": "nextMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4386,
|
|
"src": "2822:21:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4273,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2822:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4278,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4275,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "2846:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4277,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4276,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "2852:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2846:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "2822:47:27"
|
|
},
|
|
{
|
|
"assignments": [
|
|
4280
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4280,
|
|
"name": "mockHash",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4386,
|
|
"src": "2873:16:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 4279,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2873:7:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4284,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4282,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "2902:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4281,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4485,
|
|
"src": "2892:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 4283,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2892:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "2873:38:27"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4325,
|
|
"nodeType": "Block",
|
|
"src": "2983:315:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4293,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4288,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "3014:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4290,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4289,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3024:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3014:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4291,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "3036:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4292,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "3036:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "3014:37:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4294,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3014:37:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4299,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4295,
|
|
"name": "expectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3999,
|
|
"src": "3056:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4297,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4296,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3069:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3056:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4298,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3081:5:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3056:30:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4300,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3056:30:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4305,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4301,
|
|
"name": "revertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4003,
|
|
"src": "3091:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4303,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4302,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3105:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3091:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4304,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3117:2:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3091:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4306,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3091:28:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4311,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4307,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3154:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4308,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "3165:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4310,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4309,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4280,
|
|
"src": "3171:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3165:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "3154:26:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 4312,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3154:26:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4317,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4313,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "3215:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4315,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4314,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4280,
|
|
"src": "3221:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3215:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4316,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3233:2:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3215:20:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4318,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3215:20:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4323,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4319,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4280,
|
|
"src": "3263:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"id": 4321,
|
|
"name": "nextMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4274,
|
|
"src": "3284:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 4320,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4485,
|
|
"src": "3274:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$",
|
|
"typeString": "function () pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 4322,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3274:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "3263:30:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 4324,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3263:30:27"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 4287,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4285,
|
|
"name": "mockHash",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4280,
|
|
"src": "2950:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4286,
|
|
"name": "MOCKS_LIST_END_HASH",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3984,
|
|
"src": "2962:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "2950:31:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 4326,
|
|
"nodeType": "WhileStatement",
|
|
"src": "2944:354:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4331,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4327,
|
|
"name": "mocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3991,
|
|
"src": "3317:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes32 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4329,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4328,
|
|
"name": "MOCKS_LIST_START",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3976,
|
|
"src": "3323:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3317:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4330,
|
|
"name": "MOCKS_LIST_END",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3979,
|
|
"src": "3343:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"src": "3317:40:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4332,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3317:40:27"
|
|
},
|
|
{
|
|
"assignments": [
|
|
4334
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4334,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4386,
|
|
"src": "3387:18:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4333,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3387:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4338,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4335,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "3408:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4337,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4336,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "3417:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3408:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "3387:49:27"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4377,
|
|
"nodeType": "Block",
|
|
"src": "3481:290:27",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
4343
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4343,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4386,
|
|
"src": "3486:21:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4342,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3486:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4345,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"id": 4344,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4334,
|
|
"src": "3510:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "3486:35:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4351,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4346,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "3526:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4348,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4347,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3539:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3526:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4349,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "3557:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4350,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Return",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "3557:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "3526:46:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"id": 4352,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3526:46:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4357,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4353,
|
|
"name": "expectationsAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "3577:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4355,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4354,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3593:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3577:31:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4356,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3611:5:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3577:39:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"id": 4358,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3577:39:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4363,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4359,
|
|
"name": "revertMessageAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4019,
|
|
"src": "3621:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4361,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4360,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3638:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3621:32:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "",
|
|
"id": 4362,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3656:2:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
|
|
"typeString": "literal_string \"\""
|
|
},
|
|
"value": ""
|
|
},
|
|
"src": "3621:37:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
},
|
|
"id": 4364,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3621:37:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4369,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4365,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4334,
|
|
"src": "3663:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4366,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "3677:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4368,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4367,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3686:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3677:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "3663:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4370,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3663:38:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4375,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4371,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "3736:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4373,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4372,
|
|
"name": "currentAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4343,
|
|
"src": "3745:14:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3736:24:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"hexValue": "307830",
|
|
"id": 4374,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3763:3:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0x0"
|
|
},
|
|
"src": "3736:30:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4376,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3736:30:27"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"id": 4341,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4339,
|
|
"name": "nextAnyMock",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4334,
|
|
"src": "3446:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4340,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "3461:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "3446:33:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 4378,
|
|
"nodeType": "WhileStatement",
|
|
"src": "3440:331:27"
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4383,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4379,
|
|
"name": "anyMocks",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4007,
|
|
"src": "3790:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes4_$",
|
|
"typeString": "mapping(bytes4 => bytes4)"
|
|
}
|
|
},
|
|
"id": 4381,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4380,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "3799:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3790:28:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4382,
|
|
"name": "SENTINEL_ANY_MOCKS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3987,
|
|
"src": "3821:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "3790:49:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 4384,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3790:49:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4386,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "reset",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4271,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2781:2:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4272,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "2791:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "2767:1076:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4393,
|
|
"nodeType": "Block",
|
|
"src": "3875:70:27",
|
|
"statements": [
|
|
{
|
|
"body": {
|
|
"id": 4391,
|
|
"nodeType": "Block",
|
|
"src": "3891:51:27",
|
|
"statements": [
|
|
{
|
|
"externalReferences": [],
|
|
"id": 4390,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n sstore(sload(0x40), 1)\n}",
|
|
"src": "3896:46:27"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"hexValue": "74727565",
|
|
"id": 4389,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3885:4:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "true"
|
|
},
|
|
"id": 4392,
|
|
"nodeType": "WhileStatement",
|
|
"src": "3879:63:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4394,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "useAllGas",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4387,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3864:2:27"
|
|
},
|
|
"payable": false,
|
|
"returnParameters": {
|
|
"id": 4388,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3875:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "3846:99:27",
|
|
"stateMutability": "nonpayable",
|
|
"superFunction": null,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 4474,
|
|
"nodeType": "Block",
|
|
"src": "3974:635:27",
|
|
"statements": [
|
|
{
|
|
"assignments": [],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4398,
|
|
"name": "methodId",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4475,
|
|
"src": "3978:15:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 4397,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3978:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4399,
|
|
"initialValue": null,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "3978:15:27"
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"methodId": {
|
|
"declaration": 4398,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "4011:8:27",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 4400,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n methodId := calldataload(0)\n}",
|
|
"src": "3997:50:27"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 4407,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4401,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "4049:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4404,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4402,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4491,
|
|
"src": "4059:3:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 4403,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4059:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4049:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4405,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "4072:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4406,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4072:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "4049:38:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4416,
|
|
"nodeType": "IfStatement",
|
|
"src": "4045:85:27",
|
|
"trueBody": {
|
|
"id": 4415,
|
|
"nodeType": "Block",
|
|
"src": "4089:41:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4409,
|
|
"name": "revertMessage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4003,
|
|
"src": "4101:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes memory => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4412,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4410,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4491,
|
|
"src": "4115:3:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 4411,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4115:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4101:23:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 4408,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4496,
|
|
4497
|
|
],
|
|
"referencedDeclaration": 4497,
|
|
"src": "4094:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 4413,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4094:31:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4414,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4094:31:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 4423,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4417,
|
|
"name": "mockTypes",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3995,
|
|
"src": "4137:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes memory => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4420,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4418,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4491,
|
|
"src": "4147:3:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 4419,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4147:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4137:19:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4421,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "4160:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4422,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4160:17:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "4137:40:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4428,
|
|
"nodeType": "IfStatement",
|
|
"src": "4133:67:27",
|
|
"trueBody": {
|
|
"id": 4427,
|
|
"nodeType": "Block",
|
|
"src": "4179:21:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 4424,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4394,
|
|
"src": "4184:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 4425,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4184:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4426,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4184:11:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"assignments": [
|
|
4430
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 4430,
|
|
"name": "result",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 4475,
|
|
"src": "4203:19:27",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 4429,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4203:5:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"value": null,
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 4435,
|
|
"initialValue": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4431,
|
|
"name": "expectations",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3999,
|
|
"src": "4225:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes_memory_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes memory => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4434,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4432,
|
|
"name": "msg",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4491,
|
|
"src": "4238:3:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_message",
|
|
"typeString": "msg"
|
|
}
|
|
},
|
|
"id": 4433,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "data",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4238:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_calldata_ptr",
|
|
"typeString": "bytes calldata"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4225:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "4203:44:27"
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 4439,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4436,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4430,
|
|
"src": "4308:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 4437,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4308:13:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"hexValue": "30",
|
|
"id": 4438,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "4325:1:27",
|
|
"subdenomination": null,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "4308:18:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4472,
|
|
"nodeType": "IfStatement",
|
|
"src": "4304:241:27",
|
|
"trueBody": {
|
|
"id": 4471,
|
|
"nodeType": "Block",
|
|
"src": "4328:217:27",
|
|
"statements": [
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 4445,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4440,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "4337:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4442,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4441,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4398,
|
|
"src": "4350:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4337:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4443,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "4363:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4444,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "Revert",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4363:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "4337:41:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4453,
|
|
"nodeType": "IfStatement",
|
|
"src": "4333:93:27",
|
|
"trueBody": {
|
|
"id": 4452,
|
|
"nodeType": "Block",
|
|
"src": "4380:46:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [
|
|
{
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4447,
|
|
"name": "revertMessageAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4019,
|
|
"src": "4393:16:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_string_storage_$",
|
|
"typeString": "mapping(bytes4 => string storage ref)"
|
|
}
|
|
},
|
|
"id": 4449,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4448,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4398,
|
|
"src": "4410:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4393:26:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_storage",
|
|
"typeString": "string storage ref"
|
|
}
|
|
],
|
|
"id": 4446,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
4496,
|
|
4497
|
|
],
|
|
"referencedDeclaration": 4497,
|
|
"src": "4386:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 4450,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4386:34:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4451,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4386:34:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"argumentTypes": null,
|
|
"commonType": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
},
|
|
"id": 4459,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4454,
|
|
"name": "mockTypesAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4011,
|
|
"src": "4434:12:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_enum$_MockType_$3973_$",
|
|
"typeString": "mapping(bytes4 => enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4456,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4455,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4398,
|
|
"src": "4447:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4434:22:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"argumentTypes": null,
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4457,
|
|
"name": "MockType",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 3973,
|
|
"src": "4460:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_enum$_MockType_$3973_$",
|
|
"typeString": "type(enum MockContract.MockType)"
|
|
}
|
|
},
|
|
"id": 4458,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberName": "OutOfGas",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": null,
|
|
"src": "4460:17:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_enum$_MockType_$3973",
|
|
"typeString": "enum MockContract.MockType"
|
|
}
|
|
},
|
|
"src": "4434:43:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": null,
|
|
"id": 4464,
|
|
"nodeType": "IfStatement",
|
|
"src": "4430:72:27",
|
|
"trueBody": {
|
|
"id": 4463,
|
|
"nodeType": "Block",
|
|
"src": "4479:23:27",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"id": 4460,
|
|
"name": "useAllGas",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4394,
|
|
"src": "4485:9:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
"typeString": "function ()"
|
|
}
|
|
},
|
|
"id": 4461,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4485:11:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 4462,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4485:11:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"argumentTypes": null,
|
|
"id": 4469,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"argumentTypes": null,
|
|
"id": 4465,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4430,
|
|
"src": "4506:6:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"argumentTypes": null,
|
|
"baseExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4466,
|
|
"name": "expectationsAny",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4015,
|
|
"src": "4515:15:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_bytes_storage_$",
|
|
"typeString": "mapping(bytes4 => bytes storage ref)"
|
|
}
|
|
},
|
|
"id": 4468,
|
|
"indexExpression": {
|
|
"argumentTypes": null,
|
|
"id": 4467,
|
|
"name": "methodId",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 4398,
|
|
"src": "4531:8:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4515:25:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage",
|
|
"typeString": "bytes storage ref"
|
|
}
|
|
},
|
|
"src": "4506:34:27",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 4470,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4506:34:27"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"externalReferences": [
|
|
{
|
|
"result": {
|
|
"declaration": 4430,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "4579:6:27",
|
|
"valueSize": 1
|
|
}
|
|
},
|
|
{
|
|
"result": {
|
|
"declaration": 4430,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "4594:6:27",
|
|
"valueSize": 1
|
|
}
|
|
}
|
|
],
|
|
"id": 4473,
|
|
"nodeType": "InlineAssembly",
|
|
"operations": "{\n return(add(0x20, result), mload(result))\n}",
|
|
"src": "4548:61:27"
|
|
}
|
|
]
|
|
},
|
|
"documentation": null,
|
|
"id": 4475,
|
|
"implemented": true,
|
|
"isConstructor": false,
|
|
"isDeclaredConst": false,
|
|
"modifiers": [],
|
|
"name": "",
|
|
"nodeType": "FunctionDefinition",
|
|
"parameters": {
|
|
"id": 4395,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3956:2:27"
|
|
},
|
|
"payable": true,
|
|
"returnParameters": {
|
|
"id": 4396,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "3974:0:27"
|
|
},
|
|
"scope": 4476,
|
|
"src": "3948:661:27",
|
|
"stateMutability": "payable",
|
|
"superFunction": null,
|
|
"visibility": "public"
|
|
}
|
|
],
|
|
"scope": 4477,
|
|
"src": "26:4585:27"
|
|
}
|
|
],
|
|
"src": "0:4612:27"
|
|
},
|
|
"compiler": {
|
|
"name": "solc",
|
|
"version": "0.4.24+commit.e67f0147.Emscripten.clang"
|
|
},
|
|
"networks": {},
|
|
"schemaVersion": "2.0.0",
|
|
"updatedAt": "2018-09-26T08:32:07.672Z"
|
|
} |