Question about about LintRule

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Question about about LintRule

cdelaunay
Hello,

I'm currently looking a bit at how lint rules work. The current example I'm looking at is:

 RBTempVarOverridesInstVarRule
       => this rule check for tmp variables that override an existing instance variable in the class
       => when such a case is detected, the result is stored like that:
                        result 
     addClass: aContext selectedClass
     selector: aContext selector.
        result addSearchString: varName.

       => so, all variables are just stored one by one in a collection ('searchString') and never linked to the method in which the problem happened.

What I wonder is: How are you able then to display, as result, a list of method, and for each of them to highligth the 'problematic' tmp variable?
How do you make the the link between a class-selector from the result, and, the variable name causing the problem for this selector?





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Question about about LintRule

Lukas Renggli
2010/8/18 Cyrille Delaunay <[hidden email]>:

> Hello,
> I'm currently looking a bit at how lint rules work. The current example I'm
> looking at is:
>  RBTempVarOverridesInstVarRule
>        => this rule check for tmp variables that override an existing
> instance variable in the class
>        => when such a case is detected, the result is stored like that:
>                         result
>      addClass: aContext selectedClass
>      selector: aContext selector.
>         result addSearchString: varName.
>        => so, all variables are just stored one by one in a collection
> ('searchString') and never linked to the method in which the problem
> happened.
> What I wonder is: How are you able then to display, as result, a list of
> method, and for each of them to highligth the 'problematic' tmp variable?
> How do you make the the link between a class-selector from the result, and,
> the variable name causing the problem for this selector?

The list comes from #addClass:selector:. The selection comes from the string.

There is no connection between the two, see
<http://st-www.cs.illinois.edu/users/brant/Refactory/Lint.html> on
Limitations/Highlighting.

Lukas

--
Lukas Renggli
www.lukas-renggli.ch

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project