Fractionalize
Source: contracts/extensions/Fractionalize.sol · Guide: fractionalization · Upgradeable (UUPS proxy)
Functions that change state
Function
Who can call
Also
batchMintShares((uint256,uint256[],address[]) params)Checked inside the function
whenNotPausedburnShares(uint256 fractionId, uint256 amount)Anyone; acts on the caller's own account
whenNotPausedcreateFraction((uint8,uint256,string,string,string,string,uint256,bool,uint256) params)Checked inside the function
whenNotPausedgrantRole(bytes32 role, address account)The role's admin role (
DEFAULT_ADMIN_ROLE unless set otherwise)initialize(address _deedNFT, address _subdivideNFT, address _fractionTokenFactory)Once, when the proxy is initialised
mintShares(uint256 fractionId, uint256 amount, address to)Checked inside the function
whenNotPausedpause()onlyRole(ADMIN_ROLE)renounceRole(bytes32 role, address account)Only the account renouncing its own role
revokeRole(bytes32 role, address account)The role's admin role (
DEFAULT_ADMIN_ROLE unless set otherwise)unlockAsset((uint256,address,bool) params)Checked inside the function
whenNotPausedunpause()onlyRole(ADMIN_ROLE)upgradeTo(address newImplementation)onlyRole(DEFAULT_ADMIN_ROLE) (via _authorizeUpgrade)upgradeToAndCall(address newImplementation, bytes data)onlyRole(DEFAULT_ADMIN_ROLE) (via _authorizeUpgrade)payable
Read functions
Anyone can call these; they change nothing.
Function
Returns
ADMIN_ROLE()bytes32
canReceiveShares(uint256 fractionId, address account)bool
deedNFT()address
DEFAULT_ADMIN_ROLE()bytes32
fractionTokenFactory()address
getApprovals(uint256 fractionId, address account)bool transferApproved, bool adminApproved
getAssetInformation(uint256 fractionId)string assetType, bool isValidated, address validator, string metadata
getDeedNFTAssetDetails(uint256 fractionId)uint8 assetType, bool isValidated, address validator, string tokenURI
getDeedNFTAssetTrait(uint256 fractionId, bytes32 traitKey)bytes traitValue
getDeedNFTAssetTraitKeys(uint256 fractionId)bytes32[] traitKeys
getFractionBasicInfo(uint256 fractionId)(string,string,uint256,uint256,uint256)
getFractionExtendedInfo(uint256 fractionId)(string,string,uint256,bool,bool)
getFractionOwnershipInfo(uint256 fractionId)(uint8,uint256,address)
getFractionToken(uint256 fractionId)address tokenAddress
getRoleAdmin(bytes32 role)bytes32
getSubdivisionAssetDetails(uint256 fractionId)uint256 deedId, uint256 unitId, uint8 assetType, bool isValidated, address validator
getSubdivisionAssetTrait(uint256 fractionId, bytes32 traitKey)bytes traitValue
getSubdivisionAssetTraitKeys(uint256 fractionId)bytes32[] traitKeys
getVotingPower(uint256 fractionId, address account)uint256
hasRole(bytes32 role, address account)bool
nextFractionId()uint256
paused()bool
proxiableUUID()bytes32
subdivideNFT()address
supportsInterface(bytes4 interfaceId)bool
validateAsset(uint256 fractionId)bool isValid, string validationDetails
validateDeedNFTAsset(uint256 fractionId)bool isValid, string validationDetails
validateSubdivisionAsset(uint256 fractionId)bool isValid, string validationDetails
Events
Event
AdminApprovalSet(uint256 fractionId indexed, address approver indexed, bool approved)AdminChanged(address previousAdmin, address newAdmin)AssetLocked(uint256 fractionId indexed, uint256 originalTokenId)AssetUnlocked(uint256 fractionId indexed, uint256 originalTokenId, address to)BeaconUpgraded(address beacon indexed)FractionCreated(uint256 fractionId indexed, uint8 assetType, uint256 originalTokenId)Initialized(uint8 version)Paused(address account)RoleAdminChanged(bytes32 role indexed, bytes32 previousAdminRole indexed, bytes32 newAdminRole indexed)RoleGranted(bytes32 role indexed, address account indexed, address sender indexed)RoleRevoked(bytes32 role indexed, address account indexed, address sender indexed)SharesBurned(uint256 fractionId indexed, uint256 amount)SharesMinted(uint256 fractionId indexed, uint256 amount, address to)TransferApprovalSet(uint256 fractionId indexed, address approver indexed, bool approved)Unpaused(address account)Upgraded(address implementation indexed)Errors
No custom errors; failures revert with a reason string.