Iâm ready to help with this issue, but as far as I can tell, itâs not hard to implement the mentors. Here we should decide on the meaning of the phrases. What are "all behaviorsâ and so on. The reason of the refactoring that Iâve done was that there were two methods with similar names that were doing different things. Uko
On 18 Dec 2014, at 21:19, Nicolai Hess <nicolaihess@web.de> wrote:
Hi,
some time ago Yuriy cleaned up the RBBrowserEnvironment methods for allClassesAndTraits(Do), classesDo, ....
The fix was good and necessary (I think). But they had an impact on some SmallLint-rules (they arent applied on the class side) and the behavior for the different Environments changed (compared with Pharo3 (-> 14621 <https://pharo.fogbugz.com/default.asp?14621> Some RBBrowserEnvironments don't work well with Metaclasses))
As some SmallLint-rules need to iterate over the metaclasses as well and I don't want to revert Yuriys change, I 'll add another method that collect classes and metaclasses.
So, I need some help, how to name this methods:
all classes (Object, Integer, ....) -> allClasses, ok all classes and metaclasses (Object, Object class, Integer class ) -> ? allBehaviors? all classes and traits -> allClassesAndTraits, ok all classes and meta classes and traits and class traits -> ? no idea! all metaclasses and class traits -> allMeta(ClassesAndTraits) ? I don't know if we need this
One problem with "allBehaviors" is, SystemNavigation uses allBehaviors to iterate over classes, metaclasses, traits and class traits, allthough a Trait is not a Behavior. (TClass isBehavior -> false)
feedback is welcome
nicolai