aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/interface/ABI.cpp
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2017-08-15 23:39:20 +0800
committerGitHub <noreply@github.com>2017-08-15 23:39:20 +0800
commit29cf3d9c585b836a19b6a8c054c51bd4e545533f (patch)
tree10f99868e89e3de22dd6fd6ad560024ce9bba810 /libsolidity/interface/ABI.cpp
parent7091503d82dca7cb1a505753c63160fddf4a0d86 (diff)
parent1f5ab603a74ded4058d3c7103e436112852b45ba (diff)
downloaddexon-solidity-29cf3d9c585b836a19b6a8c054c51bd4e545533f.tar
dexon-solidity-29cf3d9c585b836a19b6a8c054c51bd4e545533f.tar.gz
dexon-solidity-29cf3d9c585b836a19b6a8c054c51bd4e545533f.tar.bz2
dexon-solidity-29cf3d9c585b836a19b6a8c054c51bd4e545533f.tar.lz
dexon-solidity-29cf3d9c585b836a19b6a8c054c51bd4e545533f.tar.xz
dexon-solidity-29cf3d9c585b836a19b6a8c054c51bd4e545533f.tar.zst
dexon-solidity-29cf3d9c585b836a19b6a8c054c51bd4e545533f.zip
Merge pull request #2732 from ethereum/statemutability-abi
Add statemutability field to ABI
Diffstat (limited to 'libsolidity/interface/ABI.cpp')
-rw-r--r--libsolidity/interface/ABI.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/libsolidity/interface/ABI.cpp b/libsolidity/interface/ABI.cpp
index 12f958fc..9fc2f4e8 100644
--- a/libsolidity/interface/ABI.cpp
+++ b/libsolidity/interface/ABI.cpp
@@ -38,6 +38,7 @@ Json::Value ABI::generate(ContractDefinition const& _contractDef)
method["name"] = it.second->declaration().name();
method["constant"] = it.second->isConstant();
method["payable"] = it.second->isPayable();
+ method["statemutability"] = stateMutabilityToString(it.second->stateMutability());
method["inputs"] = formatTypeList(
externalFunctionType->parameterNames(),
externalFunctionType->parameterTypes(),
@@ -57,6 +58,7 @@ Json::Value ABI::generate(ContractDefinition const& _contractDef)
auto externalFunction = FunctionType(*_contractDef.constructor(), false).interfaceFunctionType();
solAssert(!!externalFunction, "");
method["payable"] = externalFunction->isPayable();
+ method["statemutability"] = stateMutabilityToString(externalFunction->stateMutability());
method["inputs"] = formatTypeList(
externalFunction->parameterNames(),
externalFunction->parameterTypes(),
@@ -71,6 +73,7 @@ Json::Value ABI::generate(ContractDefinition const& _contractDef)
Json::Value method;
method["type"] = "fallback";
method["payable"] = externalFunctionType->isPayable();
+ method["statemutability"] = stateMutabilityToString(externalFunctionType->stateMutability());
abi.append(method);
}
for (auto const& it: _contractDef.interfaceEvents())