InstaFlashInterface ​
flashLoan ​
solidity
function flashLoan(address[] tokens, uint256[] amts, uint256 route, bytes data, bytes extraData) external
InstaFlashReceiverInterface ​
executeOperation ​
solidity
function executeOperation(address[] assets, uint256[] amounts, uint256[] premiums, address initiator, bytes _data) external returns (bool)
FluidWalletFactoryVariables ​
VAULT_T1_FACTORY ​
solidity
contract IFluidVaultFactory VAULT_T1_FACTORY
WALLET_PROXY ​
solidity
address WALLET_PROXY
_implementation ​
solidity
address _implementation
fluid wallet implementation address. Can be updated by owner for newer version.
constructor ​
solidity
constructor(address vaultT1Factory_, address fluidWalletFactoryProxy_) public
FluidWalletFactoryErrorsAndEvents ​
FluidWalletFactory__InvalidOperation ​
solidity
error FluidWalletFactory__InvalidOperation()
FluidWalletFactory__NotAllowed ​
solidity
error FluidWalletFactory__NotAllowed()
Executed ​
solidity
event Executed(address owner, uint256 nft)
FluidImplementationUpdate ​
solidity
event FluidImplementationUpdate(address oldImplementation_, address newImplementation_)
FluidWalletFactory ​
Action ​
solidity
struct Action {
address target;
bytes data;
uint256 value;
uint8 operation;
}
StrategyParams ​
solidity
struct StrategyParams {
uint256 nftId;
address owner;
address wallet;
struct FluidWalletFactory.Action[] actions;
}
constructor ​
solidity
constructor(address vaultT1Factory_, address fluidWalletFactoryProxy_) public
initialize ​
solidity
function initialize(address owner_) public
initializes the contract with owner_
as owner
onERC721Received ​
solidity
function onERC721Received(address operator_, address from_, uint256 tokenId_, bytes data_) external returns (bytes4)
_ERC721 callback used Fluid Vault Factory and executes actions encoded in data_
Caller should be Vault T1 Factory._
Parameters ​
Name | Type | Description |
---|---|---|
operator_ | address | operator_ caller to transfer the the given token ID |
from_ | address | from_ previous owner of the given token ID |
tokenId_ | uint256 | tokenId_ id of the ERC721 |
data_ | bytes | data bytes containing the abi.encoded() actions that are executed like in Action[] |
deploy ​
solidity
function deploy(address owner_) public returns (address wallet_)
walletImplementation ​
solidity
function walletImplementation() public returns (address)
computeWallet ​
solidity
function computeWallet(address owner_) public view returns (address wallet_)
spell ​
solidity
function spell(address[] targets_, bytes[] calldatas_) public
changeImplementation ​
solidity
function changeImplementation(address implementation_) public
renounceOwnership ​
solidity
function renounceOwnership() public view
override renounce ownership as it could leave the contract in an unwanted state if called by mistake.
receive ​
solidity
receive() external payable
_authorizeUpgrade ​
solidity
function _authorizeUpgrade(address newImplementation) internal virtual
_Function that should revert when msg.sender
is not authorized to upgrade the contract. Called by {upgradeTo} and {upgradeToAndCall}.
Normally, this function will use an xref:access.adoc[access control] modifier such as {Ownable-onlyOwner}.
solidity
function _authorizeUpgrade(address) internal override onlyOwner {}
```_