LibDiamond
DIAMOND_STORAGE_POSITION
bytes32 DIAMOND_STORAGE_POSITION
FacetAddressAndPosition
struct FacetAddressAndPosition {
address facetAddress;
uint96 functionSelectorPosition;
}
FacetFunctionSelectors
struct FacetFunctionSelectors {
bytes4[] functionSelectors;
uint256 facetAddressPosition;
}
DiamondStorage
struct DiamondStorage {
mapping(bytes4 => struct LibDiamond.FacetAddressAndPosition) selectorToFacetAndPosition;
mapping(address => struct LibDiamond.FacetFunctionSelectors) facetFunctionSelectors;
address[] facetAddresses;
mapping(bytes4 => bool) supportedInterfaces;
address contractOwner;
}
diamondStorage
function diamondStorage() internal pure returns (struct LibDiamond.DiamondStorage ds)
OwnershipTransferred
event OwnershipTransferred(address previousOwner, address newOwner)
setContractOwner
function setContractOwner(address _newOwner) internal
contractOwner
function contractOwner() internal view returns (address contractOwner_)
enforceIsContractOwner
function enforceIsContractOwner() internal view
DiamondCut
event DiamondCut(struct IDiamondCut.FacetCut[] _diamondCut, address _init, bytes _calldata)
diamondCut
function diamondCut(struct IDiamondCut.FacetCut[] _diamondCut, address _init, bytes _calldata) internal
addFunctions
function addFunctions(address _facetAddress, bytes4[] _functionSelectors) internal
replaceFunctions
function replaceFunctions(address _facetAddress, bytes4[] _functionSelectors) internal
removeFunctions
function removeFunctions(address _facetAddress, bytes4[] _functionSelectors) internal
addFacet
function addFacet(struct LibDiamond.DiamondStorage ds, address _facetAddress) internal
addFunction
function addFunction(struct LibDiamond.DiamondStorage ds, bytes4 _selector, uint96 _selectorPosition, address _facetAddress) internal
removeFunction
function removeFunction(struct LibDiamond.DiamondStorage ds, address _facetAddress, bytes4 _selector) internal
initializeDiamondCut
function initializeDiamondCut(address _init, bytes _calldata) internal
enforceHasContractCode
function enforceHasContractCode(address _contract, string _errorMessage) internal view