LibDiamond
LibDiamond
DIAMOND_STORAGE_POSITION
bytes32 DIAMOND_STORAGE_POSITIONFacetAddressAndPosition
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
OwnershipTransferred
setContractOwner
contractOwner
enforceIsContractOwner
DiamondCut
diamondCut
addFunctions
replaceFunctions
removeFunctions
addFacet
addFunction
removeFunction
initializeDiamondCut
enforceHasContractCode
Was this helpful?