1799 lines
62 KiB
JSON
Raw Normal View History

2018-05-27 13:24:10 +02:00
{
"contractName": "ERC20Token",
"abi": [
{
"constant": true,
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_from",
"type": "address"
},
{
"indexed": true,
"name": "_to",
"type": "address"
},
{
"indexed": false,
"name": "_value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_owner",
"type": "address"
},
{
"indexed": true,
"name": "_spender",
"type": "address"
},
{
"indexed": false,
"name": "_value",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"name": "balance",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [
{
"name": "success",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_from",
"type": "address"
},
{
"name": "_to",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [
{
"name": "success",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_spender",
"type": "address"
},
{
"name": "_value",
"type": "uint256"
}
],
"name": "approve",
"outputs": [
{
"name": "success",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_owner",
"type": "address"
},
{
"name": "_spender",
"type": "address"
}
],
"name": "allowance",
"outputs": [
{
"name": "remaining",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x",
"deployedBytecode": "0x",
"sourceMap": "",
"deployedSourceMap": "",
"source": "pragma solidity ^0.4.23;\n\n// Abstract contract for the full ERC 20 Token standard\n// https://github.com/ethereum/EIPs/issues/20\n\ncontract ERC20Token {\n /* This is a slight change to the ERC20 base standard.\n function totalSupply() constant returns (uint256 supply);\n is replaced with:\n uint256 public totalSupply;\n This automatically creates a getter function for the totalSupply.\n This is moved to the base contract since public getter functions are not\n currently recognised as an implementation of the matching abstract\n function by the compiler.\n */\n /// total amount of tokens\n uint256 public totalSupply;\n\n /// @param _owner The address from which the balance will be retrieved\n /// @return The balance\n function balanceOf(address _owner) public constant returns (uint256 balance);\n\n /// @notice send `_value` token to `_to` from `msg.sender`\n /// @param _to The address of the recipient\n /// @param _value The amount of token to be transferred\n /// @return Whether the transfer was successful or not\n function transfer(address _to, uint256 _value) public returns (bool success);\n\n /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`\n /// @param _from The address of the sender\n /// @param _to The address of the recipient\n /// @param _value The amount of token to be transferred\n /// @return Whether the transfer was successful or not\n function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);\n\n /// @notice `msg.sender` approves `_spender` to spend `_value` tokens\n /// @param _spender The address of the account able to transfer the tokens\n /// @param _value The amount of tokens to be approved for transfer\n /// @return Whether the approval was successful or not\n function approve(address _spender, uint256 _value) public returns (bool success);\n\n /// @param _owner The address of the account owning tokens\n /// @param _spender The address of the account able to transfer the tokens\n /// @return Amount of remaining tokens allowed to spent\n function allowance(address _owner, address _spender) public constant returns (uint256 remaining);\n\n event Transfer(address indexed _from, address indexed _to, uint256 _value);\n event Approval(address indexed _owner, address indexed _spender, uint256 _value);\n}",
"sourcePath": "/Users/apanizo/git/gnosis/safe-contracts/contracts/interfaces/ERC20Token.sol",
"ast": {
"absolutePath": "/Users/apanizo/git/gnosis/safe-contracts/contracts/interfaces/ERC20Token.sol",
"exportedSymbols": {
"ERC20Token": [
1720
2018-05-27 13:24:10 +02:00
]
},
"id": 1721,
2018-05-27 13:24:10 +02:00
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1656,
2018-05-27 13:24:10 +02:00
"literals": [
"solidity",
"^",
"0.4",
".23"
],
"nodeType": "PragmaDirective",
"src": "0:24:14"
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": false,
"id": 1720,
2018-05-27 13:24:10 +02:00
"linearizedBaseContracts": [
1720
2018-05-27 13:24:10 +02:00
],
"name": "ERC20Token",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 1658,
2018-05-27 13:24:10 +02:00
"name": "totalSupply",
"nodeType": "VariableDeclaration",
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "616:26:14",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1657,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "616:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@param _owner The address from which the balance will be retrieved\n @return The balance",
"id": 1665,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "balanceOf",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1661,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1660,
2018-05-27 13:24:10 +02:00
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 1665,
2018-05-27 13:24:10 +02:00
"src": "771:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1659,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "771:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "770:16:14"
},
"payable": false,
"returnParameters": {
"id": 1664,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1663,
2018-05-27 13:24:10 +02:00
"name": "balance",
"nodeType": "VariableDeclaration",
"scope": 1665,
2018-05-27 13:24:10 +02:00
"src": "812:15:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1662,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "812:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "811:17:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "752:77:14",
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@notice send `_value` token to `_to` from `msg.sender`\n @param _to The address of the recipient\n @param _value The amount of token to be transferred\n @return Whether the transfer was successful or not",
"id": 1674,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "transfer",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1670,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1667,
2018-05-27 13:24:10 +02:00
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 1674,
2018-05-27 13:24:10 +02:00
"src": "1083:11:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1666,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1083:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1669,
2018-05-27 13:24:10 +02:00
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1674,
2018-05-27 13:24:10 +02:00
"src": "1096:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1668,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1096:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1082:29:14"
},
"payable": false,
"returnParameters": {
"id": 1673,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1672,
2018-05-27 13:24:10 +02:00
"name": "success",
"nodeType": "VariableDeclaration",
"scope": 1674,
2018-05-27 13:24:10 +02:00
"src": "1128:12:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 1671,
2018-05-27 13:24:10 +02:00
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "1128:4:14",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1127:14:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "1065:77:14",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`\n @param _from The address of the sender\n @param _to The address of the recipient\n @param _value The amount of token to be transferred\n @return Whether the transfer was successful or not",
"id": 1685,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "transferFrom",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1681,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1676,
2018-05-27 13:24:10 +02:00
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 1685,
2018-05-27 13:24:10 +02:00
"src": "1485:13:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1675,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1485:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1678,
2018-05-27 13:24:10 +02:00
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 1685,
2018-05-27 13:24:10 +02:00
"src": "1500:11:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1677,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1500:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1680,
2018-05-27 13:24:10 +02:00
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1685,
2018-05-27 13:24:10 +02:00
"src": "1513:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1679,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1513:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1484:44:14"
},
"payable": false,
"returnParameters": {
"id": 1684,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1683,
2018-05-27 13:24:10 +02:00
"name": "success",
"nodeType": "VariableDeclaration",
"scope": 1685,
2018-05-27 13:24:10 +02:00
"src": "1545:12:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 1682,
2018-05-27 13:24:10 +02:00
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "1545:4:14",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1544:14:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "1463:96:14",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@notice `msg.sender` approves `_spender` to spend `_value` tokens\n @param _spender The address of the account able to transfer the tokens\n @param _value The amount of tokens to be approved for transfer\n @return Whether the approval was successful or not",
"id": 1694,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "approve",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1690,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1687,
2018-05-27 13:24:10 +02:00
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 1694,
2018-05-27 13:24:10 +02:00
"src": "1865:16:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1686,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1865:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1689,
2018-05-27 13:24:10 +02:00
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1694,
2018-05-27 13:24:10 +02:00
"src": "1883:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1688,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1883:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1864:34:14"
},
"payable": false,
"returnParameters": {
"id": 1693,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1692,
2018-05-27 13:24:10 +02:00
"name": "success",
"nodeType": "VariableDeclaration",
"scope": 1694,
2018-05-27 13:24:10 +02:00
"src": "1915:12:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 1691,
2018-05-27 13:24:10 +02:00
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "1915:4:14",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1914:14:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "1848:81:14",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@param _owner The address of the account owning tokens\n @param _spender The address of the account able to transfer the tokens\n @return Amount of remaining tokens allowed to spent",
"id": 1703,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "allowance",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1699,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1696,
2018-05-27 13:24:10 +02:00
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 1703,
2018-05-27 13:24:10 +02:00
"src": "2156:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1695,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2156:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1698,
2018-05-27 13:24:10 +02:00
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 1703,
2018-05-27 13:24:10 +02:00
"src": "2172:16:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1697,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2172:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2155:34:14"
},
"payable": false,
"returnParameters": {
"id": 1702,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1701,
2018-05-27 13:24:10 +02:00
"name": "remaining",
"nodeType": "VariableDeclaration",
"scope": 1703,
2018-05-27 13:24:10 +02:00
"src": "2215:17:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1700,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2215:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2214:19:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "2137:97:14",
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
{
"anonymous": false,
"documentation": null,
"id": 1711,
2018-05-27 13:24:10 +02:00
"name": "Transfer",
"nodeType": "EventDefinition",
"parameters": {
"id": 1710,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1705,
2018-05-27 13:24:10 +02:00
"indexed": true,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 1711,
2018-05-27 13:24:10 +02:00
"src": "2255:21:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1704,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2255:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1707,
2018-05-27 13:24:10 +02:00
"indexed": true,
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 1711,
2018-05-27 13:24:10 +02:00
"src": "2278:19:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1706,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2278:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1709,
2018-05-27 13:24:10 +02:00
"indexed": false,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1711,
2018-05-27 13:24:10 +02:00
"src": "2299:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1708,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2299:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2254:60:14"
},
"src": "2240:75:14"
},
{
"anonymous": false,
"documentation": null,
"id": 1719,
2018-05-27 13:24:10 +02:00
"name": "Approval",
"nodeType": "EventDefinition",
"parameters": {
"id": 1718,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1713,
2018-05-27 13:24:10 +02:00
"indexed": true,
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 1719,
2018-05-27 13:24:10 +02:00
"src": "2335:22:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1712,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2335:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1715,
2018-05-27 13:24:10 +02:00
"indexed": true,
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 1719,
2018-05-27 13:24:10 +02:00
"src": "2359:24:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1714,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2359:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1717,
2018-05-27 13:24:10 +02:00
"indexed": false,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1719,
2018-05-27 13:24:10 +02:00
"src": "2385:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1716,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2385:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2334:66:14"
},
"src": "2320:81:14"
}
],
"scope": 1721,
2018-05-27 13:24:10 +02:00
"src": "129:2274:14"
}
],
"src": "0:2403:14"
},
"legacyAST": {
"absolutePath": "/Users/apanizo/git/gnosis/safe-contracts/contracts/interfaces/ERC20Token.sol",
"exportedSymbols": {
"ERC20Token": [
1720
2018-05-27 13:24:10 +02:00
]
},
"id": 1721,
2018-05-27 13:24:10 +02:00
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1656,
2018-05-27 13:24:10 +02:00
"literals": [
"solidity",
"^",
"0.4",
".23"
],
"nodeType": "PragmaDirective",
"src": "0:24:14"
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": false,
"id": 1720,
2018-05-27 13:24:10 +02:00
"linearizedBaseContracts": [
1720
2018-05-27 13:24:10 +02:00
],
"name": "ERC20Token",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 1658,
2018-05-27 13:24:10 +02:00
"name": "totalSupply",
"nodeType": "VariableDeclaration",
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "616:26:14",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1657,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "616:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@param _owner The address from which the balance will be retrieved\n @return The balance",
"id": 1665,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "balanceOf",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1661,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1660,
2018-05-27 13:24:10 +02:00
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 1665,
2018-05-27 13:24:10 +02:00
"src": "771:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1659,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "771:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "770:16:14"
},
"payable": false,
"returnParameters": {
"id": 1664,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1663,
2018-05-27 13:24:10 +02:00
"name": "balance",
"nodeType": "VariableDeclaration",
"scope": 1665,
2018-05-27 13:24:10 +02:00
"src": "812:15:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1662,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "812:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "811:17:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "752:77:14",
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@notice send `_value` token to `_to` from `msg.sender`\n @param _to The address of the recipient\n @param _value The amount of token to be transferred\n @return Whether the transfer was successful or not",
"id": 1674,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "transfer",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1670,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1667,
2018-05-27 13:24:10 +02:00
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 1674,
2018-05-27 13:24:10 +02:00
"src": "1083:11:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1666,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1083:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1669,
2018-05-27 13:24:10 +02:00
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1674,
2018-05-27 13:24:10 +02:00
"src": "1096:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1668,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1096:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1082:29:14"
},
"payable": false,
"returnParameters": {
"id": 1673,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1672,
2018-05-27 13:24:10 +02:00
"name": "success",
"nodeType": "VariableDeclaration",
"scope": 1674,
2018-05-27 13:24:10 +02:00
"src": "1128:12:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 1671,
2018-05-27 13:24:10 +02:00
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "1128:4:14",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1127:14:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "1065:77:14",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`\n @param _from The address of the sender\n @param _to The address of the recipient\n @param _value The amount of token to be transferred\n @return Whether the transfer was successful or not",
"id": 1685,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "transferFrom",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1681,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1676,
2018-05-27 13:24:10 +02:00
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 1685,
2018-05-27 13:24:10 +02:00
"src": "1485:13:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1675,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1485:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1678,
2018-05-27 13:24:10 +02:00
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 1685,
2018-05-27 13:24:10 +02:00
"src": "1500:11:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1677,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1500:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1680,
2018-05-27 13:24:10 +02:00
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1685,
2018-05-27 13:24:10 +02:00
"src": "1513:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1679,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1513:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1484:44:14"
},
"payable": false,
"returnParameters": {
"id": 1684,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1683,
2018-05-27 13:24:10 +02:00
"name": "success",
"nodeType": "VariableDeclaration",
"scope": 1685,
2018-05-27 13:24:10 +02:00
"src": "1545:12:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 1682,
2018-05-27 13:24:10 +02:00
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "1545:4:14",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1544:14:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "1463:96:14",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@notice `msg.sender` approves `_spender` to spend `_value` tokens\n @param _spender The address of the account able to transfer the tokens\n @param _value The amount of tokens to be approved for transfer\n @return Whether the approval was successful or not",
"id": 1694,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "approve",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1690,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1687,
2018-05-27 13:24:10 +02:00
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 1694,
2018-05-27 13:24:10 +02:00
"src": "1865:16:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1686,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1865:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1689,
2018-05-27 13:24:10 +02:00
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1694,
2018-05-27 13:24:10 +02:00
"src": "1883:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1688,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1883:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1864:34:14"
},
"payable": false,
"returnParameters": {
"id": 1693,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1692,
2018-05-27 13:24:10 +02:00
"name": "success",
"nodeType": "VariableDeclaration",
"scope": 1694,
2018-05-27 13:24:10 +02:00
"src": "1915:12:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 1691,
2018-05-27 13:24:10 +02:00
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "1915:4:14",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1914:14:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "1848:81:14",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": null,
"documentation": "@param _owner The address of the account owning tokens\n @param _spender The address of the account able to transfer the tokens\n @return Amount of remaining tokens allowed to spent",
"id": 1703,
2018-05-27 13:24:10 +02:00
"implemented": false,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "allowance",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1699,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1696,
2018-05-27 13:24:10 +02:00
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 1703,
2018-05-27 13:24:10 +02:00
"src": "2156:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1695,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2156:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1698,
2018-05-27 13:24:10 +02:00
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 1703,
2018-05-27 13:24:10 +02:00
"src": "2172:16:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1697,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2172:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2155:34:14"
},
"payable": false,
"returnParameters": {
"id": 1702,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1701,
2018-05-27 13:24:10 +02:00
"name": "remaining",
"nodeType": "VariableDeclaration",
"scope": 1703,
2018-05-27 13:24:10 +02:00
"src": "2215:17:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1700,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2215:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2214:19:14"
},
"scope": 1720,
2018-05-27 13:24:10 +02:00
"src": "2137:97:14",
"stateMutability": "view",
"superFunction": null,
"visibility": "public"
},
{
"anonymous": false,
"documentation": null,
"id": 1711,
2018-05-27 13:24:10 +02:00
"name": "Transfer",
"nodeType": "EventDefinition",
"parameters": {
"id": 1710,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1705,
2018-05-27 13:24:10 +02:00
"indexed": true,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 1711,
2018-05-27 13:24:10 +02:00
"src": "2255:21:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1704,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2255:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1707,
2018-05-27 13:24:10 +02:00
"indexed": true,
"name": "_to",
"nodeType": "VariableDeclaration",
"scope": 1711,
2018-05-27 13:24:10 +02:00
"src": "2278:19:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1706,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2278:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1709,
2018-05-27 13:24:10 +02:00
"indexed": false,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1711,
2018-05-27 13:24:10 +02:00
"src": "2299:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1708,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2299:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2254:60:14"
},
"src": "2240:75:14"
},
{
"anonymous": false,
"documentation": null,
"id": 1719,
2018-05-27 13:24:10 +02:00
"name": "Approval",
"nodeType": "EventDefinition",
"parameters": {
"id": 1718,
2018-05-27 13:24:10 +02:00
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1713,
2018-05-27 13:24:10 +02:00
"indexed": true,
"name": "_owner",
"nodeType": "VariableDeclaration",
"scope": 1719,
2018-05-27 13:24:10 +02:00
"src": "2335:22:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1712,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2335:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1715,
2018-05-27 13:24:10 +02:00
"indexed": true,
"name": "_spender",
"nodeType": "VariableDeclaration",
"scope": 1719,
2018-05-27 13:24:10 +02:00
"src": "2359:24:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1714,
2018-05-27 13:24:10 +02:00
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2359:7:14",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1717,
2018-05-27 13:24:10 +02:00
"indexed": false,
"name": "_value",
"nodeType": "VariableDeclaration",
"scope": 1719,
2018-05-27 13:24:10 +02:00
"src": "2385:14:14",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1716,
2018-05-27 13:24:10 +02:00
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2385:7:14",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2334:66:14"
},
"src": "2320:81:14"
}
],
"scope": 1721,
2018-05-27 13:24:10 +02:00
"src": "129:2274:14"
}
],
"src": "0:2403:14"
},
"compiler": {
"name": "solc",
"version": "0.4.24+commit.e67f0147.Emscripten.clang"
},
"networks": {},
"schemaVersion": "2.0.0",
"updatedAt": "2018-05-28T05:59:52.707Z"
2018-05-27 13:24:10 +02:00
}