JBTiered721DelegateDeployer
Inherits: IJBTiered721DelegateDeployer
Deploys a JBTiered721Delegate.
State Variables
_nonce
This contract's current nonce, used for the Juicebox delegates registry.
uint256 internal _nonce;
onchainGovernance
A contract that supports on-chain governance across all tiers.
JBTiered721GovernanceDelegate public immutable onchainGovernance;
noGovernance
A contract with no on-chain governance mechanism.
JBTiered721Delegate public immutable noGovernance;
delegatesRegistry
A contract that stores references to deployer contracts of delegates.
IJBDelegatesRegistry public immutable delegatesRegistry;
Functions
constructor
constructor(
JBTiered721GovernanceDelegate _onchainGovernance,
JBTiered721Delegate _noGovernance,
IJBDelegatesRegistry _delegatesRegistry
);
Parameters
Name | Type | Description |
---|---|---|
_onchainGovernance | JBTiered721GovernanceDelegate | Reference copy of the delegate that works with onchain governance. |
_noGovernance | JBTiered721Delegate | Reference copy of a simpler delegate without on-chain governance. |
_delegatesRegistry | IJBDelegatesRegistry | A contract that stores references to delegate deployer contracts. |
deployDelegateFor
Deploys a delegate for the provided project.
function deployDelegateFor(uint256 _projectId, JBDeployTiered721DelegateData memory _deployTiered721DelegateData)
external
override
returns (IJBTiered721Delegate newDelegate);
Parameters
Name | Type | Description |
---|---|---|
_projectId | uint256 | The ID of the project for which the delegate will be deployed. |
_deployTiered721DelegateData | JBDeployTiered721DelegateData | Structure containing data necessary for delegate deployment. |
Returns
Name | Type | Description |
---|---|---|
newDelegate | IJBTiered721Delegate | The address of the newly deployed delegate. |
Errors
INVALID_GOVERNANCE_TYPE
error INVALID_GOVERNANCE_TYPE();