OpenZeppelin / cairo-contracts

OpenZeppelin Contracts written in Cairo for Starknet, a decentralized ZK Rollup
https://docs.openzeppelin.com/contracts-cairo
MIT License
797 stars 321 forks source link

Improve Mixins design to address intersections #959

Open ericnordelo opened 3 months ago

ericnordelo commented 3 months ago

Currently, we have some functions repeated among mixins (ex: supports_interface) that don't allow us to use them in the same preset (ERC721 with AccessControl for example).

We should design how to address these cases in Wizard and the library.

martriay commented 3 months ago

Remember @arielelp mentioned this was intended to be addressed in Cairo's upcoming component design, I believe something around prefixing the component's name to functions, as with un/flattened storage structs but I can't recall exactly.