Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
enhances the functionalities of the
contract_derive
crate by autogenerating interfaces for every contract impl.when devs use an external r55 contract as a dependency, they simply need to add it to their
cargo.toml
file with the feature flaginterface-only
:https://github.com/0xrusowsky/r55/blob/f8ec238f9d1981dc126116bb5084ec8a3b6c2665/erc20x/Cargo.toml#L9
then it is available for use:
https://github.com/0xrusowsky/r55/blob/f8ec238f9d1981dc126116bb5084ec8a3b6c2665/erc20x/src/lib.rs#L12-L20
Finally, as in the original design, the changes still allow users to have standalone implementations by defining the interfaces themselves:
https://github.com/0xrusowsky/r55/blob/f8ec238f9d1981dc126116bb5084ec8a3b6c2665/erc20x_standalone/src/lib.rs#L15-L23
PS: it requires the feature flag to be defined on the
cargo.toml
of the crate that is used as a dependency to import the interfacehttps://github.com/0xrusowsky/r55/blob/f8ec238f9d1981dc126116bb5084ec8a3b6c2665/erc20/Cargo.toml#L6-L8