5939 lines
288 KiB
JSON
5939 lines
288 KiB
JSON
|
{
|
||
|
"contractName": "PoolTokensContainer",
|
||
|
"abi": [
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "string",
|
||
|
"name": "_name",
|
||
|
"type": "string"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "string",
|
||
|
"name": "_symbol",
|
||
|
"type": "string"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint8",
|
||
|
"name": "_decimals",
|
||
|
"type": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "constructor"
|
||
|
},
|
||
|
{
|
||
|
"anonymous": false,
|
||
|
"inputs": [
|
||
|
{
|
||
|
"indexed": true,
|
||
|
"internalType": "address",
|
||
|
"name": "_prevOwner",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"indexed": true,
|
||
|
"internalType": "address",
|
||
|
"name": "_newOwner",
|
||
|
"type": "address"
|
||
|
}
|
||
|
],
|
||
|
"name": "OwnerUpdate",
|
||
|
"type": "event"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "acceptOwnership",
|
||
|
"outputs": [],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "decimals",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "uint8",
|
||
|
"name": "",
|
||
|
"type": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "name",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "string",
|
||
|
"name": "",
|
||
|
"type": "string"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "newOwner",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "",
|
||
|
"type": "address"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "owner",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "",
|
||
|
"type": "address"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "symbol",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "string",
|
||
|
"name": "",
|
||
|
"type": "string"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "_newOwner",
|
||
|
"type": "address"
|
||
|
}
|
||
|
],
|
||
|
"name": "transferOwnership",
|
||
|
"outputs": [],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "contract IERC20Token",
|
||
|
"name": "_token",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "_to",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "_amount",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"name": "withdrawTokens",
|
||
|
"outputs": [],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "poolTokens",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "contract ISmartToken[]",
|
||
|
"name": "",
|
||
|
"type": "address[]"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "view",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [],
|
||
|
"name": "createToken",
|
||
|
"outputs": [
|
||
|
{
|
||
|
"internalType": "contract ISmartToken",
|
||
|
"name": "",
|
||
|
"type": "address"
|
||
|
}
|
||
|
],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "contract ISmartToken",
|
||
|
"name": "_token",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "_to",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "_amount",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"name": "mint",
|
||
|
"outputs": [],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "function"
|
||
|
},
|
||
|
{
|
||
|
"inputs": [
|
||
|
{
|
||
|
"internalType": "contract ISmartToken",
|
||
|
"name": "_token",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "address",
|
||
|
"name": "_from",
|
||
|
"type": "address"
|
||
|
},
|
||
|
{
|
||
|
"internalType": "uint256",
|
||
|
"name": "_amount",
|
||
|
"type": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"name": "burn",
|
||
|
"outputs": [],
|
||
|
"stateMutability": "nonpayable",
|
||
|
"type": "function"
|
||
|
}
|
||
|
],
|
||
|
"metadata": "{\"compiler\":{\"version\":\"0.6.12+commit.27d51765\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_symbol\",\"type\":\"string\"},{\"internalType\":\"uint8\",\"name\":\"_decimals\",\"type\":\"uint8\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_prevOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"OwnerUpdate\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createToken\",\"outputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISmartToken\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"newOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"poolTokens\",\"outputs\":[{\"internalType\":\"contract ISmartToken[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IERC20Token\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTokens\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"The PoolTokensContainer contract serves as a container for multiple pool tokens. It is used by specific liquidity pool types that require more than a single pool token, while still maintaining the single converter / anchor relationship. It maintains and provides a list of the underlying pool tokens.\",\"kind\":\"dev\",\"methods\":{\"acceptOwnership()\":{\"details\":\"used by a new owner to accept an ownership transfer\"},\"burn(address,address,uint256)\":{\"details\":\"removes tokens from the given account and decreases the pool token supply can only be called by the contract owner\",\"params\":{\"_amount\":\"amount to burn\",\"_from\":\"account to remove the tokens from\",\"_token\":\"pool token address\"}},\"constructor\":{\"details\":\"initializes a new PoolTokensContainer instance\",\"params\":{\"_decimals\":\"used for the underlying pool token decimals\",\"_n
|
||
|
"bytecode": "0x60806040523480156200001157600080fd5b506040516200224a3803806200224a833981810160405260608110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b5060405260200151600080546001600160a01b0319163317905584519092501515905062000200576040805162461bcd60e51b815260206004820152601060248201526f4552525f494e56414c49445f4e414d4560801b604482015290519081900360640190fd5b60008251116200024c576040805162461bcd60e51b815260206004820152601260248201527111549497d253959053125117d4d6535093d360721b604482015290519081900360640190fd5b82516200026190600290602086019062000295565b5081516200027790600390602085019062000295565b506004805460ff191660ff9290921691909117905550620003319050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002d857805160ff191683800117855562000308565b8280016001018555821562000308579182015b8281111562000308578251825591602001919060010190620002eb565b50620003169291506200031a565b5090565b5b808211156200031657600081556001016200031b565b611f0980620003416000396000f3fe60806040523480156200001157600080fd5b5060043610620000c45760003560e01c806395d89b41116200007b57806395d89b4114620002325780639cbf9e36146200023c578063c6c3bbe61462000246578063d4ee1d90146200027f578063f2fde38b1462000289578063f6b911bc14620002b257620000c4565b806306fdde0314620000c9578063313ce567146200014b5780635e35359e146200016b5780636d3e313e14620001a657806379ba509714620002025780638da5cb5b146200020c575b600080fd5b620000d3620002eb565b6040805160208082528351818301528351919283929083019185019080838360005b838110156200010f578181015183820152602001620000f5565b50505050905090810190601f1680156200013d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b620001556200037a565b6040805160ff9092168252519081900360200190f35b620001a4600480360360608110156200018357600080fd5b506001600160a01b0381358116916020810135909116906040013562000383565b005b620001b0620003c6565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015620001ee578181015183820152602001620001d4565b505050509050019250505060405180910390f35b620001a46200042a565b62000216620004e2565b604080516001600160a01b039092168252519081900360200190f35b620000d3620004f1565b620002166200054f565b620001a4600480360360608110156200025e57600080fd5b506001600160a01b038135811691602081013590911690604001356200082e565b62000216620008ae565b620001a460048036036020811015620002a157600080fd5b50356001600160a01b0316620008bd565b620001a460048036036060811015620002ca57600080fd5b506001600160a01b038135811691602081013590911690604001356200093e565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015620003725780601f10620003465761010080835404028352916020019162000372565b820191906000526020600020905b8154815290600101906020018083116200035457829003601f168201915b505050505081565b60045460ff1681565b6200038d620009a0565b826200039981620009f6565b82620003a581620009f6565b83620003b18162000a4b565b620003be86868662000aa0565b505050505050565b606060058054806020026020016040519081016040528092919081815260200182805480156200042057602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162000401575b5050505050905090565b6001546001600160a01b031633146200047e576040805162461bcd60e51b815260206004820152601160248201527011549497d050d0d154d4d7d11153925151607a1b604482015290519081900360640190fd5b600154600080546040516001600160a01b0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173
|
||
|
"deployedBytecode": "0x60806040523480156200001157600080fd5b5060043610620000c45760003560e01c806395d89b41116200007b57806395d89b4114620002325780639cbf9e36146200023c578063c6c3bbe61462000246578063d4ee1d90146200027f578063f2fde38b1462000289578063f6b911bc14620002b257620000c4565b806306fdde0314620000c9578063313ce567146200014b5780635e35359e146200016b5780636d3e313e14620001a657806379ba509714620002025780638da5cb5b146200020c575b600080fd5b620000d3620002eb565b6040805160208082528351818301528351919283929083019185019080838360005b838110156200010f578181015183820152602001620000f5565b50505050905090810190601f1680156200013d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b620001556200037a565b6040805160ff9092168252519081900360200190f35b620001a4600480360360608110156200018357600080fd5b506001600160a01b0381358116916020810135909116906040013562000383565b005b620001b0620003c6565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015620001ee578181015183820152602001620001d4565b505050509050019250505060405180910390f35b620001a46200042a565b62000216620004e2565b604080516001600160a01b039092168252519081900360200190f35b620000d3620004f1565b620002166200054f565b620001a4600480360360608110156200025e57600080fd5b506001600160a01b038135811691602081013590911690604001356200082e565b62000216620008ae565b620001a460048036036020811015620002a157600080fd5b50356001600160a01b0316620008bd565b620001a460048036036060811015620002ca57600080fd5b506001600160a01b038135811691602081013590911690604001356200093e565b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181529291830182828015620003725780601f10620003465761010080835404028352916020019162000372565b820191906000526020600020905b8154815290600101906020018083116200035457829003601f168201915b505050505081565b60045460ff1681565b6200038d620009a0565b826200039981620009f6565b82620003a581620009f6565b83620003b18162000a4b565b620003be86868662000aa0565b505050505050565b606060058054806020026020016040519081016040528092919081815260200182805480156200042057602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162000401575b5050505050905090565b6001546001600160a01b031633146200047e576040805162461bcd60e51b815260206004820152601160248201527011549497d050d0d154d4d7d11153925151607a1b604482015290519081900360640190fd5b600154600080546040516001600160a01b0393841693909116917f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a91a360018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6000546001600160a01b031681565b6003805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015620003725780601f10620003465761010080835404028352916020019162000372565b60006200055b620009a0565b6005805410620005aa576040805162461bcd60e51b815260206004820152601560248201527411549497d3505617d31253525517d4915050d21151605a1b604482015290519081900360640190fd5b6002805460408051602060018416156101000260001901909316849004601f81018490048402820184019092528181526060936200064e93919290918301828280156200063b5780601f106200060f576101008083540402835291602001916200063b565b820191906000526020600020905b8154815290600101906020018083116200061d57829003601f168201915b5050600554600101925062000c08915050565b60038054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152939450606093620006ba93909290918301828280156200063b5780601f106200060f576101008083540402835291602001916200063b565b905060008282600460009054906101000a900460ff16604051620006de9062000c92565b60ff82166040820152606080825284519082015283518190602080830191608084019188019080838360005b83811015620007245781810151838201526020016200070a565b50505050905090810190601f168015620007525780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b83811015620007875781810151838201526020016200076d565b50505050905090810190601f168015620007b55780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f080158015620007da573d6000803e3d6000fd5b50600580546001810182556000919091527f036b6384b5ec
|
||
|
"immutableReferences": {},
|
||
|
"sourceMap": "592:3348:32:-:0;;;1382:329;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1382:329:32;;;;;;;;;;-1:-1:-1;1382:329:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1382:329:32;;;;;;;;;;-1:-1:-1;1382:329:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1382:329:32;;;;;619:5:58;:18;;-1:-1:-1;;;;;;619:18:58;627:10;619:18;;;1509:19:32;;1382:329;;-1:-1:-1;1509:23:32;;;-1:-1:-1;1501:52:32;;;;;-1:-1:-1;;;1501:52:32;;;;;;;;;;;;-1:-1:-1;;;1501:52:32;;;;;;;;;;;;;;;1596:1;1578:7;1572:21;:25;1564:56;;;;;-1:-1:-1;;;1564:56:32;;;;;;;;;;;;-1:-1:-1;;;1564:56:32;;;;;;;;;;;;;;;1633:12;;;;:4;;:12;;;;;:::i;:::-;-1:-1:-1;1656:16:32;;;;:6;;:16;;;;;:::i;:::-;-1:-1:-1;1683:8:32;:20;;-1:-1:-1;;1683:20:32;;;;;;;;;;;;-1:-1:-1;592:3348:32;;-1:-1:-1;592:3348:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;592:3348:32;;;-1:-1:-1;592:3348:32;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;",
|
||
|
"deployedSourceMap": "592:3348:32:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;767:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;877:21;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1196:290:63;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1196:290:63;;;;;;;;;;;;;;;;;:::i;:::-;;1828:113:32;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1422:217:58;;;:::i;219:29::-;;;:::i;:::-;;;;-1:-1:-1;;;;;219:29:58;;;;;;;;;;;;;;821:20:32;;;:::i;2078:530::-;;;:::i;2936:137::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;2936:137:32;;;;;;;;;;;;;;;;;:::i;255:23:58:-;;;:::i;1164:167::-;;;;;;;;;;;;;;;;-1:-1:-1;1164:167:58;-1:-1:-1;;;;;1164:167:58;;:::i;3388:143:32:-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;3388:143:32;;;;;;;;;;;;;;;;;:::i;767:18::-;;;;;;;;;;;;;;-1:-1:-1;;767:18:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;877:21::-;;;;;;:::o;1196:290:63:-;726:12:58;:10;:12::i;:::-;1370:6:63::1;594:23:65;608:8;594:13;:23::i;:::-;1401:3:63::2;594:23:65;608:8;594:13;:23::i;:::-;1423:3:63::3;948:18:65;957:8;948;:18::i;:::-;1444:34:63::4;1457:6;1465:3;1470:7;1444:12;:34::i;:::-;628:1:65::3;::::2;749::58::1;1196:290:63::0;;;:::o;1828:113:32:-;1882:20;1922:11;1915:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1915:18:32;;;-1:-1:-1;1915:18:32;;;;;;;;;;;;;;;;;;;1828:113;:::o;1422:217:58:-;1498:8;;-1:-1:-1;;;;;1498:8:58;1484:10;:22;1476:52;;;;;-1:-1:-1;;;1476:52:58;;;;;;;;;;;;-1:-1:-1;;;1476:52:58;;;;;;;;;;;;;;;1563:8;;;1556:5;;1544:28;;-1:-1:-1;;;;;1563:8:58;;;;1556:5;;;;1544:28;;;1591:8;;;;1583:16;;-1:-1:-1;;;;;1591:8:58;;-1:-1:-1;;;;;;1583:16:58;;;;;;;1610:21;;;1422:217::o;219:29::-;;;-1:-1:-1;;;;;219:29:58;;:::o;821:20:32:-;;;;;;;;;;;;;;;-1:-1:-1;;821:20:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2078:530;2138:11;726:12:58;:10;:12::i;:::-;714:1:32::1;2223:18:::0;;:36:::1;2215:70;;;::::0;;-1:-1:-1;;;2215:70:32;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;2215:70:32;;;;;;;;;;;;;::::1;;2338:4;2323:51:::0;;::::1;::::0;;::::1;;::::0;::::1;;;;-1:-1:-1::0;;2323:51:32;;;::::1;::::0;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;2298:22:::1;::::0;2323:51:::1;::::0;;;2338:4;;2323:51;::::1;2338:4:::0;2323:51;;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;2350:11:32::1;:18:::0;2371:1:::1;2350:22;::::0;-1:-1:-1;2323:14:32::1;::::0;-1:-1:-1;;2323:51:32:i:1;:::-;2427:6;2412:53:::0;;::::1;::::0;;::::1;;;::::0;::::1;;;;-1:-1:-1::0;;2412:53:32;;;::::1;::::0;;;::::1;;::::0;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;;2298:76;;-1:-1:-1;2385:24:32::1;::::0;2412:53:::1;::::0;;;2427:6;;2412:53;;::::1;2427:6:::0;2412:53;;::::1;;;;;;;;;;;;;;;;;;;;;;;2385:80;;2478:16;2512:8;2522:10;2534:8;;;;;;;;;;;2497:46;;;;;:::i;:::-;;::::0;::::1;::::0;;;;;;;;;;;;;;;;;;::::1;::::0;;::::1;::::0;;;;;;::::1;::::0;;;;;::::1;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;2497:46:32;;::::1;::::0;;;;;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;;;::::1;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;2554:11:32::1;:23:::0;;::::1;::::0;::::1;::::0;;-1:-1:-1;2554:23:32;;;;;::::1;::::0;;-1:-1:-1;;;;;;2554:23:32::1;-1:-1:-1::0;;;;;2554:23:32;::::1;;::::0;;;;-1:-1:-1;;;;2078:530:32:o;2936:137::-;726:12:58;:10;:12::i;:::-;3039:26:32::1;::::0;;-1:-1:-1;;;3039:26:32;;-1:-1:-1;;;;;3039:26:32;;::::1;;::::0;::::1;::::0;;;;;;;;;:12;;::::1;::::0;::::1;::::0;:26;;;;;-1:-1:-1;;3039:26:32;;;;;;;;-1:-1:-1;3039:12:32;:26;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2936:137:::0;;;:::o;255:23:58:-;;;-1:-1:-1;;;;;255:23:58;;:::o;1164:167::-;726:12;:10;:12::i;:::-;1268:5:::1;::::0;-1:-1:-1;;;;;1255:18:58;;::::1;1268:5:::0;::::1;1255:18;;1247:45;;;::::0;;-1:-1:-1;;;1247:45:58;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;1247:45:58;;;;;;;;;;;;;::::1;;1303:8;:20:::0;;-1:-1:-1;;;;;;1303:20:58::1;-1:-1:-1::0;;;;;1303:20:58;;;
|
||
|
"source": "// SPDX-License-Identifier: SEE LICENSE IN LICENSE\r\npragma solidity 0.6.12;\r\nimport \"./interfaces/IPoolTokensContainer.sol\";\r\nimport \"../../../utility/Owned.sol\";\r\nimport \"../../../utility/TokenHolder.sol\";\r\nimport \"../../../token/SmartToken.sol\";\r\n\r\n/**\r\n * @dev The PoolTokensContainer contract serves as a container for multiple pool tokens.\r\n * It is used by specific liquidity pool types that require more than a single pool token,\r\n * while still maintaining the single converter / anchor relationship.\r\n *\r\n * It maintains and provides a list of the underlying pool tokens.\r\n */\r\ncontract PoolTokensContainer is IPoolTokensContainer, Owned, TokenHolder {\r\n uint8 internal constant MAX_POOL_TOKENS = 5; // maximum pool tokens in the container\r\n\r\n string public name; // pool name\r\n string public symbol; // pool symbol\r\n uint8 public decimals; // underlying pool tokens decimals\r\n ISmartToken[] private _poolTokens; // underlying pool tokens\r\n\r\n /**\r\n * @dev initializes a new PoolTokensContainer instance\r\n *\r\n * @param _name pool name, also used as a prefix for the underlying pool token names\r\n * @param _symbol pool symbol, also used as a prefix for the underlying pool token symbols\r\n * @param _decimals used for the underlying pool token decimals\r\n */\r\n constructor(string memory _name, string memory _symbol, uint8 _decimals) public {\r\n // validate input\r\n require(bytes(_name).length > 0, \"ERR_INVALID_NAME\");\r\n require(bytes(_symbol).length > 0, \"ERR_INVALID_SYMBOL\");\r\n\r\n name = _name;\r\n symbol = _symbol;\r\n decimals = _decimals;\r\n }\r\n\r\n /**\r\n * @dev returns the list of pool tokens\r\n *\r\n * @return list of pool tokens\r\n */\r\n function poolTokens() external view override returns (ISmartToken[] memory) {\r\n return _poolTokens;\r\n }\r\n\r\n /**\r\n * @dev creates a new pool token and adds it to the list\r\n *\r\n * @return new pool token address\r\n */\r\n function createToken() external override ownerOnly returns (ISmartToken) {\r\n // verify that the max limit wasn't reached\r\n require(_poolTokens.length < MAX_POOL_TOKENS, \"ERR_MAX_LIMIT_REACHED\");\r\n\r\n string memory poolName = concatStrDigit(name, uint8(_poolTokens.length + 1));\r\n string memory poolSymbol = concatStrDigit(symbol, uint8(_poolTokens.length + 1));\r\n\r\n SmartToken token = new SmartToken(poolName, poolSymbol, decimals);\r\n _poolTokens.push(token);\r\n return token;\r\n }\r\n\r\n /**\r\n * @dev increases the pool token supply and sends the new tokens to the given account\r\n * can only be called by the contract owner\r\n *\r\n * @param _token pool token address\r\n * @param _to account to receive the newly minted tokens\r\n * @param _amount amount to mint\r\n */\r\n function mint(ISmartToken _token, address _to, uint256 _amount) external override ownerOnly {\r\n _token.issue(_to, _amount);\r\n }\r\n\r\n /**\r\n * @dev removes tokens from the given account and decreases the pool token supply\r\n * can only be called by the contract owner\r\n *\r\n * @param _token pool token address\r\n * @param _from account to remove the tokens from\r\n * @param _amount amount to burn\r\n */\r\n function burn(ISmartToken _token, address _from, uint256 _amount) external override ownerOnly {\r\n _token.destroy(_from, _amount);\r\n }\r\n\r\n /**\r\n * @dev concatenates a string and a digit (single only) and returns the result string\r\n *\r\n * @param _str string\r\n * @param _digit digit\r\n * @return concatenated string\r\n */\r\n function concatStrDigit(string memory _str, uint8 _digit) private pure returns (string memory) {\r\n return stri
|
||
|
"sourcePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/converter/types/liquidity-pool-v2/PoolTokensContainer.sol",
|
||
|
"ast": {
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/converter/types/liquidity-pool-v2/PoolTokensContainer.sol",
|
||
|
"exportedSymbols": {
|
||
|
"PoolTokensContainer": [
|
||
|
18724
|
||
|
]
|
||
|
},
|
||
|
"id": 18725,
|
||
|
"license": "SEE LICENSE IN LICENSE",
|
||
|
"nodeType": "SourceUnit",
|
||
|
"nodes": [
|
||
|
{
|
||
|
"id": 18513,
|
||
|
"literals": [
|
||
|
"solidity",
|
||
|
"0.6",
|
||
|
".12"
|
||
|
],
|
||
|
"nodeType": "PragmaDirective",
|
||
|
"src": "52:23:32"
|
||
|
},
|
||
|
{
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/converter/types/liquidity-pool-v2/interfaces/IPoolTokensContainer.sol",
|
||
|
"file": "./interfaces/IPoolTokensContainer.sol",
|
||
|
"id": 18514,
|
||
|
"nodeType": "ImportDirective",
|
||
|
"scope": 18725,
|
||
|
"sourceUnit": 18802,
|
||
|
"src": "77:47:32",
|
||
|
"symbolAliases": [],
|
||
|
"unitAlias": ""
|
||
|
},
|
||
|
{
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/utility/Owned.sol",
|
||
|
"file": "../../../utility/Owned.sol",
|
||
|
"id": 18515,
|
||
|
"nodeType": "ImportDirective",
|
||
|
"scope": 18725,
|
||
|
"sourceUnit": 22154,
|
||
|
"src": "126:36:32",
|
||
|
"symbolAliases": [],
|
||
|
"unitAlias": ""
|
||
|
},
|
||
|
{
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/utility/TokenHolder.sol",
|
||
|
"file": "../../../utility/TokenHolder.sol",
|
||
|
"id": 18516,
|
||
|
"nodeType": "ImportDirective",
|
||
|
"scope": 18725,
|
||
|
"sourceUnit": 22911,
|
||
|
"src": "164:42:32",
|
||
|
"symbolAliases": [],
|
||
|
"unitAlias": ""
|
||
|
},
|
||
|
{
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/token/SmartToken.sol",
|
||
|
"file": "../../../token/SmartToken.sol",
|
||
|
"id": 18517,
|
||
|
"nodeType": "ImportDirective",
|
||
|
"scope": 18725,
|
||
|
"sourceUnit": 21395,
|
||
|
"src": "208:39:32",
|
||
|
"symbolAliases": [],
|
||
|
"unitAlias": ""
|
||
|
},
|
||
|
{
|
||
|
"abstract": false,
|
||
|
"baseContracts": [
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"baseName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18519,
|
||
|
"name": "IPoolTokensContainer",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 18801,
|
||
|
"src": "624:20:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_IPoolTokensContainer_$18801",
|
||
|
"typeString": "contract IPoolTokensContainer"
|
||
|
}
|
||
|
},
|
||
|
"id": 18520,
|
||
|
"nodeType": "InheritanceSpecifier",
|
||
|
"src": "624:20:32"
|
||
|
},
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"baseName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18521,
|
||
|
"name": "Owned",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 22153,
|
||
|
"src": "646:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_Owned_$22153",
|
||
|
"typeString": "contract Owned"
|
||
|
}
|
||
|
},
|
||
|
"id": 18522,
|
||
|
"nodeType": "InheritanceSpecifier",
|
||
|
"src": "646:5:32"
|
||
|
},
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"baseName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18523,
|
||
|
"name": "TokenHolder",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 22910,
|
||
|
"src": "653:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_TokenHolder_$22910",
|
||
|
"typeString": "contract TokenHolder"
|
||
|
}
|
||
|
},
|
||
|
"id": 18524,
|
||
|
"nodeType": "InheritanceSpecifier",
|
||
|
"src": "653:11:32"
|
||
|
}
|
||
|
],
|
||
|
"contractDependencies": [
|
||
|
13349,
|
||
|
18801,
|
||
|
21394,
|
||
|
22153,
|
||
|
22861,
|
||
|
22910,
|
||
|
22996,
|
||
|
23182,
|
||
|
23242
|
||
|
],
|
||
|
"contractKind": "contract",
|
||
|
"documentation": {
|
||
|
"id": 18518,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "251:339:32",
|
||
|
"text": " @dev The PoolTokensContainer contract serves as a container for multiple pool tokens.\n It is used by specific liquidity pool types that require more than a single pool token,\n while still maintaining the single converter / anchor relationship.\n It maintains and provides a list of the underlying pool tokens."
|
||
|
},
|
||
|
"fullyImplemented": true,
|
||
|
"id": 18724,
|
||
|
"linearizedBaseContracts": [
|
||
|
18724,
|
||
|
22910,
|
||
|
22996,
|
||
|
22153,
|
||
|
22861,
|
||
|
18801,
|
||
|
13349,
|
||
|
23242,
|
||
|
23182
|
||
|
],
|
||
|
"name": "PoolTokensContainer",
|
||
|
"nodeType": "ContractDefinition",
|
||
|
"nodes": [
|
||
|
{
|
||
|
"constant": true,
|
||
|
"id": 18527,
|
||
|
"mutability": "constant",
|
||
|
"name": "MAX_POOL_TOKENS",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "672:43:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18525,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "672:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"value": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "35",
|
||
|
"id": 18526,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "714:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_5_by_1",
|
||
|
"typeString": "int_const 5"
|
||
|
},
|
||
|
"value": "5"
|
||
|
},
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"functionSelector": "06fdde03",
|
||
|
"id": 18529,
|
||
|
"mutability": "mutable",
|
||
|
"name": "name",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "767:18:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18528,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "767:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "public"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"functionSelector": "95d89b41",
|
||
|
"id": 18531,
|
||
|
"mutability": "mutable",
|
||
|
"name": "symbol",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "821:20:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18530,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "821:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "public"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"functionSelector": "313ce567",
|
||
|
"id": 18533,
|
||
|
"mutability": "mutable",
|
||
|
"name": "decimals",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "877:21:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18532,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "877:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "public"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18536,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "953:33:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[]"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"baseType": {
|
||
|
"contractScope": null,
|
||
|
"id": 18534,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "953:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"id": 18535,
|
||
|
"length": null,
|
||
|
"nodeType": "ArrayTypeName",
|
||
|
"src": "953:13:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage_ptr",
|
||
|
"typeString": "contract ISmartToken[]"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "private"
|
||
|
},
|
||
|
{
|
||
|
"body": {
|
||
|
"id": 18580,
|
||
|
"nodeType": "Block",
|
||
|
"src": "1462:249:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18553,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18549,
|
||
|
"name": "_name",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18539,
|
||
|
"src": "1515:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
],
|
||
|
"id": 18548,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "1509:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
|
||
|
"typeString": "type(bytes storage pointer)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18547,
|
||
|
"name": "bytes",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1509:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18550,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "1509:12:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bytes_memory_ptr",
|
||
|
"typeString": "bytes memory"
|
||
|
}
|
||
|
},
|
||
|
"id": 18551,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "1509:19:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": ">",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "30",
|
||
|
"id": 18552,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "1531:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_0_by_1",
|
||
|
"typeString": "int_const 0"
|
||
|
},
|
||
|
"value": "0"
|
||
|
},
|
||
|
"src": "1509:23:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "4552525f494e56414c49445f4e414d45",
|
||
|
"id": 18554,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "string",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "1534:18:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_stringliteral_8c31b897cf1b4c41d9a3a2c9019700f5d8d0c36c906997985403c8f4610f8246",
|
||
|
"typeString": "literal_string \"ERR_INVALID_NAME\""
|
||
|
},
|
||
|
"value": "ERR_INVALID_NAME"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_stringliteral_8c31b897cf1b4c41d9a3a2c9019700f5d8d0c36c906997985403c8f4610f8246",
|
||
|
"typeString": "literal_string \"ERR_INVALID_NAME\""
|
||
|
}
|
||
|
],
|
||
|
"id": 18546,
|
||
|
"name": "require",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [
|
||
|
-18,
|
||
|
-18
|
||
|
],
|
||
|
"referencedDeclaration": -18,
|
||
|
"src": "1501:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
||
|
"typeString": "function (bool,string memory) pure"
|
||
|
}
|
||
|
},
|
||
|
"id": 18555,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "1501:52:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18556,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1501:52:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18564,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18560,
|
||
|
"name": "_symbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18541,
|
||
|
"src": "1578:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
],
|
||
|
"id": 18559,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "1572:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
|
||
|
"typeString": "type(bytes storage pointer)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18558,
|
||
|
"name": "bytes",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1572:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18561,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "1572:14:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bytes_memory_ptr",
|
||
|
"typeString": "bytes memory"
|
||
|
}
|
||
|
},
|
||
|
"id": 18562,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "1572:21:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": ">",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "30",
|
||
|
"id": 18563,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "1596:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_0_by_1",
|
||
|
"typeString": "int_const 0"
|
||
|
},
|
||
|
"value": "0"
|
||
|
},
|
||
|
"src": "1572:25:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "4552525f494e56414c49445f53594d424f4c",
|
||
|
"id": 18565,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "string",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "1599:20:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_stringliteral_8cbe13dffb618f268f4d803a75787a665744c462e7a6ba0f32e015df7f7a2fda",
|
||
|
"typeString": "literal_string \"ERR_INVALID_SYMBOL\""
|
||
|
},
|
||
|
"value": "ERR_INVALID_SYMBOL"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_stringliteral_8cbe13dffb618f268f4d803a75787a665744c462e7a6ba0f32e015df7f7a2fda",
|
||
|
"typeString": "literal_string \"ERR_INVALID_SYMBOL\""
|
||
|
}
|
||
|
],
|
||
|
"id": 18557,
|
||
|
"name": "require",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [
|
||
|
-18,
|
||
|
-18
|
||
|
],
|
||
|
"referencedDeclaration": -18,
|
||
|
"src": "1564:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
||
|
"typeString": "function (bool,string memory) pure"
|
||
|
}
|
||
|
},
|
||
|
"id": 18566,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "1564:56:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18567,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1564:56:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18570,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18568,
|
||
|
"name": "name",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18529,
|
||
|
"src": "1633:4:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "Assignment",
|
||
|
"operator": "=",
|
||
|
"rightHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18569,
|
||
|
"name": "_name",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18539,
|
||
|
"src": "1640:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"src": "1633:12:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18571,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1633:12:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18574,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18572,
|
||
|
"name": "symbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18531,
|
||
|
"src": "1656:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "Assignment",
|
||
|
"operator": "=",
|
||
|
"rightHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18573,
|
||
|
"name": "_symbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18541,
|
||
|
"src": "1665:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"src": "1656:16:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18575,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1656:16:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18578,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18576,
|
||
|
"name": "decimals",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18533,
|
||
|
"src": "1683:8:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "Assignment",
|
||
|
"operator": "=",
|
||
|
"rightHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18577,
|
||
|
"name": "_decimals",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18543,
|
||
|
"src": "1694:9:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"src": "1683:20:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"id": 18579,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1683:20:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18537,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "1022:354:32",
|
||
|
"text": " @dev initializes a new PoolTokensContainer instance\n @param _name pool name, also used as a prefix for the underlying pool token names\n @param _symbol pool symbol, also used as a prefix for the underlying pool token symbols\n @param _decimals used for the underlying pool token decimals"
|
||
|
},
|
||
|
"id": 18581,
|
||
|
"implemented": true,
|
||
|
"kind": "constructor",
|
||
|
"modifiers": [],
|
||
|
"name": "",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": null,
|
||
|
"parameters": {
|
||
|
"id": 18544,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18539,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_name",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18581,
|
||
|
"src": "1394:19:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18538,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1394:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18541,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_symbol",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18581,
|
||
|
"src": "1415:21:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18540,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1415:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18543,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_decimals",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18581,
|
||
|
"src": "1438:15:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18542,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1438:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "1393:61:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18545,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "1462:0:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "1382:329:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"virtual": false,
|
||
|
"visibility": "public"
|
||
|
},
|
||
|
{
|
||
|
"baseFunctions": [
|
||
|
18777
|
||
|
],
|
||
|
"body": {
|
||
|
"id": 18591,
|
||
|
"nodeType": "Block",
|
||
|
"src": "1904:37:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18589,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "1922:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"functionReturnParameters": 18588,
|
||
|
"id": 18590,
|
||
|
"nodeType": "Return",
|
||
|
"src": "1915:18:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18582,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "1719:103:32",
|
||
|
"text": " @dev returns the list of pool tokens\n @return list of pool tokens"
|
||
|
},
|
||
|
"functionSelector": "6d3e313e",
|
||
|
"id": 18592,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [],
|
||
|
"name": "poolTokens",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": {
|
||
|
"id": 18584,
|
||
|
"nodeType": "OverrideSpecifier",
|
||
|
"overrides": [],
|
||
|
"src": "1864:8:32"
|
||
|
},
|
||
|
"parameters": {
|
||
|
"id": 18583,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "1847:2:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18588,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18587,
|
||
|
"mutability": "mutable",
|
||
|
"name": "",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18592,
|
||
|
"src": "1882:20:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_memory_ptr",
|
||
|
"typeString": "contract ISmartToken[]"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"baseType": {
|
||
|
"contractScope": null,
|
||
|
"id": 18585,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "1882:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"id": 18586,
|
||
|
"length": null,
|
||
|
"nodeType": "ArrayTypeName",
|
||
|
"src": "1882:13:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage_ptr",
|
||
|
"typeString": "contract ISmartToken[]"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "1881:22:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "1828:113:32",
|
||
|
"stateMutability": "view",
|
||
|
"virtual": false,
|
||
|
"visibility": "external"
|
||
|
},
|
||
|
{
|
||
|
"baseFunctions": [
|
||
|
18782
|
||
|
],
|
||
|
"body": {
|
||
|
"id": 18652,
|
||
|
"nodeType": "Block",
|
||
|
"src": "2151:457:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18605,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18602,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "2223:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18603,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "2223:18:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": "<",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18604,
|
||
|
"name": "MAX_POOL_TOKENS",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18527,
|
||
|
"src": "2244:15:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"src": "2223:36:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "4552525f4d41585f4c494d49545f52454143484544",
|
||
|
"id": 18606,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "string",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "2261:23:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_stringliteral_65600c00f67ab34f2203e92774a46e26e7dd32d8502d3f07241456a23d1290f8",
|
||
|
"typeString": "literal_string \"ERR_MAX_LIMIT_REACHED\""
|
||
|
},
|
||
|
"value": "ERR_MAX_LIMIT_REACHED"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_stringliteral_65600c00f67ab34f2203e92774a46e26e7dd32d8502d3f07241456a23d1290f8",
|
||
|
"typeString": "literal_string \"ERR_MAX_LIMIT_REACHED\""
|
||
|
}
|
||
|
],
|
||
|
"id": 18601,
|
||
|
"name": "require",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [
|
||
|
-18,
|
||
|
-18
|
||
|
],
|
||
|
"referencedDeclaration": -18,
|
||
|
"src": "2215:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
||
|
"typeString": "function (bool,string memory) pure"
|
||
|
}
|
||
|
},
|
||
|
"id": 18607,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2215:70:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18608,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "2215:70:32"
|
||
|
},
|
||
|
{
|
||
|
"assignments": [
|
||
|
18610
|
||
|
],
|
||
|
"declarations": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18610,
|
||
|
"mutability": "mutable",
|
||
|
"name": "poolName",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18652,
|
||
|
"src": "2298:22:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18609,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2298:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"id": 18621,
|
||
|
"initialValue": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18612,
|
||
|
"name": "name",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18529,
|
||
|
"src": "2338:4:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18618,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18615,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "2350:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18616,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "2350:18:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": "+",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "31",
|
||
|
"id": 18617,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "2371:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_1_by_1",
|
||
|
"typeString": "int_const 1"
|
||
|
},
|
||
|
"value": "1"
|
||
|
},
|
||
|
"src": "2350:22:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"id": 18614,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "2344:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_uint8_$",
|
||
|
"typeString": "type(uint8)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18613,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2344:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18619,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2344:29:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"id": 18611,
|
||
|
"name": "concatStrDigit",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18723,
|
||
|
"src": "2323:14:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_uint8_$returns$_t_string_memory_ptr_$",
|
||
|
"typeString": "function (string memory,uint8) pure returns (string memory)"
|
||
|
}
|
||
|
},
|
||
|
"id": 18620,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2323:51:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "VariableDeclarationStatement",
|
||
|
"src": "2298:76:32"
|
||
|
},
|
||
|
{
|
||
|
"assignments": [
|
||
|
18623
|
||
|
],
|
||
|
"declarations": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18623,
|
||
|
"mutability": "mutable",
|
||
|
"name": "poolSymbol",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18652,
|
||
|
"src": "2385:24:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18622,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2385:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"id": 18634,
|
||
|
"initialValue": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18625,
|
||
|
"name": "symbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18531,
|
||
|
"src": "2427:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18631,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18628,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "2441:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18629,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "2441:18:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": "+",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "31",
|
||
|
"id": 18630,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "2462:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_1_by_1",
|
||
|
"typeString": "int_const 1"
|
||
|
},
|
||
|
"value": "1"
|
||
|
},
|
||
|
"src": "2441:22:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"id": 18627,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "2435:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_uint8_$",
|
||
|
"typeString": "type(uint8)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18626,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2435:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18632,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2435:29:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"id": 18624,
|
||
|
"name": "concatStrDigit",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18723,
|
||
|
"src": "2412:14:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_uint8_$returns$_t_string_memory_ptr_$",
|
||
|
"typeString": "function (string memory,uint8) pure returns (string memory)"
|
||
|
}
|
||
|
},
|
||
|
"id": 18633,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2412:53:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "VariableDeclarationStatement",
|
||
|
"src": "2385:80:32"
|
||
|
},
|
||
|
{
|
||
|
"assignments": [
|
||
|
18636
|
||
|
],
|
||
|
"declarations": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18636,
|
||
|
"mutability": "mutable",
|
||
|
"name": "token",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18652,
|
||
|
"src": "2478:16:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18635,
|
||
|
"name": "SmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21394,
|
||
|
"src": "2478:10:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"id": 18643,
|
||
|
"initialValue": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18639,
|
||
|
"name": "poolName",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18610,
|
||
|
"src": "2512:8:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18640,
|
||
|
"name": "poolSymbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18623,
|
||
|
"src": "2522:10:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18641,
|
||
|
"name": "decimals",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18533,
|
||
|
"src": "2534:8:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"id": 18638,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "NewExpression",
|
||
|
"src": "2497:14:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_creation_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_uint8_$returns$_t_contract$_SmartToken_$21394_$",
|
||
|
"typeString": "function (string memory,string memory,uint8) returns (contract SmartToken)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18637,
|
||
|
"name": "SmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21394,
|
||
|
"src": "2501:10:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18642,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2497:46:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "VariableDeclarationStatement",
|
||
|
"src": "2478:65:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18647,
|
||
|
"name": "token",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18636,
|
||
|
"src": "2571:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18644,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "2554:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18646,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "push",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "2554:16:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_arraypush_nonpayable$_t_contract$_ISmartToken_$21517_$returns$__$",
|
||
|
"typeString": "function (contract ISmartToken)"
|
||
|
}
|
||
|
},
|
||
|
"id": 18648,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2554:23:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18649,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "2554:23:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18650,
|
||
|
"name": "token",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18636,
|
||
|
"src": "2595:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
},
|
||
|
"functionReturnParameters": 18600,
|
||
|
"id": 18651,
|
||
|
"nodeType": "Return",
|
||
|
"src": "2588:12:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18593,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "1949:123:32",
|
||
|
"text": " @dev creates a new pool token and adds it to the list\n @return new pool token address"
|
||
|
},
|
||
|
"functionSelector": "9cbf9e36",
|
||
|
"id": 18653,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"id": 18597,
|
||
|
"modifierName": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18596,
|
||
|
"name": "ownerOnly",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 22089,
|
||
|
"src": "2119:9:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_modifier$__$",
|
||
|
"typeString": "modifier ()"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "ModifierInvocation",
|
||
|
"src": "2119:9:32"
|
||
|
}
|
||
|
],
|
||
|
"name": "createToken",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": {
|
||
|
"id": 18595,
|
||
|
"nodeType": "OverrideSpecifier",
|
||
|
"overrides": [],
|
||
|
"src": "2110:8:32"
|
||
|
},
|
||
|
"parameters": {
|
||
|
"id": 18594,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "2098:2:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18600,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18599,
|
||
|
"mutability": "mutable",
|
||
|
"name": "",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18653,
|
||
|
"src": "2138:11:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18598,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "2138:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "2137:13:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "2078:530:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"virtual": false,
|
||
|
"visibility": "external"
|
||
|
},
|
||
|
{
|
||
|
"baseFunctions": [
|
||
|
18791
|
||
|
],
|
||
|
"body": {
|
||
|
"id": 18673,
|
||
|
"nodeType": "Block",
|
||
|
"src": "3028:45:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18669,
|
||
|
"name": "_to",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18658,
|
||
|
"src": "3052:3:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18670,
|
||
|
"name": "_amount",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18660,
|
||
|
"src": "3057:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18666,
|
||
|
"name": "_token",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18656,
|
||
|
"src": "3039:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"id": 18668,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "issue",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": 21509,
|
||
|
"src": "3039:12:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$",
|
||
|
"typeString": "function (address,uint256) external"
|
||
|
}
|
||
|
},
|
||
|
"id": 18671,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3039:26:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18672,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "3039:26:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18654,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "2616:314:32",
|
||
|
"text": " @dev increases the pool token supply and sends the new tokens to the given account\n can only be called by the contract owner\n @param _token pool token address\n @param _to account to receive the newly minted tokens\n @param _amount amount to mint"
|
||
|
},
|
||
|
"functionSelector": "c6c3bbe6",
|
||
|
"id": 18674,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"id": 18664,
|
||
|
"modifierName": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18663,
|
||
|
"name": "ownerOnly",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 22089,
|
||
|
"src": "3018:9:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_modifier$__$",
|
||
|
"typeString": "modifier ()"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "ModifierInvocation",
|
||
|
"src": "3018:9:32"
|
||
|
}
|
||
|
],
|
||
|
"name": "mint",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": {
|
||
|
"id": 18662,
|
||
|
"nodeType": "OverrideSpecifier",
|
||
|
"overrides": [],
|
||
|
"src": "3009:8:32"
|
||
|
},
|
||
|
"parameters": {
|
||
|
"id": 18661,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18656,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_token",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18674,
|
||
|
"src": "2950:18:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18655,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "2950:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18658,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_to",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18674,
|
||
|
"src": "2970:11:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18657,
|
||
|
"name": "address",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2970:7:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18660,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_amount",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18674,
|
||
|
"src": "2983:15:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18659,
|
||
|
"name": "uint256",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2983:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "2949:50:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18665,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "3028:0:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "2936:137:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"virtual": false,
|
||
|
"visibility": "external"
|
||
|
},
|
||
|
{
|
||
|
"baseFunctions": [
|
||
|
18800
|
||
|
],
|
||
|
"body": {
|
||
|
"id": 18694,
|
||
|
"nodeType": "Block",
|
||
|
"src": "3482:49:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18690,
|
||
|
"name": "_from",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18679,
|
||
|
"src": "3508:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18691,
|
||
|
"name": "_amount",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18681,
|
||
|
"src": "3515:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18687,
|
||
|
"name": "_token",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18677,
|
||
|
"src": "3493:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"id": 18689,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "destroy",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": 21516,
|
||
|
"src": "3493:14:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$",
|
||
|
"typeString": "function (address,uint256) external"
|
||
|
}
|
||
|
},
|
||
|
"id": 18692,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3493:30:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18693,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "3493:30:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18675,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "3081:301:32",
|
||
|
"text": " @dev removes tokens from the given account and decreases the pool token supply\n can only be called by the contract owner\n @param _token pool token address\n @param _from account to remove the tokens from\n @param _amount amount to burn"
|
||
|
},
|
||
|
"functionSelector": "f6b911bc",
|
||
|
"id": 18695,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"id": 18685,
|
||
|
"modifierName": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18684,
|
||
|
"name": "ownerOnly",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 22089,
|
||
|
"src": "3472:9:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_modifier$__$",
|
||
|
"typeString": "modifier ()"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "ModifierInvocation",
|
||
|
"src": "3472:9:32"
|
||
|
}
|
||
|
],
|
||
|
"name": "burn",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": {
|
||
|
"id": 18683,
|
||
|
"nodeType": "OverrideSpecifier",
|
||
|
"overrides": [],
|
||
|
"src": "3463:8:32"
|
||
|
},
|
||
|
"parameters": {
|
||
|
"id": 18682,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18677,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_token",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18695,
|
||
|
"src": "3402:18:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18676,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "3402:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18679,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_from",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18695,
|
||
|
"src": "3422:13:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18678,
|
||
|
"name": "address",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3422:7:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18681,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_amount",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18695,
|
||
|
"src": "3437:15:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18680,
|
||
|
"name": "uint256",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3437:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "3401:52:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18686,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "3482:0:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "3388:143:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"virtual": false,
|
||
|
"visibility": "external"
|
||
|
},
|
||
|
{
|
||
|
"body": {
|
||
|
"id": 18722,
|
||
|
"nodeType": "Block",
|
||
|
"src": "3852:85:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18709,
|
||
|
"name": "_str",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18698,
|
||
|
"src": "3894:4:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"id": 18718,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "30",
|
||
|
"id": 18714,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "string",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "3913:3:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d",
|
||
|
"typeString": "literal_string \"0\""
|
||
|
},
|
||
|
"value": "0"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d",
|
||
|
"typeString": "literal_string \"0\""
|
||
|
}
|
||
|
],
|
||
|
"id": 18713,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "3906:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_bytes1_$",
|
||
|
"typeString": "type(bytes1)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18712,
|
||
|
"name": "bytes1",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3906:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18715,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3906:11:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bytes1",
|
||
|
"typeString": "bytes1"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bytes1",
|
||
|
"typeString": "bytes1"
|
||
|
}
|
||
|
],
|
||
|
"id": 18711,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "3900:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_uint8_$",
|
||
|
"typeString": "type(uint8)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18710,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3900:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18716,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3900:18:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": "+",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18717,
|
||
|
"name": "_digit",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18700,
|
||
|
"src": "3921:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"src": "3900:27:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18707,
|
||
|
"name": "abi",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": -1,
|
||
|
"src": "3877:3:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_magic_abi",
|
||
|
"typeString": "abi"
|
||
|
}
|
||
|
},
|
||
|
"id": 18708,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "encodePacked",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "3877:16:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
||
|
"typeString": "function () pure returns (bytes memory)"
|
||
|
}
|
||
|
},
|
||
|
"id": 18719,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3877:51:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bytes_memory_ptr",
|
||
|
"typeString": "bytes memory"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bytes_memory_ptr",
|
||
|
"typeString": "bytes memory"
|
||
|
}
|
||
|
],
|
||
|
"id": 18706,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "3870:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_string_storage_ptr_$",
|
||
|
"typeString": "type(string storage pointer)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18705,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3870:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18720,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3870:59:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"functionReturnParameters": 18704,
|
||
|
"id": 18721,
|
||
|
"nodeType": "Return",
|
||
|
"src": "3863:66:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18696,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "3539:212:32",
|
||
|
"text": " @dev concatenates a string and a digit (single only) and returns the result string\n @param _str string\n @param _digit digit\n @return concatenated string"
|
||
|
},
|
||
|
"id": 18723,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [],
|
||
|
"name": "concatStrDigit",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": null,
|
||
|
"parameters": {
|
||
|
"id": 18701,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18698,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_str",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18723,
|
||
|
"src": "3781:18:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18697,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3781:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18700,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_digit",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18723,
|
||
|
"src": "3801:12:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18699,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3801:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "3780:34:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18704,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18703,
|
||
|
"mutability": "mutable",
|
||
|
"name": "",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18723,
|
||
|
"src": "3837:13:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18702,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3837:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "3836:15:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "3757:180:32",
|
||
|
"stateMutability": "pure",
|
||
|
"virtual": false,
|
||
|
"visibility": "private"
|
||
|
}
|
||
|
],
|
||
|
"scope": 18725,
|
||
|
"src": "592:3348:32"
|
||
|
}
|
||
|
],
|
||
|
"src": "52:3890:32"
|
||
|
},
|
||
|
"legacyAST": {
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/converter/types/liquidity-pool-v2/PoolTokensContainer.sol",
|
||
|
"exportedSymbols": {
|
||
|
"PoolTokensContainer": [
|
||
|
18724
|
||
|
]
|
||
|
},
|
||
|
"id": 18725,
|
||
|
"license": "SEE LICENSE IN LICENSE",
|
||
|
"nodeType": "SourceUnit",
|
||
|
"nodes": [
|
||
|
{
|
||
|
"id": 18513,
|
||
|
"literals": [
|
||
|
"solidity",
|
||
|
"0.6",
|
||
|
".12"
|
||
|
],
|
||
|
"nodeType": "PragmaDirective",
|
||
|
"src": "52:23:32"
|
||
|
},
|
||
|
{
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/converter/types/liquidity-pool-v2/interfaces/IPoolTokensContainer.sol",
|
||
|
"file": "./interfaces/IPoolTokensContainer.sol",
|
||
|
"id": 18514,
|
||
|
"nodeType": "ImportDirective",
|
||
|
"scope": 18725,
|
||
|
"sourceUnit": 18802,
|
||
|
"src": "77:47:32",
|
||
|
"symbolAliases": [],
|
||
|
"unitAlias": ""
|
||
|
},
|
||
|
{
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/utility/Owned.sol",
|
||
|
"file": "../../../utility/Owned.sol",
|
||
|
"id": 18515,
|
||
|
"nodeType": "ImportDirective",
|
||
|
"scope": 18725,
|
||
|
"sourceUnit": 22154,
|
||
|
"src": "126:36:32",
|
||
|
"symbolAliases": [],
|
||
|
"unitAlias": ""
|
||
|
},
|
||
|
{
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/utility/TokenHolder.sol",
|
||
|
"file": "../../../utility/TokenHolder.sol",
|
||
|
"id": 18516,
|
||
|
"nodeType": "ImportDirective",
|
||
|
"scope": 18725,
|
||
|
"sourceUnit": 22911,
|
||
|
"src": "164:42:32",
|
||
|
"symbolAliases": [],
|
||
|
"unitAlias": ""
|
||
|
},
|
||
|
{
|
||
|
"absolutePath": "/home/lash/src/ext/cic/grassrootseconomics/bancor-contracts/solidity/contracts/token/SmartToken.sol",
|
||
|
"file": "../../../token/SmartToken.sol",
|
||
|
"id": 18517,
|
||
|
"nodeType": "ImportDirective",
|
||
|
"scope": 18725,
|
||
|
"sourceUnit": 21395,
|
||
|
"src": "208:39:32",
|
||
|
"symbolAliases": [],
|
||
|
"unitAlias": ""
|
||
|
},
|
||
|
{
|
||
|
"abstract": false,
|
||
|
"baseContracts": [
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"baseName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18519,
|
||
|
"name": "IPoolTokensContainer",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 18801,
|
||
|
"src": "624:20:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_IPoolTokensContainer_$18801",
|
||
|
"typeString": "contract IPoolTokensContainer"
|
||
|
}
|
||
|
},
|
||
|
"id": 18520,
|
||
|
"nodeType": "InheritanceSpecifier",
|
||
|
"src": "624:20:32"
|
||
|
},
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"baseName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18521,
|
||
|
"name": "Owned",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 22153,
|
||
|
"src": "646:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_Owned_$22153",
|
||
|
"typeString": "contract Owned"
|
||
|
}
|
||
|
},
|
||
|
"id": 18522,
|
||
|
"nodeType": "InheritanceSpecifier",
|
||
|
"src": "646:5:32"
|
||
|
},
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"baseName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18523,
|
||
|
"name": "TokenHolder",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 22910,
|
||
|
"src": "653:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_TokenHolder_$22910",
|
||
|
"typeString": "contract TokenHolder"
|
||
|
}
|
||
|
},
|
||
|
"id": 18524,
|
||
|
"nodeType": "InheritanceSpecifier",
|
||
|
"src": "653:11:32"
|
||
|
}
|
||
|
],
|
||
|
"contractDependencies": [
|
||
|
13349,
|
||
|
18801,
|
||
|
21394,
|
||
|
22153,
|
||
|
22861,
|
||
|
22910,
|
||
|
22996,
|
||
|
23182,
|
||
|
23242
|
||
|
],
|
||
|
"contractKind": "contract",
|
||
|
"documentation": {
|
||
|
"id": 18518,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "251:339:32",
|
||
|
"text": " @dev The PoolTokensContainer contract serves as a container for multiple pool tokens.\n It is used by specific liquidity pool types that require more than a single pool token,\n while still maintaining the single converter / anchor relationship.\n It maintains and provides a list of the underlying pool tokens."
|
||
|
},
|
||
|
"fullyImplemented": true,
|
||
|
"id": 18724,
|
||
|
"linearizedBaseContracts": [
|
||
|
18724,
|
||
|
22910,
|
||
|
22996,
|
||
|
22153,
|
||
|
22861,
|
||
|
18801,
|
||
|
13349,
|
||
|
23242,
|
||
|
23182
|
||
|
],
|
||
|
"name": "PoolTokensContainer",
|
||
|
"nodeType": "ContractDefinition",
|
||
|
"nodes": [
|
||
|
{
|
||
|
"constant": true,
|
||
|
"id": 18527,
|
||
|
"mutability": "constant",
|
||
|
"name": "MAX_POOL_TOKENS",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "672:43:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18525,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "672:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"value": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "35",
|
||
|
"id": 18526,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "714:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_5_by_1",
|
||
|
"typeString": "int_const 5"
|
||
|
},
|
||
|
"value": "5"
|
||
|
},
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"functionSelector": "06fdde03",
|
||
|
"id": 18529,
|
||
|
"mutability": "mutable",
|
||
|
"name": "name",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "767:18:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18528,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "767:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "public"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"functionSelector": "95d89b41",
|
||
|
"id": 18531,
|
||
|
"mutability": "mutable",
|
||
|
"name": "symbol",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "821:20:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18530,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "821:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "public"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"functionSelector": "313ce567",
|
||
|
"id": 18533,
|
||
|
"mutability": "mutable",
|
||
|
"name": "decimals",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "877:21:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18532,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "877:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "public"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18536,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18724,
|
||
|
"src": "953:33:32",
|
||
|
"stateVariable": true,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[]"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"baseType": {
|
||
|
"contractScope": null,
|
||
|
"id": 18534,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "953:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"id": 18535,
|
||
|
"length": null,
|
||
|
"nodeType": "ArrayTypeName",
|
||
|
"src": "953:13:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage_ptr",
|
||
|
"typeString": "contract ISmartToken[]"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "private"
|
||
|
},
|
||
|
{
|
||
|
"body": {
|
||
|
"id": 18580,
|
||
|
"nodeType": "Block",
|
||
|
"src": "1462:249:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18553,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18549,
|
||
|
"name": "_name",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18539,
|
||
|
"src": "1515:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
],
|
||
|
"id": 18548,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "1509:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
|
||
|
"typeString": "type(bytes storage pointer)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18547,
|
||
|
"name": "bytes",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1509:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18550,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "1509:12:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bytes_memory_ptr",
|
||
|
"typeString": "bytes memory"
|
||
|
}
|
||
|
},
|
||
|
"id": 18551,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "1509:19:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": ">",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "30",
|
||
|
"id": 18552,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "1531:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_0_by_1",
|
||
|
"typeString": "int_const 0"
|
||
|
},
|
||
|
"value": "0"
|
||
|
},
|
||
|
"src": "1509:23:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "4552525f494e56414c49445f4e414d45",
|
||
|
"id": 18554,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "string",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "1534:18:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_stringliteral_8c31b897cf1b4c41d9a3a2c9019700f5d8d0c36c906997985403c8f4610f8246",
|
||
|
"typeString": "literal_string \"ERR_INVALID_NAME\""
|
||
|
},
|
||
|
"value": "ERR_INVALID_NAME"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_stringliteral_8c31b897cf1b4c41d9a3a2c9019700f5d8d0c36c906997985403c8f4610f8246",
|
||
|
"typeString": "literal_string \"ERR_INVALID_NAME\""
|
||
|
}
|
||
|
],
|
||
|
"id": 18546,
|
||
|
"name": "require",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [
|
||
|
-18,
|
||
|
-18
|
||
|
],
|
||
|
"referencedDeclaration": -18,
|
||
|
"src": "1501:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
||
|
"typeString": "function (bool,string memory) pure"
|
||
|
}
|
||
|
},
|
||
|
"id": 18555,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "1501:52:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18556,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1501:52:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18564,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18560,
|
||
|
"name": "_symbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18541,
|
||
|
"src": "1578:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
],
|
||
|
"id": 18559,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "1572:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
|
||
|
"typeString": "type(bytes storage pointer)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18558,
|
||
|
"name": "bytes",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1572:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18561,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "1572:14:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bytes_memory_ptr",
|
||
|
"typeString": "bytes memory"
|
||
|
}
|
||
|
},
|
||
|
"id": 18562,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "1572:21:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": ">",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "30",
|
||
|
"id": 18563,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "1596:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_0_by_1",
|
||
|
"typeString": "int_const 0"
|
||
|
},
|
||
|
"value": "0"
|
||
|
},
|
||
|
"src": "1572:25:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "4552525f494e56414c49445f53594d424f4c",
|
||
|
"id": 18565,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "string",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "1599:20:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_stringliteral_8cbe13dffb618f268f4d803a75787a665744c462e7a6ba0f32e015df7f7a2fda",
|
||
|
"typeString": "literal_string \"ERR_INVALID_SYMBOL\""
|
||
|
},
|
||
|
"value": "ERR_INVALID_SYMBOL"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_stringliteral_8cbe13dffb618f268f4d803a75787a665744c462e7a6ba0f32e015df7f7a2fda",
|
||
|
"typeString": "literal_string \"ERR_INVALID_SYMBOL\""
|
||
|
}
|
||
|
],
|
||
|
"id": 18557,
|
||
|
"name": "require",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [
|
||
|
-18,
|
||
|
-18
|
||
|
],
|
||
|
"referencedDeclaration": -18,
|
||
|
"src": "1564:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
||
|
"typeString": "function (bool,string memory) pure"
|
||
|
}
|
||
|
},
|
||
|
"id": 18566,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "1564:56:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18567,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1564:56:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18570,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18568,
|
||
|
"name": "name",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18529,
|
||
|
"src": "1633:4:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "Assignment",
|
||
|
"operator": "=",
|
||
|
"rightHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18569,
|
||
|
"name": "_name",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18539,
|
||
|
"src": "1640:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"src": "1633:12:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18571,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1633:12:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18574,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18572,
|
||
|
"name": "symbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18531,
|
||
|
"src": "1656:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "Assignment",
|
||
|
"operator": "=",
|
||
|
"rightHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18573,
|
||
|
"name": "_symbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18541,
|
||
|
"src": "1665:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"src": "1656:16:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18575,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1656:16:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18578,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18576,
|
||
|
"name": "decimals",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18533,
|
||
|
"src": "1683:8:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "Assignment",
|
||
|
"operator": "=",
|
||
|
"rightHandSide": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18577,
|
||
|
"name": "_decimals",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18543,
|
||
|
"src": "1694:9:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"src": "1683:20:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"id": 18579,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "1683:20:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18537,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "1022:354:32",
|
||
|
"text": " @dev initializes a new PoolTokensContainer instance\n @param _name pool name, also used as a prefix for the underlying pool token names\n @param _symbol pool symbol, also used as a prefix for the underlying pool token symbols\n @param _decimals used for the underlying pool token decimals"
|
||
|
},
|
||
|
"id": 18581,
|
||
|
"implemented": true,
|
||
|
"kind": "constructor",
|
||
|
"modifiers": [],
|
||
|
"name": "",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": null,
|
||
|
"parameters": {
|
||
|
"id": 18544,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18539,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_name",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18581,
|
||
|
"src": "1394:19:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18538,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1394:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18541,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_symbol",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18581,
|
||
|
"src": "1415:21:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18540,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1415:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18543,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_decimals",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18581,
|
||
|
"src": "1438:15:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18542,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "1438:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "1393:61:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18545,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "1462:0:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "1382:329:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"virtual": false,
|
||
|
"visibility": "public"
|
||
|
},
|
||
|
{
|
||
|
"baseFunctions": [
|
||
|
18777
|
||
|
],
|
||
|
"body": {
|
||
|
"id": 18591,
|
||
|
"nodeType": "Block",
|
||
|
"src": "1904:37:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18589,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "1922:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"functionReturnParameters": 18588,
|
||
|
"id": 18590,
|
||
|
"nodeType": "Return",
|
||
|
"src": "1915:18:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18582,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "1719:103:32",
|
||
|
"text": " @dev returns the list of pool tokens\n @return list of pool tokens"
|
||
|
},
|
||
|
"functionSelector": "6d3e313e",
|
||
|
"id": 18592,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [],
|
||
|
"name": "poolTokens",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": {
|
||
|
"id": 18584,
|
||
|
"nodeType": "OverrideSpecifier",
|
||
|
"overrides": [],
|
||
|
"src": "1864:8:32"
|
||
|
},
|
||
|
"parameters": {
|
||
|
"id": 18583,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "1847:2:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18588,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18587,
|
||
|
"mutability": "mutable",
|
||
|
"name": "",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18592,
|
||
|
"src": "1882:20:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_memory_ptr",
|
||
|
"typeString": "contract ISmartToken[]"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"baseType": {
|
||
|
"contractScope": null,
|
||
|
"id": 18585,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "1882:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"id": 18586,
|
||
|
"length": null,
|
||
|
"nodeType": "ArrayTypeName",
|
||
|
"src": "1882:13:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage_ptr",
|
||
|
"typeString": "contract ISmartToken[]"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "1881:22:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "1828:113:32",
|
||
|
"stateMutability": "view",
|
||
|
"virtual": false,
|
||
|
"visibility": "external"
|
||
|
},
|
||
|
{
|
||
|
"baseFunctions": [
|
||
|
18782
|
||
|
],
|
||
|
"body": {
|
||
|
"id": 18652,
|
||
|
"nodeType": "Block",
|
||
|
"src": "2151:457:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18605,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18602,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "2223:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18603,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "2223:18:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": "<",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18604,
|
||
|
"name": "MAX_POOL_TOKENS",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18527,
|
||
|
"src": "2244:15:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"src": "2223:36:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "4552525f4d41585f4c494d49545f52454143484544",
|
||
|
"id": 18606,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "string",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "2261:23:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_stringliteral_65600c00f67ab34f2203e92774a46e26e7dd32d8502d3f07241456a23d1290f8",
|
||
|
"typeString": "literal_string \"ERR_MAX_LIMIT_REACHED\""
|
||
|
},
|
||
|
"value": "ERR_MAX_LIMIT_REACHED"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bool",
|
||
|
"typeString": "bool"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_stringliteral_65600c00f67ab34f2203e92774a46e26e7dd32d8502d3f07241456a23d1290f8",
|
||
|
"typeString": "literal_string \"ERR_MAX_LIMIT_REACHED\""
|
||
|
}
|
||
|
],
|
||
|
"id": 18601,
|
||
|
"name": "require",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [
|
||
|
-18,
|
||
|
-18
|
||
|
],
|
||
|
"referencedDeclaration": -18,
|
||
|
"src": "2215:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
||
|
"typeString": "function (bool,string memory) pure"
|
||
|
}
|
||
|
},
|
||
|
"id": 18607,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2215:70:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18608,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "2215:70:32"
|
||
|
},
|
||
|
{
|
||
|
"assignments": [
|
||
|
18610
|
||
|
],
|
||
|
"declarations": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18610,
|
||
|
"mutability": "mutable",
|
||
|
"name": "poolName",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18652,
|
||
|
"src": "2298:22:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18609,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2298:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"id": 18621,
|
||
|
"initialValue": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18612,
|
||
|
"name": "name",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18529,
|
||
|
"src": "2338:4:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18618,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18615,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "2350:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18616,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "2350:18:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": "+",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "31",
|
||
|
"id": 18617,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "2371:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_1_by_1",
|
||
|
"typeString": "int_const 1"
|
||
|
},
|
||
|
"value": "1"
|
||
|
},
|
||
|
"src": "2350:22:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"id": 18614,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "2344:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_uint8_$",
|
||
|
"typeString": "type(uint8)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18613,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2344:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18619,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2344:29:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"id": 18611,
|
||
|
"name": "concatStrDigit",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18723,
|
||
|
"src": "2323:14:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_uint8_$returns$_t_string_memory_ptr_$",
|
||
|
"typeString": "function (string memory,uint8) pure returns (string memory)"
|
||
|
}
|
||
|
},
|
||
|
"id": 18620,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2323:51:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "VariableDeclarationStatement",
|
||
|
"src": "2298:76:32"
|
||
|
},
|
||
|
{
|
||
|
"assignments": [
|
||
|
18623
|
||
|
],
|
||
|
"declarations": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18623,
|
||
|
"mutability": "mutable",
|
||
|
"name": "poolSymbol",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18652,
|
||
|
"src": "2385:24:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18622,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2385:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"id": 18634,
|
||
|
"initialValue": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18625,
|
||
|
"name": "symbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18531,
|
||
|
"src": "2427:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"id": 18631,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18628,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "2441:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18629,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "length",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "2441:18:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": "+",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "31",
|
||
|
"id": 18630,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "number",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "2462:1:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_rational_1_by_1",
|
||
|
"typeString": "int_const 1"
|
||
|
},
|
||
|
"value": "1"
|
||
|
},
|
||
|
"src": "2441:22:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"id": 18627,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "2435:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_uint8_$",
|
||
|
"typeString": "type(uint8)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18626,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2435:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18632,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2435:29:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_storage",
|
||
|
"typeString": "string storage ref"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"id": 18624,
|
||
|
"name": "concatStrDigit",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18723,
|
||
|
"src": "2412:14:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_uint8_$returns$_t_string_memory_ptr_$",
|
||
|
"typeString": "function (string memory,uint8) pure returns (string memory)"
|
||
|
}
|
||
|
},
|
||
|
"id": 18633,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2412:53:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "VariableDeclarationStatement",
|
||
|
"src": "2385:80:32"
|
||
|
},
|
||
|
{
|
||
|
"assignments": [
|
||
|
18636
|
||
|
],
|
||
|
"declarations": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18636,
|
||
|
"mutability": "mutable",
|
||
|
"name": "token",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18652,
|
||
|
"src": "2478:16:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18635,
|
||
|
"name": "SmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21394,
|
||
|
"src": "2478:10:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"id": 18643,
|
||
|
"initialValue": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18639,
|
||
|
"name": "poolName",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18610,
|
||
|
"src": "2512:8:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18640,
|
||
|
"name": "poolSymbol",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18623,
|
||
|
"src": "2522:10:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18641,
|
||
|
"name": "decimals",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18533,
|
||
|
"src": "2534:8:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"id": 18638,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "NewExpression",
|
||
|
"src": "2497:14:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_creation_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_uint8_$returns$_t_contract$_SmartToken_$21394_$",
|
||
|
"typeString": "function (string memory,string memory,uint8) returns (contract SmartToken)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18637,
|
||
|
"name": "SmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21394,
|
||
|
"src": "2501:10:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18642,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2497:46:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "VariableDeclarationStatement",
|
||
|
"src": "2478:65:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18647,
|
||
|
"name": "token",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18636,
|
||
|
"src": "2571:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18644,
|
||
|
"name": "_poolTokens",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18536,
|
||
|
"src": "2554:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_array$_t_contract$_ISmartToken_$21517_$dyn_storage",
|
||
|
"typeString": "contract ISmartToken[] storage ref"
|
||
|
}
|
||
|
},
|
||
|
"id": 18646,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "push",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "2554:16:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_arraypush_nonpayable$_t_contract$_ISmartToken_$21517_$returns$__$",
|
||
|
"typeString": "function (contract ISmartToken)"
|
||
|
}
|
||
|
},
|
||
|
"id": 18648,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "2554:23:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18649,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "2554:23:32"
|
||
|
},
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18650,
|
||
|
"name": "token",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18636,
|
||
|
"src": "2595:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_SmartToken_$21394",
|
||
|
"typeString": "contract SmartToken"
|
||
|
}
|
||
|
},
|
||
|
"functionReturnParameters": 18600,
|
||
|
"id": 18651,
|
||
|
"nodeType": "Return",
|
||
|
"src": "2588:12:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18593,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "1949:123:32",
|
||
|
"text": " @dev creates a new pool token and adds it to the list\n @return new pool token address"
|
||
|
},
|
||
|
"functionSelector": "9cbf9e36",
|
||
|
"id": 18653,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"id": 18597,
|
||
|
"modifierName": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18596,
|
||
|
"name": "ownerOnly",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 22089,
|
||
|
"src": "2119:9:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_modifier$__$",
|
||
|
"typeString": "modifier ()"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "ModifierInvocation",
|
||
|
"src": "2119:9:32"
|
||
|
}
|
||
|
],
|
||
|
"name": "createToken",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": {
|
||
|
"id": 18595,
|
||
|
"nodeType": "OverrideSpecifier",
|
||
|
"overrides": [],
|
||
|
"src": "2110:8:32"
|
||
|
},
|
||
|
"parameters": {
|
||
|
"id": 18594,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "2098:2:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18600,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18599,
|
||
|
"mutability": "mutable",
|
||
|
"name": "",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18653,
|
||
|
"src": "2138:11:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18598,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "2138:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "2137:13:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "2078:530:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"virtual": false,
|
||
|
"visibility": "external"
|
||
|
},
|
||
|
{
|
||
|
"baseFunctions": [
|
||
|
18791
|
||
|
],
|
||
|
"body": {
|
||
|
"id": 18673,
|
||
|
"nodeType": "Block",
|
||
|
"src": "3028:45:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18669,
|
||
|
"name": "_to",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18658,
|
||
|
"src": "3052:3:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18670,
|
||
|
"name": "_amount",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18660,
|
||
|
"src": "3057:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18666,
|
||
|
"name": "_token",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18656,
|
||
|
"src": "3039:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"id": 18668,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "issue",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": 21509,
|
||
|
"src": "3039:12:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$",
|
||
|
"typeString": "function (address,uint256) external"
|
||
|
}
|
||
|
},
|
||
|
"id": 18671,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3039:26:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18672,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "3039:26:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18654,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "2616:314:32",
|
||
|
"text": " @dev increases the pool token supply and sends the new tokens to the given account\n can only be called by the contract owner\n @param _token pool token address\n @param _to account to receive the newly minted tokens\n @param _amount amount to mint"
|
||
|
},
|
||
|
"functionSelector": "c6c3bbe6",
|
||
|
"id": 18674,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"id": 18664,
|
||
|
"modifierName": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18663,
|
||
|
"name": "ownerOnly",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 22089,
|
||
|
"src": "3018:9:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_modifier$__$",
|
||
|
"typeString": "modifier ()"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "ModifierInvocation",
|
||
|
"src": "3018:9:32"
|
||
|
}
|
||
|
],
|
||
|
"name": "mint",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": {
|
||
|
"id": 18662,
|
||
|
"nodeType": "OverrideSpecifier",
|
||
|
"overrides": [],
|
||
|
"src": "3009:8:32"
|
||
|
},
|
||
|
"parameters": {
|
||
|
"id": 18661,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18656,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_token",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18674,
|
||
|
"src": "2950:18:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18655,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "2950:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18658,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_to",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18674,
|
||
|
"src": "2970:11:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18657,
|
||
|
"name": "address",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2970:7:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18660,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_amount",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18674,
|
||
|
"src": "2983:15:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18659,
|
||
|
"name": "uint256",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "2983:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "2949:50:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18665,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "3028:0:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "2936:137:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"virtual": false,
|
||
|
"visibility": "external"
|
||
|
},
|
||
|
{
|
||
|
"baseFunctions": [
|
||
|
18800
|
||
|
],
|
||
|
"body": {
|
||
|
"id": 18694,
|
||
|
"nodeType": "Block",
|
||
|
"src": "3482:49:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18690,
|
||
|
"name": "_from",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18679,
|
||
|
"src": "3508:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18691,
|
||
|
"name": "_amount",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18681,
|
||
|
"src": "3515:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18687,
|
||
|
"name": "_token",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18677,
|
||
|
"src": "3493:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"id": 18689,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "destroy",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": 21516,
|
||
|
"src": "3493:14:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$",
|
||
|
"typeString": "function (address,uint256) external"
|
||
|
}
|
||
|
},
|
||
|
"id": 18692,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3493:30:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_tuple$__$",
|
||
|
"typeString": "tuple()"
|
||
|
}
|
||
|
},
|
||
|
"id": 18693,
|
||
|
"nodeType": "ExpressionStatement",
|
||
|
"src": "3493:30:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18675,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "3081:301:32",
|
||
|
"text": " @dev removes tokens from the given account and decreases the pool token supply\n can only be called by the contract owner\n @param _token pool token address\n @param _from account to remove the tokens from\n @param _amount amount to burn"
|
||
|
},
|
||
|
"functionSelector": "f6b911bc",
|
||
|
"id": 18695,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [
|
||
|
{
|
||
|
"arguments": null,
|
||
|
"id": 18685,
|
||
|
"modifierName": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18684,
|
||
|
"name": "ownerOnly",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 22089,
|
||
|
"src": "3472:9:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_modifier$__$",
|
||
|
"typeString": "modifier ()"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "ModifierInvocation",
|
||
|
"src": "3472:9:32"
|
||
|
}
|
||
|
],
|
||
|
"name": "burn",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": {
|
||
|
"id": 18683,
|
||
|
"nodeType": "OverrideSpecifier",
|
||
|
"overrides": [],
|
||
|
"src": "3463:8:32"
|
||
|
},
|
||
|
"parameters": {
|
||
|
"id": 18682,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18677,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_token",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18695,
|
||
|
"src": "3402:18:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"contractScope": null,
|
||
|
"id": 18676,
|
||
|
"name": "ISmartToken",
|
||
|
"nodeType": "UserDefinedTypeName",
|
||
|
"referencedDeclaration": 21517,
|
||
|
"src": "3402:11:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_contract$_ISmartToken_$21517",
|
||
|
"typeString": "contract ISmartToken"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18679,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_from",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18695,
|
||
|
"src": "3422:13:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18678,
|
||
|
"name": "address",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3422:7:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_address",
|
||
|
"typeString": "address"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18681,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_amount",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18695,
|
||
|
"src": "3437:15:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18680,
|
||
|
"name": "uint256",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3437:7:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint256",
|
||
|
"typeString": "uint256"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "3401:52:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18686,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [],
|
||
|
"src": "3482:0:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "3388:143:32",
|
||
|
"stateMutability": "nonpayable",
|
||
|
"virtual": false,
|
||
|
"visibility": "external"
|
||
|
},
|
||
|
{
|
||
|
"body": {
|
||
|
"id": 18722,
|
||
|
"nodeType": "Block",
|
||
|
"src": "3852:85:32",
|
||
|
"statements": [
|
||
|
{
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"id": 18709,
|
||
|
"name": "_str",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18698,
|
||
|
"src": "3894:4:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"commonType": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"id": 18718,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"lValueRequested": false,
|
||
|
"leftExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"arguments": [
|
||
|
{
|
||
|
"argumentTypes": null,
|
||
|
"hexValue": "30",
|
||
|
"id": 18714,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "string",
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "Literal",
|
||
|
"src": "3913:3:32",
|
||
|
"subdenomination": null,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d",
|
||
|
"typeString": "literal_string \"0\""
|
||
|
},
|
||
|
"value": "0"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d",
|
||
|
"typeString": "literal_string \"0\""
|
||
|
}
|
||
|
],
|
||
|
"id": 18713,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "3906:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_bytes1_$",
|
||
|
"typeString": "type(bytes1)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18712,
|
||
|
"name": "bytes1",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3906:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18715,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3906:11:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bytes1",
|
||
|
"typeString": "bytes1"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bytes1",
|
||
|
"typeString": "bytes1"
|
||
|
}
|
||
|
],
|
||
|
"id": 18711,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "3900:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_uint8_$",
|
||
|
"typeString": "type(uint8)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18710,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3900:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18716,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3900:18:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"nodeType": "BinaryOperation",
|
||
|
"operator": "+",
|
||
|
"rightExpression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18717,
|
||
|
"name": "_digit",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": 18700,
|
||
|
"src": "3921:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"src": "3900:27:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
},
|
||
|
{
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": null,
|
||
|
"id": 18707,
|
||
|
"name": "abi",
|
||
|
"nodeType": "Identifier",
|
||
|
"overloadedDeclarations": [],
|
||
|
"referencedDeclaration": -1,
|
||
|
"src": "3877:3:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_magic_abi",
|
||
|
"typeString": "abi"
|
||
|
}
|
||
|
},
|
||
|
"id": 18708,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"memberName": "encodePacked",
|
||
|
"nodeType": "MemberAccess",
|
||
|
"referencedDeclaration": null,
|
||
|
"src": "3877:16:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
||
|
"typeString": "function () pure returns (bytes memory)"
|
||
|
}
|
||
|
},
|
||
|
"id": 18719,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "functionCall",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3877:51:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_bytes_memory_ptr",
|
||
|
"typeString": "bytes memory"
|
||
|
}
|
||
|
}
|
||
|
],
|
||
|
"expression": {
|
||
|
"argumentTypes": [
|
||
|
{
|
||
|
"typeIdentifier": "t_bytes_memory_ptr",
|
||
|
"typeString": "bytes memory"
|
||
|
}
|
||
|
],
|
||
|
"id": 18706,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": true,
|
||
|
"lValueRequested": false,
|
||
|
"nodeType": "ElementaryTypeNameExpression",
|
||
|
"src": "3870:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_type$_t_string_storage_ptr_$",
|
||
|
"typeString": "type(string storage pointer)"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18705,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3870:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": null,
|
||
|
"typeString": null
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"id": 18720,
|
||
|
"isConstant": false,
|
||
|
"isLValue": false,
|
||
|
"isPure": false,
|
||
|
"kind": "typeConversion",
|
||
|
"lValueRequested": false,
|
||
|
"names": [],
|
||
|
"nodeType": "FunctionCall",
|
||
|
"src": "3870:59:32",
|
||
|
"tryCall": false,
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string memory"
|
||
|
}
|
||
|
},
|
||
|
"functionReturnParameters": 18704,
|
||
|
"id": 18721,
|
||
|
"nodeType": "Return",
|
||
|
"src": "3863:66:32"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"documentation": {
|
||
|
"id": 18696,
|
||
|
"nodeType": "StructuredDocumentation",
|
||
|
"src": "3539:212:32",
|
||
|
"text": " @dev concatenates a string and a digit (single only) and returns the result string\n @param _str string\n @param _digit digit\n @return concatenated string"
|
||
|
},
|
||
|
"id": 18723,
|
||
|
"implemented": true,
|
||
|
"kind": "function",
|
||
|
"modifiers": [],
|
||
|
"name": "concatStrDigit",
|
||
|
"nodeType": "FunctionDefinition",
|
||
|
"overrides": null,
|
||
|
"parameters": {
|
||
|
"id": 18701,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18698,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_str",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18723,
|
||
|
"src": "3781:18:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18697,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3781:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
},
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18700,
|
||
|
"mutability": "mutable",
|
||
|
"name": "_digit",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18723,
|
||
|
"src": "3801:12:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "default",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18699,
|
||
|
"name": "uint8",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3801:5:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_uint8",
|
||
|
"typeString": "uint8"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "3780:34:32"
|
||
|
},
|
||
|
"returnParameters": {
|
||
|
"id": 18704,
|
||
|
"nodeType": "ParameterList",
|
||
|
"parameters": [
|
||
|
{
|
||
|
"constant": false,
|
||
|
"id": 18703,
|
||
|
"mutability": "mutable",
|
||
|
"name": "",
|
||
|
"nodeType": "VariableDeclaration",
|
||
|
"overrides": null,
|
||
|
"scope": 18723,
|
||
|
"src": "3837:13:32",
|
||
|
"stateVariable": false,
|
||
|
"storageLocation": "memory",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_memory_ptr",
|
||
|
"typeString": "string"
|
||
|
},
|
||
|
"typeName": {
|
||
|
"id": 18702,
|
||
|
"name": "string",
|
||
|
"nodeType": "ElementaryTypeName",
|
||
|
"src": "3837:6:32",
|
||
|
"typeDescriptions": {
|
||
|
"typeIdentifier": "t_string_storage_ptr",
|
||
|
"typeString": "string"
|
||
|
}
|
||
|
},
|
||
|
"value": null,
|
||
|
"visibility": "internal"
|
||
|
}
|
||
|
],
|
||
|
"src": "3836:15:32"
|
||
|
},
|
||
|
"scope": 18724,
|
||
|
"src": "3757:180:32",
|
||
|
"stateMutability": "pure",
|
||
|
"virtual": false,
|
||
|
"visibility": "private"
|
||
|
}
|
||
|
],
|
||
|
"scope": 18725,
|
||
|
"src": "592:3348:32"
|
||
|
}
|
||
|
],
|
||
|
"src": "52:3890:32"
|
||
|
},
|
||
|
"compiler": {
|
||
|
"name": "solc",
|
||
|
"version": "0.6.12+commit.27d51765.Emscripten.clang"
|
||
|
},
|
||
|
"networks": {},
|
||
|
"schemaVersion": "3.2.3",
|
||
|
"updatedAt": "2020-11-09T23:40:29.187Z",
|
||
|
"devdoc": {
|
||
|
"details": "The PoolTokensContainer contract serves as a container for multiple pool tokens. It is used by specific liquidity pool types that require more than a single pool token, while still maintaining the single converter / anchor relationship. It maintains and provides a list of the underlying pool tokens.",
|
||
|
"kind": "dev",
|
||
|
"methods": {
|
||
|
"acceptOwnership()": {
|
||
|
"details": "used by a new owner to accept an ownership transfer"
|
||
|
},
|
||
|
"burn(address,address,uint256)": {
|
||
|
"details": "removes tokens from the given account and decreases the pool token supply can only be called by the contract owner",
|
||
|
"params": {
|
||
|
"_amount": "amount to burn",
|
||
|
"_from": "account to remove the tokens from",
|
||
|
"_token": "pool token address"
|
||
|
}
|
||
|
},
|
||
|
"constructor": {
|
||
|
"details": "initializes a new PoolTokensContainer instance",
|
||
|
"params": {
|
||
|
"_decimals": "used for the underlying pool token decimals",
|
||
|
"_name": "pool name, also used as a prefix for the underlying pool token names",
|
||
|
"_symbol": "pool symbol, also used as a prefix for the underlying pool token symbols"
|
||
|
}
|
||
|
},
|
||
|
"createToken()": {
|
||
|
"details": "creates a new pool token and adds it to the list",
|
||
|
"returns": {
|
||
|
"_0": "new pool token address"
|
||
|
}
|
||
|
},
|
||
|
"mint(address,address,uint256)": {
|
||
|
"details": "increases the pool token supply and sends the new tokens to the given account can only be called by the contract owner",
|
||
|
"params": {
|
||
|
"_amount": "amount to mint",
|
||
|
"_to": "account to receive the newly minted tokens",
|
||
|
"_token": "pool token address"
|
||
|
}
|
||
|
},
|
||
|
"poolTokens()": {
|
||
|
"details": "returns the list of pool tokens",
|
||
|
"returns": {
|
||
|
"_0": "list of pool tokens"
|
||
|
}
|
||
|
},
|
||
|
"transferOwnership(address)": {
|
||
|
"details": "allows transferring the contract ownership the new owner still needs to accept the transfer can only be called by the contract owner",
|
||
|
"params": {
|
||
|
"_newOwner": "new contract owner"
|
||
|
}
|
||
|
},
|
||
|
"withdrawTokens(address,address,uint256)": {
|
||
|
"details": "withdraws tokens held by the contract and sends them to an account can only be called by the owner",
|
||
|
"params": {
|
||
|
"_amount": "amount to withdraw",
|
||
|
"_to": "account to receive the new amount",
|
||
|
"_token": "ERC20 token contract address"
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"version": 1
|
||
|
},
|
||
|
"userdoc": {
|
||
|
"kind": "user",
|
||
|
"methods": {},
|
||
|
"version": 1
|
||
|
}
|
||
|
}
|