Merge pull request #2382 from ruchevits/combined-json-hashes

Allow including hashes of method signatures in --combined-json output
This commit is contained in:
chriseth
2017-06-15 10:10:18 +02:00
committed by GitHub
4 changed files with 15 additions and 9 deletions
+8
View File
@@ -481,6 +481,14 @@ Json::Value const& CompilerStack::natspec(Contract const& _contract, Documentati
return *(*doc);
}
Json::Value CompilerStack::functionHashes(ContractDefinition const& _contract)
{
Json::Value functionHashes(Json::objectValue);
for (auto const& it: _contract.interfaceFunctions())
functionHashes[it.second->externalSignature()] = toHex(it.first.ref());
return functionHashes;
}
string const& CompilerStack::onChainMetadata(string const& _contractName) const
{
if (m_stackState != CompilationSuccessful)
+3
View File
@@ -177,6 +177,9 @@ public:
/// @param type The type of the documentation to get.
/// Can be one of 4 types defined at @c DocumentationType
Json::Value const& natspec(std::string const& _contractName, DocumentationType _type) const;
Json::Value functionHashes(ContractDefinition const& _contract);
std::string const& onChainMetadata(std::string const& _contractName) const;
void useMetadataLiteralSources(bool _metadataLiteralSources) { m_metadataLiteralSources = _metadataLiteralSources; }