Skip to main content

is_receiver_hook

Function is_receiver_hook 

Source
fn is_receiver_hook(hir: &Hir<'_>, function_id: FunctionId) -> bool
Expand description

Whether a resolved declaration is the ERC721 receiver hook: the exact name, the exact (address, address, uint256, bytes) shape, and an externally callable declaration of a non-library contract. The name alone would let a call to a same-name function of an unrelated interface, which answers on a different selector, pass as the check, and an attached library or free function runs in the minting contract without any external call, so resolving to one says nothing about the recipient.