github-actions 3 жил өмнө
parent
commit
0627757030

+ 2 - 2
contracts/finance/VestingWallet.sol

@@ -84,7 +84,7 @@ contract VestingWallet is Context {
     /**
      * @dev Release the native token (ether) that have already vested.
      *
-     * Emits a {TokensReleased} event.
+     * Emits a {EtherReleased} event.
      */
     function release() public virtual {
         uint256 releasable = vestedAmount(uint64(block.timestamp)) - released();
@@ -96,7 +96,7 @@ contract VestingWallet is Context {
     /**
      * @dev Release the tokens that have already vested.
      *
-     * Emits a {TokensReleased} event.
+     * Emits a {ERC20Released} event.
      */
     function release(address token) public virtual {
         uint256 releasable = vestedAmount(token, uint64(block.timestamp)) - released(token);

+ 1 - 1
contracts/governance/Governor.sol

@@ -217,7 +217,7 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
     ) internal view virtual returns (uint256);
 
     /**
-     * @dev Register a vote with a given support and voting weight.
+     * @dev Register a vote for `proposalId` by `account` with a given `support`, voting `weight` and voting `params`.
      *
      * Note: Support is generic and can represent various things depending on the voting system used.
      */

+ 2 - 2
contracts/governance/IGovernor.sol

@@ -237,7 +237,7 @@ abstract contract IGovernor is IERC165 {
     /**
      * @dev Cast a vote with a reason and additional encoded parameters
      *
-     * Emits a {VoteCast} event.
+     * Emits a {VoteCast} or {VoteCastWithParams} event depending on the length of params.
      */
     function castVoteWithReasonAndParams(
         uint256 proposalId,
@@ -262,7 +262,7 @@ abstract contract IGovernor is IERC165 {
     /**
      * @dev Cast a vote with a reason and additional encoded parameters using the user's cryptographic signature.
      *
-     * Emits a {VoteCast} event.
+     * Emits a {VoteCast} or {VoteCastWithParams} event depending on the length of params.
      */
     function castVoteWithReasonAndParamsBySig(
         uint256 proposalId,

+ 1 - 1
contracts/interfaces/IERC3156FlashBorrower.sol

@@ -17,7 +17,7 @@ interface IERC3156FlashBorrower {
      * @param amount The amount of tokens lent.
      * @param fee The additional amount of tokens to repay.
      * @param data Arbitrary data structure, intended to contain user-defined parameters.
-     * @return The keccak256 hash of "ERC3156FlashBorrower.onFlashLoan"
+     * @return The keccak256 hash of "IERC3156FlashBorrower.onFlashLoan"
      */
     function onFlashLoan(
         address initiator,

+ 1 - 1
contracts/proxy/ERC1967/ERC1967Proxy.sol

@@ -17,7 +17,7 @@ contract ERC1967Proxy is Proxy, ERC1967Upgrade {
      * @dev Initializes the upgradeable proxy with an initial implementation specified by `_logic`.
      *
      * If `_data` is nonempty, it's used as data in a delegate call to `_logic`. This will typically be an encoded
-     * function call, and allows initializating the storage of the proxy like a Solidity constructor.
+     * function call, and allows initializing the storage of the proxy like a Solidity constructor.
      */
     constructor(address _logic, bytes memory _data) payable {
         assert(_IMPLEMENTATION_SLOT == bytes32(uint256(keccak256("eip1967.proxy.implementation")) - 1));

+ 2 - 2
contracts/proxy/beacon/BeaconProxy.sol

@@ -8,7 +8,7 @@ import "../Proxy.sol";
 import "../ERC1967/ERC1967Upgrade.sol";
 
 /**
- * @dev This contract implements a proxy that gets the implementation address for each call from a {UpgradeableBeacon}.
+ * @dev This contract implements a proxy that gets the implementation address for each call from an {UpgradeableBeacon}.
  *
  * The beacon address is stored in storage slot `uint256(keccak256('eip1967.proxy.beacon')) - 1`, so that it doesn't
  * conflict with the storage layout of the implementation behind the proxy.
@@ -20,7 +20,7 @@ contract BeaconProxy is Proxy, ERC1967Upgrade {
      * @dev Initializes the proxy with `beacon`.
      *
      * If `data` is nonempty, it's used as data in a delegate call to the implementation returned by the beacon. This
-     * will typically be an encoded function call, and allows initializating the storage of the proxy like a Solidity
+     * will typically be an encoded function call, and allows initializing the storage of the proxy like a Solidity
      * constructor.
      *
      * Requirements:

+ 4 - 0
contracts/security/PullPayment.sol

@@ -43,6 +43,8 @@ abstract contract PullPayment {
      * checks-effects-interactions pattern or using {ReentrancyGuard}.
      *
      * @param payee Whose payments will be withdrawn.
+     *
+     * Causes the `escrow` to emit a {Withdrawn} event.
      */
     function withdrawPayments(address payable payee) public virtual {
         _escrow.withdraw(payee);
@@ -63,6 +65,8 @@ abstract contract PullPayment {
      *
      * @param dest The destination address of the funds.
      * @param amount The amount to transfer.
+     *
+     * Causes the `escrow` to emit a {Deposited} event.
      */
     function _asyncTransfer(address dest, uint256 amount) internal virtual {
         _escrow.deposit{value: amount}(dest);

+ 8 - 2
contracts/token/ERC1155/ERC1155.sol

@@ -288,6 +288,8 @@ contract ERC1155 is Context, ERC165, IERC1155, IERC1155MetadataURI {
     /**
      * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {_mint}.
      *
+     * Emits a {TransferBatch} event.
+     *
      * Requirements:
      *
      * - `ids` and `amounts` must have the same length.
@@ -321,6 +323,8 @@ contract ERC1155 is Context, ERC165, IERC1155, IERC1155MetadataURI {
     /**
      * @dev Destroys `amount` tokens of token type `id` from `from`
      *
+     * Emits a {TransferSingle} event.
+     *
      * Requirements:
      *
      * - `from` cannot be the zero address.
@@ -353,6 +357,8 @@ contract ERC1155 is Context, ERC165, IERC1155, IERC1155MetadataURI {
     /**
      * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {_burn}.
      *
+     * Emits a {TransferBatch} event.
+     *
      * Requirements:
      *
      * - `ids` and `amounts` must have the same length.
@@ -388,7 +394,7 @@ contract ERC1155 is Context, ERC165, IERC1155, IERC1155MetadataURI {
     /**
      * @dev Approve `operator` to operate on all of `owner` tokens
      *
-     * Emits a {ApprovalForAll} event.
+     * Emits an {ApprovalForAll} event.
      */
     function _setApprovalForAll(
         address owner,
@@ -405,7 +411,7 @@ contract ERC1155 is Context, ERC165, IERC1155, IERC1155MetadataURI {
      * and burning, as well as batched variants.
      *
      * The same hook is called on both single and batched variants. For single
-     * transfers, the length of the `id` and `amount` arrays will be 1.
+     * transfers, the length of the `ids` and `amounts` arrays will be 1.
      *
      * Calling conditions (for each `id` and `amount` pair):
      *

+ 1 - 1
contracts/token/ERC20/ERC20.sol

@@ -210,7 +210,7 @@ contract ERC20 is Context, IERC20, IERC20Metadata {
     }
 
     /**
-     * @dev Moves `amount` of tokens from `sender` to `recipient`.
+     * @dev Moves `amount` of tokens from `from` to `to`.
      *
      * This internal function is equivalent to {transfer}, and can be used to
      * e.g. implement automatic token fees, slashing mechanisms, etc.

+ 12 - 12
contracts/token/ERC721/ERC721.sol

@@ -176,17 +176,17 @@ contract ERC721 is Context, ERC165, IERC721, IERC721Metadata {
         address from,
         address to,
         uint256 tokenId,
-        bytes memory _data
+        bytes memory data
     ) public virtual override {
         require(_isApprovedOrOwner(_msgSender(), tokenId), "ERC721: transfer caller is not owner nor approved");
-        _safeTransfer(from, to, tokenId, _data);
+        _safeTransfer(from, to, tokenId, data);
     }
 
     /**
      * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients
      * are aware of the ERC721 protocol to prevent tokens from being forever locked.
      *
-     * `_data` is additional data, it has no specified format and it is sent in call to `to`.
+     * `data` is additional data, it has no specified format and it is sent in call to `to`.
      *
      * This internal function is equivalent to {safeTransferFrom}, and can be used to e.g.
      * implement alternative mechanisms to perform token transfer, such as signature-based.
@@ -204,10 +204,10 @@ contract ERC721 is Context, ERC165, IERC721, IERC721Metadata {
         address from,
         address to,
         uint256 tokenId,
-        bytes memory _data
+        bytes memory data
     ) internal virtual {
         _transfer(from, to, tokenId);
-        require(_checkOnERC721Received(from, to, tokenId, _data), "ERC721: transfer to non ERC721Receiver implementer");
+        require(_checkOnERC721Received(from, to, tokenId, data), "ERC721: transfer to non ERC721Receiver implementer");
     }
 
     /**
@@ -256,11 +256,11 @@ contract ERC721 is Context, ERC165, IERC721, IERC721Metadata {
     function _safeMint(
         address to,
         uint256 tokenId,
-        bytes memory _data
+        bytes memory data
     ) internal virtual {
         _mint(to, tokenId);
         require(
-            _checkOnERC721Received(address(0), to, tokenId, _data),
+            _checkOnERC721Received(address(0), to, tokenId, data),
             "ERC721: transfer to non ERC721Receiver implementer"
         );
     }
@@ -353,7 +353,7 @@ contract ERC721 is Context, ERC165, IERC721, IERC721Metadata {
     /**
      * @dev Approve `to` to operate on `tokenId`
      *
-     * Emits a {Approval} event.
+     * Emits an {Approval} event.
      */
     function _approve(address to, uint256 tokenId) internal virtual {
         _tokenApprovals[tokenId] = to;
@@ -363,7 +363,7 @@ contract ERC721 is Context, ERC165, IERC721, IERC721Metadata {
     /**
      * @dev Approve `operator` to operate on all of `owner` tokens
      *
-     * Emits a {ApprovalForAll} event.
+     * Emits an {ApprovalForAll} event.
      */
     function _setApprovalForAll(
         address owner,
@@ -382,17 +382,17 @@ contract ERC721 is Context, ERC165, IERC721, IERC721Metadata {
      * @param from address representing the previous owner of the given token ID
      * @param to target address that will receive the tokens
      * @param tokenId uint256 ID of the token to be transferred
-     * @param _data bytes optional data to send along with the call
+     * @param data bytes optional data to send along with the call
      * @return bool whether the call correctly returned the expected magic value
      */
     function _checkOnERC721Received(
         address from,
         address to,
         uint256 tokenId,
-        bytes memory _data
+        bytes memory data
     ) private returns (bool) {
         if (to.isContract()) {
-            try IERC721Receiver(to).onERC721Received(_msgSender(), from, tokenId, _data) returns (bytes4 retval) {
+            try IERC721Receiver(to).onERC721Received(_msgSender(), from, tokenId, data) returns (bytes4 retval) {
                 return retval == IERC721Receiver.onERC721Received.selector;
             } catch (bytes memory reason) {
                 if (reason.length == 0) {

+ 2 - 1
contracts/token/ERC777/ERC777.sol

@@ -288,7 +288,8 @@ contract ERC777 is Context, IERC777, IERC20 {
      * the total supply.
      *
      * If a send hook is registered for `account`, the corresponding function
-     * will be called with `operator`, `data` and `operatorData`.
+     * will be called with the caller address as the `operator` and with
+     * `userData` and `operatorData`.
      *
      * See {IERC777Sender} and {IERC777Recipient}.
      *

+ 4 - 0
contracts/utils/escrow/Escrow.sol

@@ -34,6 +34,8 @@ contract Escrow is Ownable {
     /**
      * @dev Stores the sent amount as credit to be withdrawn.
      * @param payee The destination address of the funds.
+     *
+     * Emits a {Deposited} event.
      */
     function deposit(address payee) public payable virtual onlyOwner {
         uint256 amount = msg.value;
@@ -50,6 +52,8 @@ contract Escrow is Ownable {
      * checks-effects-interactions pattern or using {ReentrancyGuard}.
      *
      * @param payee The address whose funds will be withdrawn and transferred to.
+     *
+     * Emits a {Withdrawn} event.
      */
     function withdraw(address payable payee) public virtual onlyOwner {
         uint256 payment = _deposits[payee];

+ 2 - 2
docs/modules/api/pages/finance.adoc

@@ -2388,7 +2388,7 @@ Amount of token already released
 
 Release the native token (ether) that have already vested.
 
-Emits a {TokensReleased} event.
+Emits a {EtherReleased} event.
 
 [.contract-item]
 [[VestingWallet-release-address-]]
@@ -2396,7 +2396,7 @@ Emits a {TokensReleased} event.
 
 Release the tokens that have already vested.
 
-Emits a {TokensReleased} event.
+Emits a {ERC20Released} event.
 
 [.contract-item]
 [[VestingWallet-vestedAmount-uint64-]]

+ 3 - 3
docs/modules/api/pages/governance.adoc

@@ -2372,7 +2372,7 @@ Emits a {VoteCast} event.
 
 Cast a vote with a reason and additional encoded parameters
 
-Emits a {VoteCast} event.
+Emits a {VoteCast} or {VoteCastWithParams} event depending on the length of params.
 
 [.contract-item]
 [[IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-]]
@@ -2388,7 +2388,7 @@ Emits a {VoteCast} event.
 
 Cast a vote with a reason and additional encoded parameters using the user's cryptographic signature.
 
-Emits a {VoteCast} event.
+Emits a {VoteCast} or {VoteCastWithParams} event depending on the length of params.
 
 
 [.contract-item]
@@ -2698,7 +2698,7 @@ Get the voting weight of `account` at a specific `blockNumber`, for a vote as de
 [[Governor-_countVote-uint256-address-uint8-uint256-bytes-]]
 ==== `[.contract-item-name]#++_countVote++#++(uint256 proposalId, address account, uint8 support, uint256 weight, bytes params)++` [.item-kind]#internal#
 
-Register a vote with a given support and voting weight.
+Register a vote for `proposalId` by `account` with a given `support`, voting `weight` and voting `params`.
 
 Note: Support is generic and can represent various things depending on the voting system used.
 

+ 3 - 3
docs/modules/api/pages/proxy.adoc

@@ -2293,7 +2293,7 @@ implementation behind the proxy.
 Initializes the upgradeable proxy with an initial implementation specified by `_logic`.
 
 If `_data` is nonempty, it's used as data in a delegate call to `_logic`. This will typically be an encoded
-function call, and allows initializating the storage of the proxy like a Solidity constructor.
+function call, and allows initializing the storage of the proxy like a Solidity constructor.
 
 [.contract-item]
 [[ERC1967Proxy-_implementation--]]
@@ -2748,7 +2748,7 @@ Requirements:
 import "@openzeppelin/contracts/proxy/beacon/BeaconProxy.sol";
 ```
 
-This contract implements a proxy that gets the implementation address for each call from a {UpgradeableBeacon}.
+This contract implements a proxy that gets the implementation address for each call from an {UpgradeableBeacon}.
 
 The beacon address is stored in storage slot `uint256(keccak256('eip1967.proxy.beacon')) - 1`, so that it doesn't
 conflict with the storage layout of the implementation behind the proxy.
@@ -2808,7 +2808,7 @@ _Available since v3.4._
 Initializes the proxy with `beacon`.
 
 If `data` is nonempty, it's used as data in a delegate call to the implementation returned by the beacon. This
-will typically be an encoded function call, and allows initializating the storage of the proxy like a Solidity
+will typically be an encoded function call, and allows initializing the storage of the proxy like a Solidity
 constructor.
 
 Requirements:

+ 8 - 2
docs/modules/api/pages/token/ERC1155.adoc

@@ -2564,6 +2564,8 @@ acceptance magic value.
 
 xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {_mint}.
 
+Emits a {TransferBatch} event.
+
 Requirements:
 
 - `ids` and `amounts` must have the same length.
@@ -2576,6 +2578,8 @@ acceptance magic value.
 
 Destroys `amount` tokens of token type `id` from `from`
 
+Emits a {TransferSingle} event.
+
 Requirements:
 
 - `from` cannot be the zero address.
@@ -2587,6 +2591,8 @@ Requirements:
 
 xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {_burn}.
 
+Emits a {TransferBatch} event.
+
 Requirements:
 
 - `ids` and `amounts` must have the same length.
@@ -2597,7 +2603,7 @@ Requirements:
 
 Approve `operator` to operate on all of `owner` tokens
 
-Emits a {ApprovalForAll} event.
+Emits an {ApprovalForAll} event.
 
 [.contract-item]
 [[ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-]]
@@ -2607,7 +2613,7 @@ Hook that is called before any token transfer. This includes minting
 and burning, as well as batched variants.
 
 The same hook is called on both single and batched variants. For single
-transfers, the length of the `id` and `amount` arrays will be 1.
+transfers, the length of the `ids` and `amounts` arrays will be 1.
 
 Calling conditions (for each `id` and `amount` pair):
 

+ 1 - 1
docs/modules/api/pages/token/ERC20.adoc

@@ -2553,7 +2553,7 @@ Requirements:
 [[ERC20-_transfer-address-address-uint256-]]
 ==== `[.contract-item-name]#++_transfer++#++(address from, address to, uint256 amount)++` [.item-kind]#internal#
 
-Moves `amount` of tokens from `sender` to `recipient`.
+Moves `amount` of tokens from `from` to `to`.
 
 This internal function is equivalent to {transfer}, and can be used to
 e.g. implement automatic token fees, slashing mechanisms, etc.

+ 27 - 27
docs/modules/api/pages/token/ERC721.adoc

@@ -2524,12 +2524,12 @@ the Metadata extension, but not including the Enumerable extension, which is ava
 * {xref-ERC721-isApprovedForAll-address-address-}[`++isApprovedForAll(owner, operator)++`]
 * {xref-ERC721-transferFrom-address-address-uint256-}[`++transferFrom(from, to, tokenId)++`]
 * {xref-ERC721-safeTransferFrom-address-address-uint256-}[`++safeTransferFrom(from, to, tokenId)++`]
-* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, _data)++`]
-* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, _data)++`]
+* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, data)++`]
+* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, data)++`]
 * {xref-ERC721-_exists-uint256-}[`++_exists(tokenId)++`]
 * {xref-ERC721-_isApprovedOrOwner-address-uint256-}[`++_isApprovedOrOwner(spender, tokenId)++`]
 * {xref-ERC721-_safeMint-address-uint256-}[`++_safeMint(to, tokenId)++`]
-* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, _data)++`]
+* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, data)++`]
 * {xref-ERC721-_mint-address-uint256-}[`++_mint(to, tokenId)++`]
 * {xref-ERC721-_burn-uint256-}[`++_burn(tokenId)++`]
 * {xref-ERC721-_transfer-address-address-uint256-}[`++_transfer(from, to, tokenId)++`]
@@ -2665,18 +2665,18 @@ See {IERC721-safeTransferFrom}.
 
 [.contract-item]
 [[ERC721-safeTransferFrom-address-address-uint256-bytes-]]
-==== `[.contract-item-name]#++safeTransferFrom++#++(address from, address to, uint256 tokenId, bytes _data)++` [.item-kind]#public#
+==== `[.contract-item-name]#++safeTransferFrom++#++(address from, address to, uint256 tokenId, bytes data)++` [.item-kind]#public#
 
 See {IERC721-safeTransferFrom}.
 
 [.contract-item]
 [[ERC721-_safeTransfer-address-address-uint256-bytes-]]
-==== `[.contract-item-name]#++_safeTransfer++#++(address from, address to, uint256 tokenId, bytes _data)++` [.item-kind]#internal#
+==== `[.contract-item-name]#++_safeTransfer++#++(address from, address to, uint256 tokenId, bytes data)++` [.item-kind]#internal#
 
 Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients
 are aware of the ERC721 protocol to prevent tokens from being forever locked.
 
-`_data` is additional data, it has no specified format and it is sent in call to `to`.
+`data` is additional data, it has no specified format and it is sent in call to `to`.
 
 This internal function is equivalent to {safeTransferFrom}, and can be used to e.g.
 implement alternative mechanisms to perform token transfer, such as signature-based.
@@ -2726,7 +2726,7 @@ Emits a {Transfer} event.
 
 [.contract-item]
 [[ERC721-_safeMint-address-uint256-bytes-]]
-==== `[.contract-item-name]#++_safeMint++#++(address to, uint256 tokenId, bytes _data)++` [.item-kind]#internal#
+==== `[.contract-item-name]#++_safeMint++#++(address to, uint256 tokenId, bytes data)++` [.item-kind]#internal#
 
 Same as {xref-ERC721-_safeMint-address-uint256-}[`_safeMint`], with an additional `data` parameter which is
 forwarded in {IERC721Receiver-onERC721Received} to contract recipients.
@@ -2779,7 +2779,7 @@ Emits a {Transfer} event.
 
 Approve `to` to operate on `tokenId`
 
-Emits a {Approval} event.
+Emits an {Approval} event.
 
 [.contract-item]
 [[ERC721-_setApprovalForAll-address-address-bool-]]
@@ -2787,7 +2787,7 @@ Emits a {Approval} event.
 
 Approve `operator` to operate on all of `owner` tokens
 
-Emits a {ApprovalForAll} event.
+Emits an {ApprovalForAll} event.
 
 [.contract-item]
 [[ERC721-_beforeTokenTransfer-address-address-uint256-]]
@@ -2871,12 +2871,12 @@ account.
 * {xref-ERC721-isApprovedForAll-address-address-}[`++isApprovedForAll(owner, operator)++`]
 * {xref-ERC721-transferFrom-address-address-uint256-}[`++transferFrom(from, to, tokenId)++`]
 * {xref-ERC721-safeTransferFrom-address-address-uint256-}[`++safeTransferFrom(from, to, tokenId)++`]
-* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, _data)++`]
-* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, _data)++`]
+* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, data)++`]
+* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, data)++`]
 * {xref-ERC721-_exists-uint256-}[`++_exists(tokenId)++`]
 * {xref-ERC721-_isApprovedOrOwner-address-uint256-}[`++_isApprovedOrOwner(spender, tokenId)++`]
 * {xref-ERC721-_safeMint-address-uint256-}[`++_safeMint(to, tokenId)++`]
-* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, _data)++`]
+* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, data)++`]
 * {xref-ERC721-_mint-address-uint256-}[`++_mint(to, tokenId)++`]
 * {xref-ERC721-_burn-uint256-}[`++_burn(tokenId)++`]
 * {xref-ERC721-_transfer-address-address-uint256-}[`++_transfer(from, to, tokenId)++`]
@@ -3062,12 +3062,12 @@ event of a large bug.
 * {xref-ERC721-isApprovedForAll-address-address-}[`++isApprovedForAll(owner, operator)++`]
 * {xref-ERC721-transferFrom-address-address-uint256-}[`++transferFrom(from, to, tokenId)++`]
 * {xref-ERC721-safeTransferFrom-address-address-uint256-}[`++safeTransferFrom(from, to, tokenId)++`]
-* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, _data)++`]
-* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, _data)++`]
+* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, data)++`]
+* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, data)++`]
 * {xref-ERC721-_exists-uint256-}[`++_exists(tokenId)++`]
 * {xref-ERC721-_isApprovedOrOwner-address-uint256-}[`++_isApprovedOrOwner(spender, tokenId)++`]
 * {xref-ERC721-_safeMint-address-uint256-}[`++_safeMint(to, tokenId)++`]
-* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, _data)++`]
+* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, data)++`]
 * {xref-ERC721-_mint-address-uint256-}[`++_mint(to, tokenId)++`]
 * {xref-ERC721-_burn-uint256-}[`++_burn(tokenId)++`]
 * {xref-ERC721-_transfer-address-address-uint256-}[`++_transfer(from, to, tokenId)++`]
@@ -3171,12 +3171,12 @@ ERC721 Token that can be irreversibly burned (destroyed).
 * {xref-ERC721-isApprovedForAll-address-address-}[`++isApprovedForAll(owner, operator)++`]
 * {xref-ERC721-transferFrom-address-address-uint256-}[`++transferFrom(from, to, tokenId)++`]
 * {xref-ERC721-safeTransferFrom-address-address-uint256-}[`++safeTransferFrom(from, to, tokenId)++`]
-* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, _data)++`]
-* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, _data)++`]
+* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, data)++`]
+* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, data)++`]
 * {xref-ERC721-_exists-uint256-}[`++_exists(tokenId)++`]
 * {xref-ERC721-_isApprovedOrOwner-address-uint256-}[`++_isApprovedOrOwner(spender, tokenId)++`]
 * {xref-ERC721-_safeMint-address-uint256-}[`++_safeMint(to, tokenId)++`]
-* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, _data)++`]
+* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, data)++`]
 * {xref-ERC721-_mint-address-uint256-}[`++_mint(to, tokenId)++`]
 * {xref-ERC721-_burn-uint256-}[`++_burn(tokenId)++`]
 * {xref-ERC721-_transfer-address-address-uint256-}[`++_transfer(from, to, tokenId)++`]
@@ -3279,12 +3279,12 @@ ERC721 token with storage based token URI management.
 * {xref-ERC721-isApprovedForAll-address-address-}[`++isApprovedForAll(owner, operator)++`]
 * {xref-ERC721-transferFrom-address-address-uint256-}[`++transferFrom(from, to, tokenId)++`]
 * {xref-ERC721-safeTransferFrom-address-address-uint256-}[`++safeTransferFrom(from, to, tokenId)++`]
-* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, _data)++`]
-* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, _data)++`]
+* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, data)++`]
+* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, data)++`]
 * {xref-ERC721-_exists-uint256-}[`++_exists(tokenId)++`]
 * {xref-ERC721-_isApprovedOrOwner-address-uint256-}[`++_isApprovedOrOwner(spender, tokenId)++`]
 * {xref-ERC721-_safeMint-address-uint256-}[`++_safeMint(to, tokenId)++`]
-* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, _data)++`]
+* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, data)++`]
 * {xref-ERC721-_mint-address-uint256-}[`++_mint(to, tokenId)++`]
 * {xref-ERC721-_transfer-address-address-uint256-}[`++_transfer(from, to, tokenId)++`]
 * {xref-ERC721-_approve-address-uint256-}[`++_approve(to, tokenId)++`]
@@ -3431,12 +3431,12 @@ _Available since v4.5._
 * {xref-ERC721-isApprovedForAll-address-address-}[`++isApprovedForAll(owner, operator)++`]
 * {xref-ERC721-transferFrom-address-address-uint256-}[`++transferFrom(from, to, tokenId)++`]
 * {xref-ERC721-safeTransferFrom-address-address-uint256-}[`++safeTransferFrom(from, to, tokenId)++`]
-* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, _data)++`]
-* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, _data)++`]
+* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, data)++`]
+* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, data)++`]
 * {xref-ERC721-_exists-uint256-}[`++_exists(tokenId)++`]
 * {xref-ERC721-_isApprovedOrOwner-address-uint256-}[`++_isApprovedOrOwner(spender, tokenId)++`]
 * {xref-ERC721-_safeMint-address-uint256-}[`++_safeMint(to, tokenId)++`]
-* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, _data)++`]
+* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, data)++`]
 * {xref-ERC721-_mint-address-uint256-}[`++_mint(to, tokenId)++`]
 * {xref-ERC721-_burn-uint256-}[`++_burn(tokenId)++`]
 * {xref-ERC721-_transfer-address-address-uint256-}[`++_transfer(from, to, tokenId)++`]
@@ -3564,12 +3564,12 @@ _Available since v4.5._
 * {xref-ERC721-isApprovedForAll-address-address-}[`++isApprovedForAll(owner, operator)++`]
 * {xref-ERC721-transferFrom-address-address-uint256-}[`++transferFrom(from, to, tokenId)++`]
 * {xref-ERC721-safeTransferFrom-address-address-uint256-}[`++safeTransferFrom(from, to, tokenId)++`]
-* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, _data)++`]
-* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, _data)++`]
+* {xref-ERC721-safeTransferFrom-address-address-uint256-bytes-}[`++safeTransferFrom(from, to, tokenId, data)++`]
+* {xref-ERC721-_safeTransfer-address-address-uint256-bytes-}[`++_safeTransfer(from, to, tokenId, data)++`]
 * {xref-ERC721-_exists-uint256-}[`++_exists(tokenId)++`]
 * {xref-ERC721-_isApprovedOrOwner-address-uint256-}[`++_isApprovedOrOwner(spender, tokenId)++`]
 * {xref-ERC721-_safeMint-address-uint256-}[`++_safeMint(to, tokenId)++`]
-* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, _data)++`]
+* {xref-ERC721-_safeMint-address-uint256-bytes-}[`++_safeMint(to, tokenId, data)++`]
 * {xref-ERC721-_mint-address-uint256-}[`++_mint(to, tokenId)++`]
 * {xref-ERC721-_transfer-address-address-uint256-}[`++_transfer(from, to, tokenId)++`]
 * {xref-ERC721-_approve-address-uint256-}[`++_approve(to, tokenId)++`]

+ 2 - 1
docs/modules/api/pages/token/ERC777.adoc

@@ -2630,7 +2630,8 @@ Creates `amount` tokens and assigns them to `account`, increasing
 the total supply.
 
 If a send hook is registered for `account`, the corresponding function
-will be called with `operator`, `data` and `operatorData`.
+will be called with the caller address as the `operator` and with
+`userData` and `operatorData`.
 
 See {IERC777Sender} and {IERC777Recipient}.