{
    "Function": "revokeOperator",
    "File": "contracts/openzeppelin-solidity/contracts/token/ERC777/ERC777.sol",
    "Parent Contracts": [
        "contracts/openzeppelin-solidity/contracts/token/ERC20/IERC20.sol",
        "contracts/openzeppelin-solidity/contracts/token/ERC777/IERC777.sol",
        "contracts/openzeppelin-solidity/contracts/utils/Context.sol"
    ],
    "High-Level Calls": [],
    "Internal Calls": [
        "require(bool,string)",
        "_msgSender",
        "_msgSender",
        "_msgSender",
        "_msgSender"
    ],
    "Library Calls": [],
    "Low-Level Calls": [],
    "Code": "function revokeOperator(address operator) public virtual override {\n        require(operator != _msgSender(), \"ERC777: revoking self as operator\");\n\n        if (_defaultOperators[operator]) {\n            _revokedDefaultOperators[_msgSender()][operator] = true;\n        } else {\n            delete _operators[_msgSender()][operator];\n        }\n\n        emit RevokedOperator(operator, _msgSender());\n    }"
}