Re: [squeak-smalltalk/squeak-object-memory] Senders of `textDomain` finds all methods that send `translated` (Issue #156)

Christoph Thiede via Squeak-dev <[email protected]> Thu, 11 Jun 2026 09:06:54 -0700
Newsgroups gmane.comp.lang.smalltalk.squeak.general
Message-ID <squeak-smalltalk/squeak-object-memory/issues/156/[email protected]>
LinqLover left a comment (squeak-smalltalk/squeak-object-memory#156)

> **We could ignore AdditionalMethodState** ... but then we would also ignore a method's selector?
> 
> allLiteralsDo: aBlock scanForSpecial: aBoolean
> 	"Overwritten to skip certain (raw) literals."
> 		
> 	"Exclude method selector (or properties) and the method's class. Include code literals."
> 	1 to: self numLiterals - 2 do: [:index |
> 		(self literalAt: index) allLiteralsDo: aBlock scanForSpecial: aBoolean].
> 
> 	"Enumerate the implicit literals in bytecodes of the receiver."
> 	aBoolean ifTrue: [self implicitLiteralsDo: aBlock].
> 
> 	"Enumerate method selector only through additional method state."
> 	self penultimateLiteral isMethodProperties
> 		ifTrue: [self penultimateLiteral allLiteralsDo: aBlock scanForSpecial: aBoolean]

Maybe `#allLiteralsDo:scanForSpecial:` is too generic for senders search? For `SystemNavigation>>allCallsOn:`, disabling the additional method state enumeration seems to work still well. But users probably expect pragmas to be enumerated through this interface, too. But for other users of `#allLiterals` et al., the additional method state might be relevant ...

-- 
Reply to this email directly or view it on GitHub:
https://github.com/squeak-smalltalk/squeak-object-memory/issues/156#issuecomment-4682533352
You are receiving this because you are subscribed to this thread.

Message ID: <squeak-smalltalk/squeak-object-memory/issues/156/[email protected]>

Squeak-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]