AccessControlNonRevokableAdmin.sol 494 B

1234567891011121314151617
  1. // contracts/AccessControlNonRevokableAdmin.sol
  2. // SPDX-License-Identifier: MIT
  3. pragma solidity ^0.8.20;
  4. import {AccessControl} from "../../../access/AccessControl.sol";
  5. contract AccessControlNonRevokableAdmin is AccessControl {
  6. error AccessControlNonRevokable();
  7. function revokeRole(bytes32 role, address account) public override {
  8. if (role == DEFAULT_ADMIN_ROLE) {
  9. revert AccessControlNonRevokable();
  10. }
  11. super.revokeRole(role, account);
  12. }
  13. }