AssetFactoryStorage

Git Source

Simplified storage layout for AssetFactory diamond using unified FacetRegistry

Registry functionality moved to unified FacetRegistry - this only tracks deployments

State Variables

ASSET_FACTORY_STORAGE_POSITION

bytes32 constant ASSET_FACTORY_STORAGE_POSITION = keccak256("capsign.storage.asset_factory");

Functions

layout

function layout() internal pure returns (Layout storage l);

requireInitialized

function requireInitialized() internal view;

requireNotInitialized

function requireNotInitialized() internal view;

setInitialized

function setInitialized() internal;

addDeployedAsset

function addDeployedAsset(address asset, string memory assetType) internal;

getAllAssets

function getAllAssets() internal view returns (address[] memory);

getAssetsByType

function getAssetsByType(string memory assetType) internal view returns (address[] memory);

getAssetTypeByAddress

function getAssetTypeByAddress(address asset) internal view returns (string memory);

getDeploymentCount

function getDeploymentCount(string memory assetType) internal view returns (uint256);

getTransferControllerImpl

function getTransferControllerImpl() internal view returns (address);

setTransferControllerImpl

function setTransferControllerImpl(address impl) internal;

getVersion

function getVersion() internal view returns (uint256);

incrementVersion

function incrementVersion() internal;

Structs

Layout

struct Layout {
    mapping(address => string) assetToType;
    address[] allAssets;
    mapping(string => address[]) assetsByType;
    mapping(string => uint256) deploymentCount;
    address transferControllerImpl;
    uint256 version;
    bool initialized;
    uint256[50] __gap;
}

Last updated

Was this helpful?