Skip to main content

IExtensionRegistry

Methods

addExtension

function addExtension(IExtension.Extension extension) external nonpayable

Parameters

NameTypeDescription
extensionIExtension.Extensionundefined

getAllExtensions

function getAllExtensions() external view returns (struct IExtension.Extension[])

Returns all extensions stored.

Returns

NameTypeDescription
_0IExtension.Extension[]undefined

getAllFunctionsOfExtension

function getAllFunctionsOfExtension(string extensionName) external view returns (struct IExtension.ExtensionFunction[])

Returns all functions that belong to the given extension contract.

Parameters

NameTypeDescription
extensionNamestringundefined

Returns

NameTypeDescription
_0IExtension.ExtensionFunction[]undefined

getExtension

function getExtension(string extensionName) external view returns (struct IExtension.Extension)

Returns the extension metadata and functions for a given extension.

Parameters

NameTypeDescription
extensionNamestringundefined

Returns

NameTypeDescription
_0IExtension.Extensionundefined

getExtensionForFunction

function getExtensionForFunction(bytes4 functionSelector) external view returns (struct IExtension.ExtensionMetadata)

Returns the extension metadata for a given function.

Parameters

NameTypeDescription
functionSelectorbytes4undefined

Returns

NameTypeDescription
_0IExtension.ExtensionMetadataundefined

getExtensionImplementation

function getExtensionImplementation(string extensionName) external view returns (address)

Returns the extension's implementation smart contract address.

Parameters

NameTypeDescription
extensionNamestringundefined

Returns

NameTypeDescription
_0addressundefined

removeExtension

function removeExtension(string extension) external nonpayable

Remove an existing extension from the registry.

Parameters

NameTypeDescription
extensionstringundefined

updateExtension

function updateExtension(IExtension.Extension extension) external nonpayable

Parameters

NameTypeDescription
extensionIExtension.Extensionundefined

Events

ExtensionAdded

event ExtensionAdded(address indexed extensionAddress, bytes4 indexed functionSelector, string functionSignature)

Parameters

NameTypeDescription
extensionAddress indexedaddressundefined
functionSelector indexedbytes4undefined
functionSignaturestringundefined

ExtensionRemoved

event ExtensionRemoved(address indexed extensionAddress, bytes4 indexed functionSelector, string functionSignature)

Parameters

NameTypeDescription
extensionAddress indexedaddressundefined
functionSelector indexedbytes4undefined
functionSignaturestringundefined

ExtensionUpdated

event ExtensionUpdated(address indexed oldExtensionAddress, address indexed newExtensionAddress, bytes4 indexed functionSelector, string functionSignature)

Parameters

NameTypeDescription
oldExtensionAddress indexedaddressundefined
newExtensionAddress indexedaddressundefined
functionSelector indexedbytes4undefined
functionSignaturestringundefined