PreferredShares
Inherits: MezzShares, IPreferredShares
Author: Daniel Yamagata & Naveen Ailawadi
Preferred shares are similar to Common Shares but keep track of a liquidation preference value and have a bespoke voting weight. They take preference over common shares during liquidation. Given there is a sufficient balance held by a company's treasury, Preferred Shares will receive a fixed amount of the denomination asset per share before any of the company's denomination asset is distributed pro-rata to equity holders.
This contract is intended to be deployed by a Treasury instance via the Mezz Deployer
State Variables
PreferredSharesStorageLocation
Functions
_getPreferredSharesStorage
constructor
init
Initializes the asset state in a bespoke manner.
Parameters
initTreasury
address
params
bytes
The bespoke abi-encoded initialization arguments
__PreferredShares_init
liquidationPreferenceValue
Returns the liquidation preference value per share. The value corresponds to how much of the denomination asset per share will be distributed during a company's liquidation
Returns
<none>
uint256
The liquidation preference value per share
assetClass
Returns the 'AssetClass' of the asset as a uint8, defined by the DataTypes.AssetClass enum
name
Returns the name of the asset as a string
symbol
Returns the symbol of the asset as a string
coreId
Returns the coreId of the implementation as a bytes32
The core ID is the keccak256 hash of the contract name followed by a version under the following syntax: "mezzanine.coreId.ContractName.vX" For example, the core ID of the 2nd version of the Treasury would be the following: keccak256(abi.encodePacked("mezzanine.coreId.Treasury.v2"))
version
Returns the version of the implementation as a uint256
supportsInterface
ERC165 support
Structs
PreferredSharesStorage
Last updated