Forta Staking Utils
FortaStakingUtils
subjectToActive
function subjectToActive(uint8 subjectType, uint256 subject) internal pure returns (uint256)
Encode "active" and subjectType in subject by hashing them together, shifting left 9 bits,
setting bit 9 (to mark as active) and masking subjectType in
Name |
Type |
Description |
subjectType |
uint8 |
agents, scanner or future types of stake subject. See SubjectTypeValidator.sol |
subject |
uint256 |
id identifying subject (external to FortaStaking). |
Name |
Type |
Description |
[0] |
uint256 |
ERC1155 token id representing active shares. |
subjectToInactive
function subjectToInactive(uint8 subjectType, uint256 subject) internal pure returns (uint256)
Encode "inactive" and subjectType in subject by hashing them together, shifting left 9 bits,
letting bit 9 unset (to mark as inactive) and masking subjectType in.
Name |
Type |
Description |
subjectType |
uint8 |
agents, scanner or future types of stake subject. See SubjectTypeValidator.sol |
subject |
uint256 |
id identifying subject (external to FortaStaking). |
Name |
Type |
Description |
[0] |
uint256 |
ERC1155 token id representing inactive shares. |
activeToInactive
function activeToInactive(uint256 activeSharesId) internal pure returns (uint256)
Unsets bit 9 of an activeSharesId to mark as inactive
Name |
Type |
Description |
activeSharesId |
uint256 |
ERC1155 token id representing active shares. |
Name |
Type |
Description |
[0] |
uint256 |
ERC1155 token id representing inactive shares. |
inactiveToActive
function inactiveToActive(uint256 inactiveSharesId) internal pure returns (uint256)
Sets bit 9 of an inactiveSharesId to mark as inactive
Name |
Type |
Description |
inactiveSharesId |
uint256 |
ERC1155 token id representing inactive shares. |
Name |
Type |
Description |
[0] |
uint256 |
ERC1155 token id representing active shares. |
isActive
function isActive(uint256 sharesId) internal pure returns (bool)
Checks if shares id is active
Name |
Type |
Description |
sharesId |
uint256 |
ERC1155 token id representing shares. |
Name |
Type |
Description |
[0] |
bool |
true if active shares, false if inactive |
subjectTypeOfShares
function subjectTypeOfShares(uint256 sharesId) internal pure returns (uint8)
Extracts subject type encoded in shares id
Name |
Type |
Description |
sharesId |
uint256 |
ERC1155 token id representing shares. |
Name |
Type |
Description |
[0] |
uint8 |
subject type (see SubjectTypeValidator.sol) |