MulticallFacet
The purpose of this contract is to serve as a facet in a Diamond contract that allows for batch execution of multiple delegatecalls using the multicall function.
multicall():
The multicall function enforces that the caller is the contract owner and then delegates the execution to the LibMulticall.multicall function, which handles the execution of multiple delegatecalls to different facets.
Input:
Field
Type
Description
selectorsbytes4[] an array of function selectors
databytes[]an array of data that needs to be fed into the selectors