Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

IERC777Sender

Interface of the ERC-777 Tokens Sender standard as defined in the ERC. {IERC777} Token holders can be notified of operations performed on their tokens by having a contract implement this interface (contract holders can be their own implementer) and registering it on the https://eips.ethereum.org/EIPS/eip-1820[ERC-1820 global registry]. See {IERC1820Registry} and {IERC1820Implementer}.

Functions

tokensToSend

Called by an {IERC777} token contract whenever a registered holder's (from) tokens are about to be moved or destroyed. The type of operation is conveyed by to being the zero address or not. This call occurs before the token contract's state is updated, so {IERC777-balanceOf}, etc., can be used to query the pre-operation state. This function may revert to prevent the operation from being executed.

function tokensToSend(
    address operator,
    address from,
    address to,
    uint256 amount,
    bytes calldata userData,
    bytes calldata operatorData
) external;