CommonShares

Git Source

Inherits: MezzShares, ICommonShares

Author: Daniel Yamagata & Naveen Ailawadi

Common shares are the most basic type of shares in the Mezzanine Protocol. Common shares will always have a votign weight of one and can be initialized with a number of authorized shares

This contract is intended to be deployed by the Mezz Deployer. Each company in Mezzanine can only have one class of common shares

Functions

constructor

constructor(address _mezzHub) MezzShares(_mezzHub);

init

Initializes the asset state in a bespoke manner.

function init(address initTreasury, bytes memory params) external virtual override(Asset, IAsset) initializer;

Parameters

NameTypeDescription

initTreasury

address

params

bytes

The bespoke abi-encoded initialization arguments

__CommonShares_init

Validates and sets the initial authorized shares

function __CommonShares_init(address initTreasury, bytes memory params) internal virtual onlyInitializing;

assetClass

Returns the 'AssetClass' of the asset as a uint8, defined by the DataTypes.AssetClass enum

function assetClass() public pure virtual override(Asset, IAsset) returns (uint8);

name

Returns the name of the asset as a string

function name() public view override(MezzShares, IAsset) returns (string memory);

symbol

Returns the symbol of the asset as a string

function symbol() public view override(MezzShares, IAsset) returns (string memory);

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"))

function coreId() public pure virtual override(MezzShares, ICredentialed) returns (bytes32);

version

Returns the version of the implementation as a uint256

function version() public pure virtual override(MezzShares, ICredentialed) returns (uint256);

supportsInterface

ERC165 support

function supportsInterface(bytes4 interfaceId) public view virtual override(MezzShares, IERC165) returns (bool);

Last updated