mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #7719 from ethereum/librarySignatuŕes
Add selector member to public and external library functions.
This commit is contained in:
@@ -2969,6 +2969,20 @@ MemberList::MemberMap FunctionType::nativeMembers(ContractDefinition const*) con
|
||||
);
|
||||
return members;
|
||||
}
|
||||
case Kind::DelegateCall:
|
||||
{
|
||||
auto const* functionDefinition = dynamic_cast<FunctionDefinition const*>(m_declaration);
|
||||
solAssert(functionDefinition, "");
|
||||
solAssert(functionDefinition->visibility() != Declaration::Visibility::Private, "");
|
||||
if (functionDefinition->visibility() != Declaration::Visibility::Internal)
|
||||
{
|
||||
auto const* contract = dynamic_cast<ContractDefinition const*>(m_declaration->scope());
|
||||
solAssert(contract, "");
|
||||
solAssert(contract->isLibrary(), "");
|
||||
return {{"selector", TypeProvider::fixedBytes(4)}};
|
||||
}
|
||||
return {};
|
||||
}
|
||||
default:
|
||||
return MemberList::MemberMap();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user