crytic/slither

Rename IR classes so names do not clash with others.

Open

#1,059 opened on Feb 15, 2022

View on GitHub
 (1 comment) (0 reactions) (0 assignees)Python (4,769 stars) (886 forks)batch import
enhancementgood first issuehelp wanted

Description

I noticed that the TypeConversion class from Slither IR

https://github.com/crytic/slither/blob/5021f3e7a04e46dd32655f8d168b43a8bb000770/slither/slithir/operations/type_conversion.py#L7

has the same name as another class from Slither Core

https://github.com/crytic/slither/blob/5021f3e7a04e46dd32655f8d168b43a8bb000770/slither/core/expressions/type_conversion.py#L6

This makes it so that, if you are not extra careful, you can import the wrong class.

I think that it would be a good idea to go through all the classes and look for those that have name clashes across different "packages" and rename them, for example by adding an IR suffix to them (TypeConversionIR).

NOTE:

This might apply to different packages i.e not only SlitherIR, in which case a different suffix would need to be added.

Contributor guide