[squeak-dev] The Inbox: System-ct.1245.mcz

christoph.thiede at student.hpi.uni-potsdam.de christoph.thiede at student.hpi.uni-potsdam.de
Sun Oct 3 23:27:05 UTC 2021


Note that we still might want to improve the labels of the spawned message sets (which currently say "implementors of..."). However, this looks like another tiring construction site to me which we should address later ...

Best,
Christoph

---
Sent from Squeak Inbox Talk

On 2021-10-04T14:15:16+00:00, commits at source.squeak.org wrote:

> A new version of System was added to project The Inbox:
> http://source.squeak.org/inbox/System-ct.1245.mcz
> 
> ==================== Summary ====================
> 
> Name: System-ct.1245
> Author: ct
> Time: 4 October 2021, 4:15:11.217947 pm
> UUID: ce795acc-c89b-5748-9b42-61b1fde2ac59
> Ancestors: System-mt.1241
> 
> Adds support for browsing extension methods to SystemNavigation.
> 
> Usage:
> 
>     self systemNavigation browseAllExtensionsOfCategory: 'System-Support'.
>     self systemNavigation browseAllExtensionsOfPackage: Project packageInfo.
> 
> Replaces System-ct.1131, now also with support for browsing extensions of system categories. Thanks to Jakob and Chris for the feedback!
> 
> =============== Diff against System-mt.1241 ===============
> 
> Item was added:
> + ----- Method: SystemNavigation>>allExtensionsOfCategory: (in category 'query') -----
> + allExtensionsOfCategory: systemCategory
> + 
> +     ^ self environment organization extensionMethodsForCategory: systemCategory!
> 
> Item was added:
> + ----- Method: SystemNavigation>>allExtensionsOfPackage: (in category 'query') -----
> + allExtensionsOfPackage: aPackageInfo
> + 
> +     ^ aPackageInfo extensionMethods!
> 
> Item was added:
> + ----- Method: SystemNavigation>>browseAllExtensionsOfCategory: (in category 'browse') -----
> + browseAllExtensionsOfCategory: systemCategory
> +     "self default browseAllExtensionsOfCategory: 'Tools-Browser'"
> + 
> +     ^ self
> +         browseMessageList: [self allExtensionsOfCategory: systemCategory]
> +         name: ('Extensions of category {1}' translated format: {systemCategory})!
> 
> Item was added:
> + ----- Method: SystemNavigation>>browseAllExtensionsOfPackage: (in category 'browse') -----
> + browseAllExtensionsOfPackage: aPackageInfo
> +     "self default browseAllExtensionsOfPackage: Morph packageInfo"
> + 
> +     ^ self
> +         browseMessageList: [self allExtensionsOfPackage: aPackageInfo]
> +         name: ('Extensions of package {1}' translated format: {aPackageInfo name})!
> 
> Item was added:
> + ----- Method: SystemOrganizer>>category:matches: (in category 'as yet unclassified') -----
> + category: categoryName matches: prefix
> + 
> +     | prefixSize catSize |
> +     categoryName ifNil: [^ false].
> +     catSize := categoryName size.
> +     prefixSize := prefix size.
> +     catSize < prefixSize ifTrue: [^ false].
> +     (categoryName findString: prefix startingAt: 1 caseSensitive: false) = 1
> +         ifFalse: [^ false].
> +     ^(categoryName at: prefix size + 1 ifAbsent: [^ true]) = $-!
> 
> Item was added:
> + ----- Method: SystemOrganizer>>extensionMethodsForCategory: (in category 'as yet unclassified') -----
> + extensionMethodsForCategory: systemCategoryName
> + 
> +     | categoryPrefix |
> +     categoryPrefix := '*' , systemCategoryName.
> +     ^ self allElements
> +         gather: [:className | | class |
> +             class := self environment classNamed: className.
> +             (class organization categories
> +                 select: [:methodCategoryName | methodCategoryName notNil
> +                     and: [self category: methodCategoryName matches: categoryPrefix]])
> +                     gather: [:methodCategoryName | (class organization listAtCategoryNamed: methodCategoryName)
> +                         collect: [:selector | MethodReference
> +                             class: class
> +                             selector: selector
> +                             environment: self environment]]]!
> 
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20211004/9811f6ca/attachment.html>


More information about the Squeak-dev mailing list