initialize() :
This function is an external initializer for the MasterVault contract. It calls the __MasterVault_init() function, which sets up the MasterVault contract and its associated variables. This function is used to initialize the MasterVault contract and ensure that it is ready to be used. (autogenerated documentation)
__MasterVault_init() :
This function is used to initialize the MasterVault contract. It first calls the __Vault_init() function to initialize the Vault contract, and then calls the __MasterVault_init_unchained() function to initialize the MasterVault contract. This function is marked as internal and onlyInitializing, meaning that it can only be called from within the contract and only during the initialization phase. (autogenerated documentation)
__MasterVault_init_unchained() :
This function is used to initialize the MasterVault contract. It sets the ROLE_ASSET_MANAGER and ROLE_BNT_MANAGER roles to be administered by the ROLE_ADMIN role. This ensures that only the ROLE_ADMIN can assign and revoke these roles. (autogenerated documentation)
version() :
This function is an override of the IVersioned and Upgradeable contracts. It returns a version number (in this case, 1) which is used to track the version of the contract. This allows for the contract to be upgraded or modified over time. (autogenerated documentation)
isPayable() :
This function is an override of the IVault and Vault contracts. It returns a boolean value of true, indicating that the Vault contract is payable. This means that users can send Ether to the Vault contract address and it will be stored in the contract. (autogenerated documentation)
roleBNTManager() :
This function returns the bytes32 value of the ROLE_BNT_MANAGER constant. This constant is used to identify the role of a BNT Manager, which is a user with the ability to manage the BNT token. The function is declared as external and pure, meaning that it does not modify the state of the contract and does not interact with any external contracts. (autogenerated documentation)
isAuthorizedWithdrawal(address,uint256) :
This function is used to determine if a caller is authorized to make a withdrawal from a token contract. It checks if the token is equal to the BNT token and if the caller has the role of BNT Manager or Asset Manager. If either of these conditions are met, the function returns true, indicating that the caller is authorized to make the withdrawal. (autogenerated documentation)