Envoy-VC / 30-Days-of-Solidity
30 Days of Solidity step-by-step guide to learn Smart Contract Development.
This is Day 19
of 30
in Solidity Series
Today I Learned About Function Modifiers in Solidity.
Modifiers assist in the execution of a functionβs behavior. The behavior of a function can be changed using a function modifier, they can also be called before or after a function is executed.
Solidity function modifiers help in the following:
- To access restrictions
- Input accuracy checks
- Hacks protection
Example:
contract Owner {
modifier onlyOwner {
require(msg.sender == owner);
_;
}
}
The function body is inserted where the special symbol "_;" appears in the definition of a modifier. So if condition of modifier is satisfied while calling this function, the function is executed and otherwise, an exception is thrown.
Example:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;
contract Mint {
constructor() {
owner = msg.sender;
}
modifier onlyOwner {
require(msg.sender == owner);
_;
function _mint(address to , uint tokenId) onlyOwner {
mint(to, tokenId);
}
}
Top comments (0)