Skip to main content

IDiamondLoupe

Asset Tokenization Studio Team

IDiamondLoupe

Interface for inspecting the selectors, interface identifiers, and facet addresses registered in the Diamond proxy, with optional pagination for large registries.

Methods​

getFacet​

function getFacet(bytes32 _facetId) external view returns (struct IDiamondLoupe.Facet facet_)

Get the information associated with an specific facet

If facet is not found return empty Facet struct

Parameters​

NameTypeDescription
_facetIdbytes32The facet key for the resolver

Returns​

NameTypeDescription
facet_IDiamondLoupe.FacetFacet data

getFacetAddress​

function getFacetAddress(bytes4 _selector) external view returns (address facetAddress_)

Gets the facet that supports the given selector

If facet is not found return address(0)

Parameters​

NameTypeDescription
_selectorbytes4The function selector

Returns​

NameTypeDescription
facetAddress_addressThe facet address

getFacetAddresses​

function getFacetAddresses() external view returns (address[] facetAddresses_)

Get all the facet addresses used by a resolverProxy

Returns​

NameTypeDescription
facetAddresses_address[]facetAddresses_

getFacetAddressesByPage​

function getFacetAddressesByPage(uint256 _pageIndex, uint256 _pageLength) external view returns (address[] facetAddresses_)

Get all the facet addresses used by a resolverProxy

Parameters​

NameTypeDescription
_pageIndexuint256members to skip : _pageIndex * _pageLength
_pageLengthuint256number of members to return

Returns​

NameTypeDescription
facetAddresses_address[]facetAddresses_

getFacetIdBySelector​

function getFacetIdBySelector(bytes4 _selector) external view returns (bytes32 facetId_)

Gets the facet key that supports the given selector

If facet is not found return address(0)

Parameters​

NameTypeDescription
_selectorbytes4The function selector

Returns​

NameTypeDescription
facetId_bytes32The facet key

getFacetIds​

function getFacetIds() external view returns (bytes32[] facetIds_)

Get all the facet addresses used by a resolverProxy

Returns​

NameTypeDescription
facetIds_bytes32[]facetIds_

getFacetIdsByPage​

function getFacetIdsByPage(uint256 _pageIndex, uint256 _pageLength) external view returns (bytes32[] facetIds_)

Get all the facet addresses used by a resolverProxy

Parameters​

NameTypeDescription
_pageIndexuint256members to skip : _pageIndex * _pageLength
_pageLengthuint256number of members to return

Returns​

NameTypeDescription
facetIds_bytes32[]facetIds_

getFacetSelectors​

function getFacetSelectors(bytes32 _facetId) external view returns (bytes4[] facetSelectors_)

Gets all the function selectors supported by a specific facet.

Parameters​

NameTypeDescription
_facetIdbytes32The facet key for the resolver.

Returns​

NameTypeDescription
facetSelectors_bytes4[]facetSelectors_

getFacetSelectorsByPage​

function getFacetSelectorsByPage(bytes32 _facetId, uint256 _pageIndex, uint256 _pageLength) external view returns (bytes4[] facetSelectors_)

Gets all the function selectors supported by a specific facet.

Parameters​

NameTypeDescription
_facetIdbytes32The facet key for the resolver.
_pageIndexuint256members to skip : _pageIndex * _pageLength
_pageLengthuint256number of members to return

Returns​

NameTypeDescription
facetSelectors_bytes4[]facetSelectors_

getFacetSelectorsLength​

function getFacetSelectorsLength(bytes32 _facetId) external view returns (uint256 facetSelectorsLength_)

Gets the function selectors length.

Parameters​

NameTypeDescription
_facetIdbytes32The facet key for the resolver.

Returns​

NameTypeDescription
facetSelectorsLength_uint256facetSelectorsLength_

getFacets​

function getFacets() external view returns (struct IDiamondLoupe.Facet[] facets_)

Gets all facet addresses and their four byte function selectors.

Returns​

NameTypeDescription
facets_IDiamondLoupe.Facet[]Facet

getFacetsByPage​

function getFacetsByPage(uint256 _pageIndex, uint256 _pageLength) external view returns (struct IDiamondLoupe.Facet[] facets_)

Gets all facet addresses and their four byte function selectors.

Parameters​

NameTypeDescription
_pageIndexuint256members to skip : _pageIndex * _pageLength
_pageLengthuint256number of members to return

Returns​

NameTypeDescription
facets_IDiamondLoupe.Facet[]Facet

getFacetsLength​

function getFacetsLength() external view returns (uint256 facetsLength_)

Gets facet length.

Returns​

NameTypeDescription
facetsLength_uint256Facets length

getStaticFunctionSelectors​

function getStaticFunctionSelectors() external pure returns (bytes4[] staticFunctionSelectors_)

Gets all function selectors of a facet

Returns​

NameTypeDescription
staticFunctionSelectors_bytes4[]Face functions selectors

getStaticInterfaceIds​

function getStaticInterfaceIds() external pure returns (bytes4[] staticInterfaceIds_)

Gets all interfaces ids of a facet.

Returns​

NameTypeDescription
staticInterfaceIds_bytes4[]Face interface ids

getStaticResolverKey​

function getStaticResolverKey() external pure returns (bytes32 staticResolverKey_)

Gets the static resolver key

Returns​

NameTypeDescription
staticResolverKey_bytes32Static resolver key