Skip to content

Commit 2be0988

Browse files
authored
Merge pull request #31 from Snowstorm05/matching
Refactor OnlyAuthorized contract for better error handling
2 parents 81ef273 + becff9f commit 2be0988

1 file changed

Lines changed: 15 additions & 9 deletions

File tree

src/OnlyAuthorized.sol

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,28 @@
11
// SPDX-License-Identifier: UNLICENSED
2-
32
pragma solidity ^0.8.0;
43

54
contract OnlyAuthorized {
6-
address public owner = msg.sender;
5+
address public owner;
6+
uint256 public n;
7+
8+
error OnlyOwner();
9+
error ZeroAddress();
10+
11+
constructor() {
12+
owner = msg.sender;
13+
}
714

815
modifier onlyOwner() {
9-
require(owner == msg.sender, "Only owner");
16+
if (msg.sender != owner) revert OnlyOwner();
1017
_;
1118
}
1219

13-
function changeOwner(address _newOwner) public onlyOwner {
14-
owner = _newOwner;
20+
function changeOwner(address newOwner) external onlyOwner {
21+
if (newOwner == address(0)) revert ZeroAddress();
22+
owner = newOwner;
1523
}
1624

17-
uint256 public n;
18-
19-
function setN(uint256 n_) public {
20-
n = n_;
25+
function setN(uint256 newN) external {
26+
n = newN;
2127
}
2228
}

0 commit comments

Comments
 (0)