From 552e3dc98a7061fa9e25bfed54cb7228233cbd39 Mon Sep 17 00:00:00 2001 From: Nick Mudge Date: Thu, 29 Sep 2022 10:11:38 -0400 Subject: [PATCH] EIP-2535: Made clear facets do not have to be reusable (#5730) * EIP2535: Fixed misspelling, tweaked wording * EIP2535: Updated dependencies * added space * EIP2535: Make clear that facets do not have to be reusable --- EIPS/eip-2535.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/EIPS/eip-2535.md b/EIPS/eip-2535.md index 53f0b90181939f..2e7d292dd2d1ad 100644 --- a/EIPS/eip-2535.md +++ b/EIPS/eip-2535.md @@ -377,7 +377,7 @@ require(success, "myFunction failed"); ``` 6. Instead of calling an external function defined in another facet you can instead create an internal function version of the external function. Add the internal version of the function to the facet that needs to use it. -### Facets are Reusable and Composable +### Facets can be Reusable and Composable A deployed facet can be used by any number of diamonds. @@ -387,6 +387,8 @@ It is possible to create and deploy a set of facets that are reused by different The ability to use the same deployed facets for many diamonds reduces deployment costs. +Facets can also be designed for a specific diamond and not be reusable in other diamonds. + A function signature is the name of a function and its parameter types. Example function signature: `myfunction(uint256)`. A limitation is that two external functions with the same function signature can’t be added to the same diamond at the same time because a diamond, or any contract, cannot have two external functions with the same function signature. All the functions of a facet do not have to be added to a diamond. Some functions in a facet can be added to a diamond while other functions in the facet are not added to the diamond.