SetRegistryAdmin

Git Source

Helper for managing privileged registration and upgrade operations with the SetRegistry.

Intended to be inherited by set contracts. Assumes SetContext is correctly configured. All methods act on the calling contract’s associated set and must be access-controlled.

Functions

registerSet

Registers the calling contract as a new set in the SetRegistry.

function registerSet(bytes32 data) external returns (uint64 id, Descriptor memory od);

Parameters

NameTypeDescription
databytes32Content hash (e.g., metadata or schema reference).

Returns

NameTypeDescription
iduint64Newly assigned set ID.
odDescriptorDescriptor of the registered set.

updateSet

Updates the content hash of the set represented by the calling contract.

function updateSet(bytes32 data) external returns (uint64 id, Descriptor memory od);

Parameters

NameTypeDescription
databytes32New content hash.

Returns

NameTypeDescription
iduint64Set ID.
odDescriptorUpdated descriptor of the set.

upgradeSet

Upgrades the kind or set revision of the calling contract’s set.

Pass 0 to skip updating either kindRev or setRev.

function upgradeSet(uint32 kindRev0, uint32 setRev0) external returns (uint64 id, Descriptor memory od);

Parameters

NameTypeDescription
kindRev0uint32New kind revision (0 = no change).
setRev0uint32New set revision (0 = no change).

Returns

NameTypeDescription
iduint64Set ID.
odDescriptorDescriptor after the upgrade.

touchSet

Increments the revision of the calling contract’s set without changing content.

function touchSet() external returns (uint64 id, Descriptor memory od);

Returns

NameTypeDescription
iduint64Set ID.
odDescriptorDescriptor after the touch operation.

_setRegistry

function _setRegistry() private view returns (ISetRegistry);