2018-05-04 14:04:04 +00:00
{
"contractName" : "MultiSendStruct" ,
"abi" : [
{
"constant" : false ,
"inputs" : [
{
"components" : [
{
"name" : "to" ,
"type" : "address"
} ,
{
"name" : "value" ,
"type" : "uint256"
} ,
{
"name" : "data" ,
"type" : "bytes"
}
] ,
"name" : "transactions" ,
"type" : "tuple[]"
}
] ,
"name" : "multiSend" ,
"outputs" : [ ] ,
"payable" : false ,
"stateMutability" : "nonpayable" ,
"type" : "function"
}
] ,
2018-05-10 11:12:13 +00:00
"bytecode" : "0x608060405234801561001057600080fd5b506103c6806100206000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680632f6fda4a14610046575b600080fd5b34801561005257600080fd5b5061006d60048036036100689190810190610291565b61006f565b005b60006100796100ed565b600091505b82518210156100d057828281518110151561009557fe5b9060200190602002015190506100b88160000151826020015183604001516100d5565b15156100c357600080fd5b818060010192505061007e565b505050565b600080600083516020850186885af190509392505050565b606060405190810160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001606081525090565b60006101318235610353565b905092915050565b600082601f830112151561014c57600080fd5b813561015f61015a826102ff565b6102d2565b9150818183526020840193506020810190508360005b838110156101a5578135860161018b8882610205565b845260208401935060208301925050600181019050610175565b5050505092915050565b600082601f83011215156101c257600080fd5b81356101d56101d082610327565b6102d2565b915080825260208301602083018583830111156101f157600080fd5b6101fc83828461037d565b50505092915050565b60006060828403121561021757600080fd5b61022160606102d2565b9050600061023184828501610125565b60008301525060206102458482850161027d565b602083015250604082013567ffffffffffffffff81111561026557600080fd5b610271848285016101af565b60408301525092915050565b60006102898235610373565b905092915050565b6000602082840312156102a357600080fd5b600082013567ffffffffffffffff8111156102bd57600080fd5b6102c984828501610139565b91505092915050565b6000604051905081810181811067ffffffffffffffff821117156102f557600080fd5b8060405250919050565b600067ffffffffffffffff82111561031657600080fd5b602082029050602081019050919050565b600067ffffffffffffffff82111561033e57600080fd5b601f19601f8301169050602081019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b828183376000838301525050505600a265627a7a7230582005384089695c7c77816220e122b3c45435a664207e3c979cd8b6653c05e379236c6578706572696d656e74616cf50037" ,
"deployedBytecode" : "0x608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680632f6fda4a14610046575b600080fd5b34801561005257600080fd5b5061006d60048036036100689190810190610291565b61006f565b005b60006100796100ed565b600091505b82518210156100d057828281518110151561009557fe5b9060200190602002015190506100b88160000151826020015183604001516100d5565b15156100c357600080fd5b818060010192505061007e565b505050565b600080600083516020850186885af190509392505050565b606060405190810160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001606081525090565b60006101318235610353565b905092915050565b600082601f830112151561014c57600080fd5b813561015f61015a826102ff565b6102d2565b9150818183526020840193506020810190508360005b838110156101a5578135860161018b8882610205565b845260208401935060208301925050600181019050610175565b5050505092915050565b600082601f83011215156101c257600080fd5b81356101d56101d082610327565b6102d2565b915080825260208301602083018583830111156101f157600080fd5b6101fc83828461037d565b50505092915050565b60006060828403121561021757600080fd5b61022160606102d2565b9050600061023184828501610125565b60008301525060206102458482850161027d565b602083015250604082013567ffffffffffffffff81111561026557600080fd5b610271848285016101af565b60408301525092915050565b60006102898235610373565b905092915050565b6000602082840312156102a357600080fd5b600082013567ffffffffffffffff8111156102bd57600080fd5b6102c984828501610139565b91505092915050565b6000604051905081810181811067ffffffffffffffff821117156102f557600080fd5b8060405250919050565b600067ffffffffffffffff82111561031657600080fd5b602082029050602081019050919050565b600067ffffffffffffffff82111561033e57600080fd5b601f19601f8301169050602081019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b828183376000838301525050505600a265627a7a7230582005384089695c7c77816220e122b3c45435a664207e3c979cd8b6653c05e379236c6578706572696d656e74616cf50037" ,
"sourceMap" : "339:839:17:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;339:839:17;;;;;;;" ,
"deployedSourceMap" : "339:839:17:-;;;;;;;;;;;;;;;;;;;;;;;;587:291;;8:9:-1;5:2;;;30:1;27;20:12;5:2;587:291:17;;;;;;;;;;;;;;;;;;;;667:9;726:30;;:::i;:::-;679:1;667:13;;663:209;686:12;:19;682:1;:23;663:209;;;759:12;772:1;759:15;;;;;;;;;;;;;;;;;;726:48;;796:64;808:11;:14;;;824:11;:17;;;843:11;:16;;;796:11;:64::i;:::-;788:73;;;;;;;;707:3;;;;;;;663:209;;;587:291;;;:::o;884:292::-;978:12;1158:1;1155;1148:4;1142:11;1135:4;1129;1125:15;1118:5;1114:2;1109:3;1104:56;1093:67;;1079:91;;;;;:::o;339:839::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5:118:-1:-;;72:46;110:6;97:20;72:46;;;63:55;;57:66;;;;;175:753;;317:3;310:4;302:6;298:17;294:27;287:35;284:2;;;335:1;332;325:12;284:2;372:6;359:20;394:105;409:89;491:6;409:89;;;394:105;;;385:114;;516:5;541:6;534:5;527:21;571:4;563:6;559:17;549:27;;593:4;588:3;584:14;577:21;;646:6;679:1;664:258;689:6;686:1;683:13;664:258;;;772:3;759:17;751:6;747:30;796:62;854:3;842:10;796:62;;;791:3;784:75;882:4;877:3;873:14;866:21;;910:4;905:3;901:14;894:21;;721:201;711:1;708;704:9;699:14;;664:258;;;668:14;277:651;;;;;;;;937:432;;1034:3;1027:4;1019:6;1015:17;1011:27;1004:35;1001:2;;;1052:1;1049;1042:12;1001:2;1089:6;1076:20;1111:60;1126:44;1163:6;1126:44;;;1111:60;;;1102:69;;1191:6;1184:5;1177:21;1227:4;1219:6;1215:17;1260:4;1253:5;1249:16;1295:3;1286:6;1281:3;1277:16;1274:25;1271:2;;;1312:1;1309;1302:12;1271:2;1322:41;1356:6;1351:3;1346;1322:41;;;994:375;;;;;;;;1418:700;;1532:4;1520:9;1515:3;1511:19;1507:30;1504:2;;;1550:1;1547;1540:12;1504:2;1568:20;1583:4;1568:20;;;1559:29;;1636:1;1667:49;1712:3;1703:6;1692:9;1688:22;1667:49;;;1661:3;1654:5;1650:15;1643:74;1598:130;1779:2;1812:49;1857:3;1848:6;1837:9;1833:22;1812:49;;;1805:4;1798:5;1794:16;1787:75;1738:135;1951:2;1940:9;1936:18;1923:32;1975:18;1967:6;1964:30;1961:2;;;2007:1;2004;1997:12;1961:2;2042:54;2092:3;2083:6;2072:9;2068:22;2042:54;;;2035:4;2028:5;2024:16;2017:80;1883:225;1498:620;;;;;2125:118;;2192:46;2230:6;2217:20;2192:46;;;2183:55;;2177:66;;;;;2250:427;;2404:2;2392:9;2383:7;2379:23;2375:32;2372:2;;;2420:1;2417;2410:12;2372:2;2483:1;2472:9;2468:17;2455:31;2506:18;2498:6;2495:30;2492:2;;;2538:1;2535;2528:12;2492:2;2558:103;2653:7;2644:6;2633:9;2629:22;2558:103;;;2548:113;;2434:233;2366:311;;;;;2684:256;;2746:2;2740:9;2730:19;;2784:4;2776:6;2772:17;2883:6;2871:10;2868:22;2847:18;2835:10;2832:34;2829:62;2826:2;;;2904:1;2901;2894:12;2826:2;2924:10;2920:2;2913:22;2724:216;;;;;2947:283;;3131:18;3123:6;3120:30;3117:2;;;3163:1;3160;3153:12;3117:2;3192:4;3184:6;3180:17;3172:25;;3220:4;3214;3210:15;3202:23;;3054:176;;;;3237:254;;3376:18;3368:6;3365:30;3362:2;;;3408:1;3405;3398:12;3362:2;3452:4;3448:9;3441:4;3433:6;3429:17;3425:33;3417:41;;3481:4;3475;3471:15;3463:23;;3299:192;;;;3498:128;;3578:42;3571:5;3567:54;3556:65;;3550:76;;;;3633:79;;3702:5;3691:16;;3685:27;;;;3720:145;3801:6;3796:3;3791;3778:30;3857:1;3848:6;3843:3;3839:16;3832:27;3771:94;;;" ,
"source" : "pragma solidity ^0.4.23;\npragma experimental ABIEncoderV2;\n\n\n/// @title Multi Send - Allows to batch multiple transactions into one.\n/// @author Nick Dodson - <nick.dodson@consensys.net>\n/// @author Gonçalo Sá - <goncalo.sa@consensys.net>\n/// @author Stefan George - <stefan@gnosis.pm>\n/// @author Richard Meissner - <richard@gnosis.pm>\ncontract MultiSendStruct {\n\n struct Transaction {\n address to;\n uint256 value;\n bytes data;\n }\n\n /// @dev Sends multiple transactions and reverts all if one fails.\n /// @param transactions Encoded transactions.\n function multiSend(Transaction[] transactions)\n public\n {\n for(uint256 i = 0; i < transactions.length; i++) {\n Transaction memory transaction = transactions[i];\n require(executeCall(transaction.to, transaction.value, transaction.data));\n }\n }\n\n function executeCall(address to, uint256 value, bytes data)\n internal\n returns (bool success)\n {\n // solium-disable-next-line security/no-inline-assembly\n assembly {\n success := call(gas, to, value, add(data, 0x20), mload(data), 0, 0)\n }\n }\n}\n" ,
2018-05-04 14:04:04 +00:00
"sourcePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/libraries/MultiSendStruct.sol" ,
"ast" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/libraries/MultiSendStruct.sol" ,
"exportedSymbols" : {
"MultiSendStruct" : [
2018-05-10 11:12:13 +00:00
1675
2018-05-04 14:04:04 +00:00
]
} ,
2018-05-10 11:12:13 +00:00
"id" : 1676 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-05-10 11:12:13 +00:00
"id" : 1616 ,
2018-05-04 14:04:04 +00:00
"literals" : [
"solidity" ,
"^" ,
"0.4" ,
2018-05-10 11:12:13 +00:00
".23"
2018-05-04 14:04:04 +00:00
] ,
"nodeType" : "PragmaDirective" ,
2018-05-10 11:12:13 +00:00
"src" : "0:24:17"
2018-05-04 14:04:04 +00:00
} ,
{
2018-05-10 11:12:13 +00:00
"id" : 1617 ,
2018-05-04 14:04:04 +00:00
"literals" : [
"experimental" ,
"ABIEncoderV2"
] ,
"nodeType" : "PragmaDirective" ,
2018-05-10 11:12:13 +00:00
"src" : "25:33:17"
2018-05-04 14:04:04 +00:00
} ,
{
"baseContracts" : [ ] ,
"contractDependencies" : [ ] ,
"contractKind" : "contract" ,
"documentation" : "@title Multi Send - Allows to batch multiple transactions into one.\n @author Nick Dodson - <nick.dodson@consensys.net>\n @author Gonçalo Sá - <goncalo.sa@consensys.net>\n @author Stefan George - <stefan@gnosis.pm>\n @author Richard Meissner - <richard@gnosis.pm>" ,
"fullyImplemented" : true ,
2018-05-10 11:12:13 +00:00
"id" : 1675 ,
2018-05-04 14:04:04 +00:00
"linearizedBaseContracts" : [
2018-05-10 11:12:13 +00:00
1675
2018-05-04 14:04:04 +00:00
] ,
"name" : "MultiSendStruct" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"canonicalName" : "MultiSendStruct.Transaction" ,
2018-05-10 11:12:13 +00:00
"id" : 1624 ,
2018-05-04 14:04:04 +00:00
"members" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1619 ,
2018-05-04 14:04:04 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1624 ,
"src" : "400:10:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1618 ,
2018-05-04 14:04:04 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "400:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1621 ,
2018-05-04 14:04:04 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1624 ,
"src" : "420:13:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1620 ,
2018-05-04 14:04:04 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "420:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1623 ,
2018-05-04 14:04:04 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1624 ,
"src" : "443:10:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1622 ,
2018-05-04 14:04:04 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "443:5:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"name" : "Transaction" ,
"nodeType" : "StructDefinition" ,
2018-05-10 11:12:13 +00:00
"scope" : 1675 ,
"src" : "371:89:17" ,
2018-05-04 14:04:04 +00:00
"visibility" : "public"
} ,
{
"body" : {
2018-05-10 11:12:13 +00:00
"id" : 1660 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Block" ,
2018-05-10 11:12:13 +00:00
"src" : "653:225:17" ,
2018-05-04 14:04:04 +00:00
"statements" : [
{
"body" : {
2018-05-10 11:12:13 +00:00
"id" : 1658 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Block" ,
2018-05-10 11:12:13 +00:00
"src" : "712:160:17" ,
2018-05-04 14:04:04 +00:00
"statements" : [
{
"assignments" : [
2018-05-10 11:12:13 +00:00
1642
2018-05-04 14:04:04 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1642 ,
2018-05-04 14:04:04 +00:00
"name" : "transaction" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1661 ,
"src" : "726:30:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
"contractScope" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1641 ,
2018-05-04 14:04:04 +00:00
"name" : "Transaction" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1624 ,
"src" : "726:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_storage_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1646 ,
2018-05-04 14:04:04 +00:00
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1643 ,
2018-05-04 14:04:04 +00:00
"name" : "transactions" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1627 ,
"src" : "759:12:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_struct$_Transaction_$1624_memory_$dyn_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory[] memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1645 ,
2018-05-04 14:04:04 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1644 ,
2018-05-04 14:04:04 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1631 ,
"src" : "772:1:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-05-10 11:12:13 +00:00
"src" : "759:15:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "726:48:17"
2018-05-04 14:04:04 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1649 ,
2018-05-04 14:04:04 +00:00
"name" : "transaction" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1642 ,
"src" : "808:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1650 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "to" ,
"nodeType" : "MemberAccess" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1619 ,
"src" : "808:14:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1651 ,
2018-05-04 14:04:04 +00:00
"name" : "transaction" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1642 ,
"src" : "824:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1652 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "value" ,
"nodeType" : "MemberAccess" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1621 ,
"src" : "824:17:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1653 ,
2018-05-04 14:04:04 +00:00
"name" : "transaction" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1642 ,
"src" : "843:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1654 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "data" ,
"nodeType" : "MemberAccess" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1623 ,
"src" : "843:16:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory" ,
"typeString" : "bytes memory"
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1648 ,
2018-05-04 14:04:04 +00:00
"name" : "executeCall" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1674 ,
"src" : "796:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bool_$" ,
"typeString" : "function (address,uint256,bytes memory) returns (bool)"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1655 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-10 11:12:13 +00:00
"src" : "796:64:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1647 ,
2018-05-04 14:04:04 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
2018-05-10 11:12:13 +00:00
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "788:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1656 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-10 11:12:13 +00:00
"src" : "788:73:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1657 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "788:73:17"
2018-05-04 14:04:04 +00:00
}
]
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-10 11:12:13 +00:00
"id" : 1637 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1634 ,
2018-05-04 14:04:04 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1631 ,
"src" : "682:1:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1635 ,
2018-05-04 14:04:04 +00:00
"name" : "transactions" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1627 ,
"src" : "686:12:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_struct$_Transaction_$1624_memory_$dyn_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory[] memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1636 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "length" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-05-10 11:12:13 +00:00
"src" : "686:19:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-10 11:12:13 +00:00
"src" : "682:23:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1659 ,
2018-05-04 14:04:04 +00:00
"initializationExpression" : {
"assignments" : [
2018-05-10 11:12:13 +00:00
1631
2018-05-04 14:04:04 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1631 ,
2018-05-04 14:04:04 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1661 ,
"src" : "667:9:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1630 ,
2018-05-04 14:04:04 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "667:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1633 ,
2018-05-04 14:04:04 +00:00
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-05-10 11:12:13 +00:00
"id" : 1632 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-10 11:12:13 +00:00
"src" : "679:1:17" ,
2018-05-04 14:04:04 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "667:13:17"
2018-05-04 14:04:04 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1639 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-05-10 11:12:13 +00:00
"src" : "707:3:17" ,
2018-05-04 14:04:04 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1638 ,
2018-05-04 14:04:04 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1631 ,
"src" : "707:1:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1640 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "707:3:17"
2018-05-04 14:04:04 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "663:209:17"
2018-05-04 14:04:04 +00:00
}
]
} ,
2018-05-10 11:12:13 +00:00
"documentation" : "@dev Sends multiple transactions and reverts all if one fails.\n @param transactions Encoded transactions." ,
"id" : 1661 ,
2018-05-04 14:04:04 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "multiSend" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-10 11:12:13 +00:00
"id" : 1628 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1627 ,
2018-05-04 14:04:04 +00:00
"name" : "transactions" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1661 ,
"src" : "606:26:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_struct$_Transaction_$1624_memory_$dyn_memory_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction[]"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
"baseType" : {
"contractScope" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1625 ,
2018-05-04 14:04:04 +00:00
"name" : "Transaction" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1624 ,
"src" : "606:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_storage_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction"
2018-05-04 14:04:04 +00:00
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1626 ,
2018-05-04 14:04:04 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "606:13:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_struct$_Transaction_$1624_storage_$dyn_storage_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction[]"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "605:28:17"
2018-05-04 14:04:04 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-10 11:12:13 +00:00
"id" : 1629 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-05-10 11:12:13 +00:00
"src" : "653:0:17"
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"scope" : 1675 ,
"src" : "587:291:17" ,
2018-05-04 14:04:04 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-10 11:12:13 +00:00
"id" : 1673 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Block" ,
2018-05-10 11:12:13 +00:00
"src" : "996:180:17" ,
2018-05-04 14:04:04 +00:00
"statements" : [
{
"externalReferences" : [
{
"data" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1667 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1148:4:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
} ,
{
"data" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1667 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1129:4:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
} ,
{
"success" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1670 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1093:7:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
} ,
{
"to" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1663 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1114:2:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
} ,
{
"value" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1665 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1118:5:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1672 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "InlineAssembly" ,
2018-05-10 11:12:13 +00:00
"operations" : "{\n success := call(gas(), to, value, add(data, 0x20), mload(data), 0, 0)\n}" ,
"src" : "1070:106:17"
2018-05-04 14:04:04 +00:00
}
]
} ,
2018-05-10 11:12:13 +00:00
"documentation" : null ,
"id" : 1674 ,
2018-05-04 14:04:04 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeCall" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-10 11:12:13 +00:00
"id" : 1668 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1663 ,
2018-05-04 14:04:04 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1674 ,
"src" : "905:10:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1662 ,
2018-05-04 14:04:04 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "905:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1665 ,
2018-05-04 14:04:04 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1674 ,
"src" : "917:13:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1664 ,
2018-05-04 14:04:04 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "917:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1667 ,
2018-05-04 14:04:04 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1674 ,
"src" : "932:10:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1666 ,
2018-05-04 14:04:04 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "932:5:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "904:39:17"
2018-05-04 14:04:04 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-10 11:12:13 +00:00
"id" : 1671 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1670 ,
2018-05-04 14:04:04 +00:00
"name" : "success" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1674 ,
"src" : "978:12:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1669 ,
2018-05-04 14:04:04 +00:00
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "978:4:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "977:14:17"
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"scope" : 1675 ,
"src" : "884:292:17" ,
2018-05-04 14:04:04 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"scope" : 1676 ,
"src" : "339:839:17"
2018-05-04 14:04:04 +00:00
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "0:1179:17"
2018-05-04 14:04:04 +00:00
} ,
"legacyAST" : {
"absolutePath" : "/Users/apanizo/git/gnosis/safe-contracts/contracts/libraries/MultiSendStruct.sol" ,
"exportedSymbols" : {
"MultiSendStruct" : [
2018-05-10 11:12:13 +00:00
1675
2018-05-04 14:04:04 +00:00
]
} ,
2018-05-10 11:12:13 +00:00
"id" : 1676 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "SourceUnit" ,
"nodes" : [
{
2018-05-10 11:12:13 +00:00
"id" : 1616 ,
2018-05-04 14:04:04 +00:00
"literals" : [
"solidity" ,
"^" ,
"0.4" ,
2018-05-10 11:12:13 +00:00
".23"
2018-05-04 14:04:04 +00:00
] ,
"nodeType" : "PragmaDirective" ,
2018-05-10 11:12:13 +00:00
"src" : "0:24:17"
2018-05-04 14:04:04 +00:00
} ,
{
2018-05-10 11:12:13 +00:00
"id" : 1617 ,
2018-05-04 14:04:04 +00:00
"literals" : [
"experimental" ,
"ABIEncoderV2"
] ,
"nodeType" : "PragmaDirective" ,
2018-05-10 11:12:13 +00:00
"src" : "25:33:17"
2018-05-04 14:04:04 +00:00
} ,
{
"baseContracts" : [ ] ,
"contractDependencies" : [ ] ,
"contractKind" : "contract" ,
"documentation" : "@title Multi Send - Allows to batch multiple transactions into one.\n @author Nick Dodson - <nick.dodson@consensys.net>\n @author Gonçalo Sá - <goncalo.sa@consensys.net>\n @author Stefan George - <stefan@gnosis.pm>\n @author Richard Meissner - <richard@gnosis.pm>" ,
"fullyImplemented" : true ,
2018-05-10 11:12:13 +00:00
"id" : 1675 ,
2018-05-04 14:04:04 +00:00
"linearizedBaseContracts" : [
2018-05-10 11:12:13 +00:00
1675
2018-05-04 14:04:04 +00:00
] ,
"name" : "MultiSendStruct" ,
"nodeType" : "ContractDefinition" ,
"nodes" : [
{
"canonicalName" : "MultiSendStruct.Transaction" ,
2018-05-10 11:12:13 +00:00
"id" : 1624 ,
2018-05-04 14:04:04 +00:00
"members" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1619 ,
2018-05-04 14:04:04 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1624 ,
"src" : "400:10:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1618 ,
2018-05-04 14:04:04 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "400:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1621 ,
2018-05-04 14:04:04 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1624 ,
"src" : "420:13:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1620 ,
2018-05-04 14:04:04 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "420:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1623 ,
2018-05-04 14:04:04 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1624 ,
"src" : "443:10:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1622 ,
2018-05-04 14:04:04 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "443:5:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
"name" : "Transaction" ,
"nodeType" : "StructDefinition" ,
2018-05-10 11:12:13 +00:00
"scope" : 1675 ,
"src" : "371:89:17" ,
2018-05-04 14:04:04 +00:00
"visibility" : "public"
} ,
{
"body" : {
2018-05-10 11:12:13 +00:00
"id" : 1660 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Block" ,
2018-05-10 11:12:13 +00:00
"src" : "653:225:17" ,
2018-05-04 14:04:04 +00:00
"statements" : [
{
"body" : {
2018-05-10 11:12:13 +00:00
"id" : 1658 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Block" ,
2018-05-10 11:12:13 +00:00
"src" : "712:160:17" ,
2018-05-04 14:04:04 +00:00
"statements" : [
{
"assignments" : [
2018-05-10 11:12:13 +00:00
1642
2018-05-04 14:04:04 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1642 ,
2018-05-04 14:04:04 +00:00
"name" : "transaction" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1661 ,
"src" : "726:30:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "memory" ,
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
"contractScope" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1641 ,
2018-05-04 14:04:04 +00:00
"name" : "Transaction" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1624 ,
"src" : "726:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_storage_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1646 ,
2018-05-04 14:04:04 +00:00
"initialValue" : {
"argumentTypes" : null ,
"baseExpression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1643 ,
2018-05-04 14:04:04 +00:00
"name" : "transactions" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1627 ,
"src" : "759:12:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_struct$_Transaction_$1624_memory_$dyn_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory[] memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1645 ,
2018-05-04 14:04:04 +00:00
"indexExpression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1644 ,
2018-05-04 14:04:04 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1631 ,
"src" : "772:1:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "IndexAccess" ,
2018-05-10 11:12:13 +00:00
"src" : "759:15:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory"
}
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "726:48:17"
2018-05-04 14:04:04 +00:00
} ,
{
"expression" : {
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"arguments" : [
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1649 ,
2018-05-04 14:04:04 +00:00
"name" : "transaction" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1642 ,
"src" : "808:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1650 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "to" ,
"nodeType" : "MemberAccess" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1619 ,
"src" : "808:14:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1651 ,
2018-05-04 14:04:04 +00:00
"name" : "transaction" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1642 ,
"src" : "824:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1652 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "value" ,
"nodeType" : "MemberAccess" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1621 ,
"src" : "824:17:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
{
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1653 ,
2018-05-04 14:04:04 +00:00
"name" : "transaction" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1642 ,
"src" : "843:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1654 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : true ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "data" ,
"nodeType" : "MemberAccess" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1623 ,
"src" : "843:16:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory" ,
"typeString" : "bytes memory"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
{
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
{
"typeIdentifier" : "t_bytes_memory" ,
"typeString" : "bytes memory"
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1648 ,
2018-05-04 14:04:04 +00:00
"name" : "executeCall" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1674 ,
"src" : "796:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bool_$" ,
"typeString" : "function (address,uint256,bytes memory) returns (bool)"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1655 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-10 11:12:13 +00:00
"src" : "796:64:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
}
] ,
"expression" : {
"argumentTypes" : [
{
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1647 ,
2018-05-04 14:04:04 +00:00
"name" : "require" ,
"nodeType" : "Identifier" ,
2018-05-10 11:12:13 +00:00
"overloadedDeclarations" : [
2468 ,
2469
] ,
"referencedDeclaration" : 2468 ,
"src" : "788:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_function_require_pure$_t_bool_$returns$__$" ,
"typeString" : "function (bool) pure"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1656 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"kind" : "functionCall" ,
"lValueRequested" : false ,
"names" : [ ] ,
"nodeType" : "FunctionCall" ,
2018-05-10 11:12:13 +00:00
"src" : "788:73:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_tuple$__$" ,
"typeString" : "tuple()"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1657 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "788:73:17"
2018-05-04 14:04:04 +00:00
}
]
} ,
"condition" : {
"argumentTypes" : null ,
"commonType" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
2018-05-10 11:12:13 +00:00
"id" : 1637 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"leftExpression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1634 ,
2018-05-04 14:04:04 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1631 ,
"src" : "682:1:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"nodeType" : "BinaryOperation" ,
"operator" : "<" ,
"rightExpression" : {
"argumentTypes" : null ,
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1635 ,
2018-05-04 14:04:04 +00:00
"name" : "transactions" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1627 ,
"src" : "686:12:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_struct$_Transaction_$1624_memory_$dyn_memory_ptr" ,
2018-05-04 14:04:04 +00:00
"typeString" : "struct MultiSendStruct.Transaction memory[] memory"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1636 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"memberName" : "length" ,
"nodeType" : "MemberAccess" ,
"referencedDeclaration" : null ,
2018-05-10 11:12:13 +00:00
"src" : "686:19:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-10 11:12:13 +00:00
"src" : "682:23:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1659 ,
2018-05-04 14:04:04 +00:00
"initializationExpression" : {
"assignments" : [
2018-05-10 11:12:13 +00:00
1631
2018-05-04 14:04:04 +00:00
] ,
"declarations" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1631 ,
2018-05-04 14:04:04 +00:00
"name" : "i" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1661 ,
"src" : "667:9:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1630 ,
2018-05-04 14:04:04 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "667:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1633 ,
2018-05-04 14:04:04 +00:00
"initialValue" : {
"argumentTypes" : null ,
"hexValue" : "30" ,
2018-05-10 11:12:13 +00:00
"id" : 1632 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : true ,
"kind" : "number" ,
"lValueRequested" : false ,
"nodeType" : "Literal" ,
2018-05-10 11:12:13 +00:00
"src" : "679:1:17" ,
2018-05-04 14:04:04 +00:00
"subdenomination" : null ,
"typeDescriptions" : {
"typeIdentifier" : "t_rational_0_by_1" ,
"typeString" : "int_const 0"
} ,
"value" : "0"
} ,
"nodeType" : "VariableDeclarationStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "667:13:17"
2018-05-04 14:04:04 +00:00
} ,
"loopExpression" : {
"expression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1639 ,
2018-05-04 14:04:04 +00:00
"isConstant" : false ,
"isLValue" : false ,
"isPure" : false ,
"lValueRequested" : false ,
"nodeType" : "UnaryOperation" ,
"operator" : "++" ,
"prefix" : false ,
2018-05-10 11:12:13 +00:00
"src" : "707:3:17" ,
2018-05-04 14:04:04 +00:00
"subExpression" : {
"argumentTypes" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1638 ,
2018-05-04 14:04:04 +00:00
"name" : "i" ,
"nodeType" : "Identifier" ,
"overloadedDeclarations" : [ ] ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1631 ,
"src" : "707:1:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1640 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ExpressionStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "707:3:17"
2018-05-04 14:04:04 +00:00
} ,
"nodeType" : "ForStatement" ,
2018-05-10 11:12:13 +00:00
"src" : "663:209:17"
2018-05-04 14:04:04 +00:00
}
]
} ,
2018-05-10 11:12:13 +00:00
"documentation" : "@dev Sends multiple transactions and reverts all if one fails.\n @param transactions Encoded transactions." ,
"id" : 1661 ,
2018-05-04 14:04:04 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "multiSend" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-10 11:12:13 +00:00
"id" : 1628 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1627 ,
2018-05-04 14:04:04 +00:00
"name" : "transactions" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1661 ,
"src" : "606:26:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_struct$_Transaction_$1624_memory_$dyn_memory_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction[]"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
"baseType" : {
"contractScope" : null ,
2018-05-10 11:12:13 +00:00
"id" : 1625 ,
2018-05-04 14:04:04 +00:00
"name" : "Transaction" ,
"nodeType" : "UserDefinedTypeName" ,
2018-05-10 11:12:13 +00:00
"referencedDeclaration" : 1624 ,
"src" : "606:11:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_struct$_Transaction_$1624_storage_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction"
2018-05-04 14:04:04 +00:00
}
} ,
2018-05-10 11:12:13 +00:00
"id" : 1626 ,
2018-05-04 14:04:04 +00:00
"length" : null ,
"nodeType" : "ArrayTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "606:13:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
2018-05-10 11:12:13 +00:00
"typeIdentifier" : "t_array$_t_struct$_Transaction_$1624_storage_$dyn_storage_ptr" ,
"typeString" : "struct MultiSendStruct.Transaction[]"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "605:28:17"
2018-05-04 14:04:04 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-10 11:12:13 +00:00
"id" : 1629 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [ ] ,
2018-05-10 11:12:13 +00:00
"src" : "653:0:17"
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"scope" : 1675 ,
"src" : "587:291:17" ,
2018-05-04 14:04:04 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "public"
} ,
{
"body" : {
2018-05-10 11:12:13 +00:00
"id" : 1673 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "Block" ,
2018-05-10 11:12:13 +00:00
"src" : "996:180:17" ,
2018-05-04 14:04:04 +00:00
"statements" : [
{
"externalReferences" : [
{
"data" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1667 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1148:4:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
} ,
{
"data" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1667 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1129:4:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
} ,
{
"success" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1670 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1093:7:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
} ,
{
"to" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1663 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1114:2:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
} ,
{
"value" : {
2018-05-10 11:12:13 +00:00
"declaration" : 1665 ,
2018-05-04 14:04:04 +00:00
"isOffset" : false ,
"isSlot" : false ,
2018-05-10 11:12:13 +00:00
"src" : "1118:5:17" ,
2018-05-04 14:04:04 +00:00
"valueSize" : 1
}
}
] ,
2018-05-10 11:12:13 +00:00
"id" : 1672 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "InlineAssembly" ,
2018-05-10 11:12:13 +00:00
"operations" : "{\n success := call(gas(), to, value, add(data, 0x20), mload(data), 0, 0)\n}" ,
"src" : "1070:106:17"
2018-05-04 14:04:04 +00:00
}
]
} ,
2018-05-10 11:12:13 +00:00
"documentation" : null ,
"id" : 1674 ,
2018-05-04 14:04:04 +00:00
"implemented" : true ,
"isConstructor" : false ,
"isDeclaredConst" : false ,
"modifiers" : [ ] ,
"name" : "executeCall" ,
"nodeType" : "FunctionDefinition" ,
"parameters" : {
2018-05-10 11:12:13 +00:00
"id" : 1668 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1663 ,
2018-05-04 14:04:04 +00:00
"name" : "to" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1674 ,
"src" : "905:10:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1662 ,
2018-05-04 14:04:04 +00:00
"name" : "address" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "905:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_address" ,
"typeString" : "address"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1665 ,
2018-05-04 14:04:04 +00:00
"name" : "value" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1674 ,
"src" : "917:13:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1664 ,
2018-05-04 14:04:04 +00:00
"name" : "uint256" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "917:7:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_uint256" ,
"typeString" : "uint256"
}
} ,
"value" : null ,
"visibility" : "internal"
} ,
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1667 ,
2018-05-04 14:04:04 +00:00
"name" : "data" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1674 ,
"src" : "932:10:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_memory_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1666 ,
2018-05-04 14:04:04 +00:00
"name" : "bytes" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "932:5:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bytes_storage_ptr" ,
2018-05-10 11:12:13 +00:00
"typeString" : "bytes"
2018-05-04 14:04:04 +00:00
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "904:39:17"
2018-05-04 14:04:04 +00:00
} ,
"payable" : false ,
"returnParameters" : {
2018-05-10 11:12:13 +00:00
"id" : 1671 ,
2018-05-04 14:04:04 +00:00
"nodeType" : "ParameterList" ,
"parameters" : [
{
"constant" : false ,
2018-05-10 11:12:13 +00:00
"id" : 1670 ,
2018-05-04 14:04:04 +00:00
"name" : "success" ,
"nodeType" : "VariableDeclaration" ,
2018-05-10 11:12:13 +00:00
"scope" : 1674 ,
"src" : "978:12:17" ,
2018-05-04 14:04:04 +00:00
"stateVariable" : false ,
"storageLocation" : "default" ,
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
} ,
"typeName" : {
2018-05-10 11:12:13 +00:00
"id" : 1669 ,
2018-05-04 14:04:04 +00:00
"name" : "bool" ,
"nodeType" : "ElementaryTypeName" ,
2018-05-10 11:12:13 +00:00
"src" : "978:4:17" ,
2018-05-04 14:04:04 +00:00
"typeDescriptions" : {
"typeIdentifier" : "t_bool" ,
"typeString" : "bool"
}
} ,
"value" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "977:14:17"
2018-05-04 14:04:04 +00:00
} ,
2018-05-10 11:12:13 +00:00
"scope" : 1675 ,
"src" : "884:292:17" ,
2018-05-04 14:04:04 +00:00
"stateMutability" : "nonpayable" ,
"superFunction" : null ,
"visibility" : "internal"
}
] ,
2018-05-10 11:12:13 +00:00
"scope" : 1676 ,
"src" : "339:839:17"
2018-05-04 14:04:04 +00:00
}
] ,
2018-05-10 11:12:13 +00:00
"src" : "0:1179:17"
2018-05-04 14:04:04 +00:00
} ,
"compiler" : {
"name" : "solc" ,
2018-05-10 11:12:13 +00:00
"version" : "0.4.23+commit.124ca40d.Emscripten.clang"
2018-05-04 14:04:04 +00:00
} ,
"networks" : { } ,
"schemaVersion" : "2.0.0" ,
2018-05-10 11:12:13 +00:00
"updatedAt" : "2018-05-10T10:43:07.902Z"
2018-05-04 14:04:04 +00:00
}