The FixedProxy is a type of Proxy contract with a fixed implementation that cannot be updated. It implements the IProxy interface. Any function calls to this contract will be forwarded to the implementation contract.
address implementation
The immutable address of the implementation contract. This address is set in the constructor and cannot be updated after.
constructor(address implementationAddress) public
Constructs a FixedProxy contract with the given implementation address.
Name | Type | Description |
---|---|---|
implementationAddress | address | The address of the implementation contract |
function setup(bytes setupParams) external
Shadows the setup function of the implementation contract so it can’t be called directly via the proxy.
Name | Type | Description |
---|---|---|
setupParams | bytes | The setup parameters for the implementation contract. |
function contractId() internal pure virtual returns (bytes32)
Returns the contract ID. It can be used as a check during upgrades.
Meant to be overridden in derived contracts.
Name | Type | Description |
---|---|---|
[0] | bytes32 | bytes32 The contract ID |
fallback() external payable virtual
Fallback function that delegates all calls to the implementation contract. If the call fails, it reverts with the returned error data. If it succeeds, it returns the data from the call.
receive() external payable virtual
Payable fallback function. Can be overridden in derived contracts.