Add ContractDefinition::interfaceId() helper

This commit is contained in:
Alex Beregszaszi
2020-09-14 20:34:52 +01:00
parent 83934254ea
commit 9aa9962f71
5 changed files with 13 additions and 13 deletions
+1 -4
View File
@@ -1598,10 +1598,7 @@ bool ExpressionCompiler::visit(MemberAccess const& _memberAccess)
{
TypePointer arg = dynamic_cast<MagicType const&>(*_memberAccess.expression().annotation().type).typeArgument();
ContractDefinition const& contract = dynamic_cast<ContractType const&>(*arg).contractDefinition();
uint64_t result{0};
for (auto const& function: contract.interfaceFunctionList(false))
result ^= fromBigEndian<uint64_t>(function.first.ref());
m_context << (u256{result} << (256 - 32));
m_context << (u256{contract.interfaceId()} << (256 - 32));
}
else if (member == "min" || member == "max")
{