A closer look at the integration between IbAlluo and StIbAlluo
Here we dive into the IbAlluo - StIbAlluo integration
function _burn(address account, uint256 amount) internal override {
// If there are insufficient tokens in IbAlluo, check if we can
// burn StIbAlluo instead and carry on. If insufficient, revert.
if (amount > balanceOf(account)) {
IAlluoSuperToken(superToken).operatorBurn(account, amount - balanceOf(account), "", "");
}
super._burn(account, amount);
}
function _transfer(address from, address to, uint256 amount) internal override {
// Similar to the logic above
if (amount > balanceOf(from)) {
IAlluoSuperToken(superToken).operatorBurn(from, amount - balanceOf(from), "", "");
}
super._transfer(from, to, amount);
}Last updated