ZeroEx, or Exchange V4) is the main contract makers and takers interact with for managing the process of and performing the exchange of assets on the 0x Protocol. The most commonly used functionalities this contract exposes are:
ZeroEx) is a type of proxy contract, meaning that this contract itself has very little functionality inside of it. Its main responsibility is to maintain a mapping of function selectors to implementation contracts. When it receives a function call, it looks up the appropriate implementation contract for the function being called (identified by its leading 4-byte selector) and forwards the call to it using
delegatecallsemantics. As such, each function's implementation can reside in a completely different contract. We call these implementation contracts Features, which can be registered and deregistered as needed.
foo()on the Exchange Proxy, whose implementation contract resides in