Skip to content

Commit 91516b2

Browse files
authored
Allow overriding of ERC1155 functions (#2263)
* Make receiver functions private * Make external functions public
1 parent 52f7b6e commit 91516b2

File tree

2 files changed

+11
-21
lines changed

2 files changed

+11
-21
lines changed

contracts/mocks/ERC1155Mock.sol

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,4 @@ contract ERC1155Mock is ERC1155 {
2424
function burnBatch(address owner, uint256[] memory ids, uint256[] memory values) public {
2525
_burnBatch(owner, ids, values);
2626
}
27-
28-
function doSafeTransferAcceptanceCheck(address operator, address from, address to, uint256 id, uint256 value, bytes memory data) public {
29-
_doSafeTransferAcceptanceCheck(operator, from, to, id, value, data);
30-
}
31-
32-
function doSafeBatchTransferAcceptanceCheck(address operator, address from, address to, uint256[] memory ids, uint256[] memory values, bytes memory data) public {
33-
_doSafeBatchTransferAcceptanceCheck(operator, from, to, ids, values, data);
34-
}
3527
}

contracts/token/ERC1155/ERC1155.sol

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ contract ERC1155 is ERC165, IERC1155
9999
* @param operator address to set the approval
100100
* @param approved representing the status of the approval to be set
101101
*/
102-
function setApprovalForAll(address operator, bool approved) external override virtual {
102+
function setApprovalForAll(address operator, bool approved) public virtual override {
103103
require(msg.sender != operator, "ERC1155: cannot set approval status for self");
104104
_operatorApprovals[msg.sender][operator] = approved;
105105
emit ApprovalForAll(msg.sender, operator, approved);
@@ -130,11 +130,11 @@ contract ERC1155 is ERC165, IERC1155
130130
address to,
131131
uint256 id,
132132
uint256 value,
133-
bytes calldata data
133+
bytes memory data
134134
)
135-
external
136-
override
135+
public
137136
virtual
137+
override
138138
{
139139
require(to != address(0), "ERC1155: target address must be non-zero");
140140
require(
@@ -164,13 +164,13 @@ contract ERC1155 is ERC165, IERC1155
164164
function safeBatchTransferFrom(
165165
address from,
166166
address to,
167-
uint256[] calldata ids,
168-
uint256[] calldata values,
169-
bytes calldata data
167+
uint256[] memory ids,
168+
uint256[] memory values,
169+
bytes memory data
170170
)
171-
external
172-
override
171+
public
173172
virtual
173+
override
174174
{
175175
require(ids.length == values.length, "ERC1155: IDs and values must have same lengths");
176176
require(to != address(0), "ERC1155: target address must be non-zero");
@@ -275,8 +275,7 @@ contract ERC1155 is ERC165, IERC1155
275275
uint256 value,
276276
bytes memory data
277277
)
278-
internal
279-
virtual
278+
private
280279
{
281280
if(to.isContract()) {
282281
require(
@@ -295,8 +294,7 @@ contract ERC1155 is ERC165, IERC1155
295294
uint256[] memory values,
296295
bytes memory data
297296
)
298-
internal
299-
virtual
297+
private
300298
{
301299
if(to.isContract()) {
302300
require(

0 commit comments

Comments
 (0)