Skip to content

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 ​

NameTypeDescription
operator_addressoperator_ caller to transfer the the given token ID
from_addressfrom_ previous owner of the given token ID
tokenId_uint256tokenId_ id of the ERC721
data_bytesdata 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 {}
```_