<b>=============== Summary ===============</b><br>
<br>
Change Set:        packageSelfExtensions<br>
Date:            25 March 2022<br>
Author:            Christoph Thiede<br>
<br>
Revises the notion of extension method so that also extensions to the same package are found. For instance, browsing all extensions of the package 'Etoys' local to the category 'Etoys-Squeakland-MorphicExtras-Charts' will now also bring up the extensions on Player.<br>
<br>
Fixes #extensionCategoriesForClass:localTo: to also find different casings of the package name in the extension category. Also revises #methodCategoryPrefix to no longer destroy the original casing of the package name.<br>
<br>
Note that with this change, #extensionMethods and #coreMethods are no longer necessarily disjunct.<br>
<br>
<b>=============== Diff ===============</b><br>
<br>
<b>PackageInfo>>allBehaviors {private} · ct 3/25/2022 15:40</b><br>
<font color="#FF0000">+ allBehaviors<br>
+ <br>
+     ^ self systemNavigation allBehaviors contents</font><br>
<br>
<b>PackageInfo>>extensionCategoriesForClass:localTo: {testing} · ct 3/25/2022 15:55 (changed)</b><br>
extensionCategoriesForClass: aClass localTo: aClassCategory<br>
<br>
    ^ (self extensionCategoriesForClass: aClass)<br>
<s><font color="#0000FF">-         select: [:ea | ea beginsWith: '*', aClassCategory]<br>
</font></s><font color="#FF0000">+         select: [:ea | self category: ea matches: '*' , aClassCategory]</font><br>
<br>
<b>PackageInfo>>extensionClasses {listing} · ct 3/25/2022 15:38 (changed)</b><br>
extensionClasses<br>
<s><font color="#0000FF">-     ^ self externalBehaviors reject: [:classOrTrait | (self extensionCategoriesForClass: classOrTrait) isEmpty]<br>
</font></s><font color="#FF0000">+     ^ self allBehaviors reject: [:classOrTrait | (self extensionCategoriesForClass: classOrTrait) isEmpty]</font><br>
<br>
<b>PackageInfo>>extensionClassesLocalTo: {listing} · ct 3/25/2022 15:38 (changed)</b><br>
extensionClassesLocalTo: classCategory<br>
<br>
<s><font color="#0000FF">-     ^ self externalBehaviors reject: [:classOrTrait |<br>
</font></s><font color="#FF0000">+     ^ self allBehaviors reject: [:classOrTrait |<br>
</font>        (self extensionCategoriesForClass: classOrTrait localTo: classCategory) isEmpty]<br>
<br>
<b>PackageInfo>>extensionMethods {listing} · ct 3/25/2022 15:36 (changed)</b><br>
extensionMethods<br>
<s><font color="#0000FF">-     ^ self externalBehaviors gather: [:classOrTrait | self extensionMethodsForClass: classOrTrait]<br>
</font></s><font color="#FF0000">+     ^ self allBehaviors gather: [:classOrTrait | self extensionMethodsForClass: classOrTrait]</font><br>
<br>
<b>PackageInfo>>extensionMethodsLocalTo: {listing} · ct 3/25/2022 15:37 (changed)</b><br>
extensionMethodsLocalTo: aClassCategory<br>
<br>
<s><font color="#0000FF">-     ^ self externalBehaviors gather: [:classOrTrait |<br>
</font></s><font color="#FF0000">+     ^ self allBehaviors gather: [:classOrTrait |<br>
</font>        self extensionMethodsForClass: classOrTrait localTo: aClassCategory]<br>
<br>
<b>PackageInfo>>methodCategoryPrefix {naming} · ct 3/25/2022 15:53 (changed)</b><br>
methodCategoryPrefix<br>
<s><font color="#0000FF">-     ^ methodCategoryPrefix ifNil: [methodCategoryPrefix := '*', self packageName asLowercase]<br>
</font></s><font color="#FF0000">+     ^ methodCategoryPrefix ifNil: [methodCategoryPrefix := '*', self packageName]</font><br>
<br>
<b>PackageInfo>>methods {listing} · ct 3/25/2022 16:00 (changed)</b><br>
methods<br>
<s><font color="#0000FF">-     ^ (self extensionMethods, self coreMethods) select: [:method |<br>
</font></s><font color="#FF0000">+     ^ (self extensionMethods, self coreMethods) withoutDuplicates select: [:method |<br>
</font>        method isValid<br>
            and: [method isLocalSelector]]<br>
<br>
["packageSelfExtensions.1.cs"]<br>
<br>
<font color="#808080">---<br>
</font><font color="#808080"><i>Sent from </i></font><font color="#808080"><i><a href="https://github.com/hpi-swa-lab/squeak-inbox-talk"><u><font color="#808080">Squeak Inbox Talk</font></u></a></i></font>