[Pkg] The Trunk: Tools-ul.630.mcz
commits at source.squeak.org
commits at source.squeak.org
Fri Aug 14 20:35:10 UTC 2015
Levente Uzonyi uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-ul.630.mcz
==================== Summary ====================
Name: Tools-ul.630
Author: ul
Time: 14 August 2015, 7:50:48.75 pm
UUID: 7dce94fa-8532-413d-a547-2fa120b92092
Ancestors: Tools-cmm.629
#includesSubString: -> #includesSubstring:
#allCharacters -> #allByteCharacters
=============== Diff against Tools-cmm.629 ===============
Item was changed:
----- Method: ChangeList>>scanCategory (in category 'scanning') -----
scanCategory
"Scan anything that involves more than one chunk; method name is historical only"
| itemPosition item tokens stamp anIndex |
itemPosition := file position.
item := file nextChunk.
+ ((item includesSubstring: 'commentStamp:')
+ or: [(item includesSubstring: 'methodsFor:')
- ((item includesSubString: 'commentStamp:')
- or: [(item includesSubString: 'methodsFor:')
or: [item endsWith: 'reorganize']]) ifFalse:
["Maybe a preamble, but not one we recognize; bail out with the preamble trick"
^ self addItem: (ChangeRecord new file: file position: itemPosition type: #preamble)
text: ('preamble: ' , item contractTo: 50)].
tokens := Scanner new scanTokens: item.
tokens size >= 3 ifTrue:
[stamp := ''.
anIndex := tokens indexOf: #stamp: ifAbsent: [nil].
anIndex ifNotNil: [stamp := tokens at: (anIndex + 1)].
tokens second == #methodsFor:
ifTrue: [^ self scanCategory: tokens third class: tokens first
meta: false stamp: stamp].
tokens third == #methodsFor:
ifTrue: [^ self scanCategory: tokens fourth class: tokens first
meta: true stamp: stamp]].
tokens second == #commentStamp:
ifTrue:
[stamp := tokens third.
self addItem:
(ChangeRecord new file: file position: file position type: #classComment
class: tokens first category: nil meta: false stamp: stamp)
text: 'class comment for ' , tokens first,
(stamp isEmpty ifTrue: [''] ifFalse: ['; ' , stamp]).
file nextChunk.
^ file skipStyleChunk].
self assert: tokens last == #reorganize.
self addItem:
(ChangeRecord new
file: file position: file position type: #reorganize
class: tokens first category: nil meta: false stamp: stamp)
text: 'organization for ' , tokens first, (tokens second == #class ifTrue: [' class'] ifFalse: ['']).
file nextChunk!
Item was changed:
----- Method: ChangeList>>selectContentsMatching (in category 'menu actions') -----
selectContentsMatching
| pattern |
pattern := UIManager default request: 'pattern to match'.
pattern isEmpty ifTrue: [^self].
^Cursor execute showWhile:
[self selectSuchThat: ((pattern includesAnyOf: '?*')
ifTrue: [[ :change | pattern match: change string]]
+ ifFalse: [[ :change | change string includesSubstring: pattern]])]!
- ifFalse: [[ :change | change string includesSubString: pattern]])]!
Item was changed:
----- Method: ClassListBrowser class>>example1 (in category 'examples') -----
example1
"Put up a ClassListBrowser that shows all classes that have the string 'Pluggable' in their names"
+ self browseClassesSatisfying: [:cl | cl name includesSubstring: 'Pluggable'] title: 'Pluggables'
- self browseClassesSatisfying: [:cl | cl name includesSubString: 'Pluggable'] title: 'Pluggables'
"ClassListBrowser example1"
!
Item was changed:
----- Method: Debugger class>>openInterrupt:onProcess: (in category 'opening') -----
openInterrupt: aString onProcess: interruptedProcess
"Open a notifier in response to an interrupt. An interrupt occurs when the user types the interrupt key (cmd-. on Macs, ctrl-c or alt-. on other systems) or when the low-space watcher detects that memory is low."
| debugger |
<primitive: 19> "Simulation guard"
debugger := self new.
debugger
process: interruptedProcess
controller: ((Smalltalk isMorphic not
and: [ScheduledControllers activeControllerProcess == interruptedProcess])
ifTrue: [ScheduledControllers activeController])
context: interruptedProcess suspendedContext.
debugger externalInterrupt: true.
Preferences logDebuggerStackToFile ifTrue:
+ [(aString includesSubstring: 'Space') & (aString includesSubstring: 'low')
- [(aString includesSubString: 'Space') & (aString includesSubString: 'low')
ifTrue: [Smalltalk logError: aString inContext: debugger interruptedContext to: 'LowSpaceDebug.log']
"logging disabled for 4.3 release, see
http://lists.squeak.org/pipermail/squeak-dev/2011-December/162503.html"
"ifFalse: [Smalltalk logSqueakError: aString inContext: debugger interruptedContext]"].
Preferences eToyFriendly ifTrue: [World stopRunningAll].
^debugger
openNotifierContents: nil label: aString;
yourself
!
Item was changed:
----- Method: MessageSet class>>parse:toClassAndSelector: (in category 'utilities') -----
parse: methodRef toClassAndSelector: csBlock
"Decode strings of the form <className> [class] <selectorName>."
| tuple cl |
self flag: #mref. "compatibility with pre-MethodReference lists"
methodRef ifNil: [^ csBlock value: nil value: nil].
methodRef isString ifFalse:
[^methodRef setClassAndSelectorIn: csBlock].
methodRef isEmpty ifTrue:
[^csBlock value: nil value: nil].
+ tuple := (methodRef asString includesSubstring: '>>')
- tuple := (methodRef asString includesSubString: '>>')
ifTrue: [(methodRef findTokens: '>>') fold: [:a :b| (a findTokens: ' '), {b first = $# ifTrue: [b allButFirst] ifFalse: [b]}]]
ifFalse: [methodRef asString findTokens: ' .'].
cl := Smalltalk at: tuple first asSymbol ifAbsent: [^ csBlock value: nil value: nil].
^(tuple size = 2 or: [tuple size > 2 and: [(tuple at: 2) ~= 'class']])
ifTrue: [csBlock value: cl value: (tuple at: 2) asSymbol]
ifFalse: [csBlock value: cl class value: (tuple at: 3) asSymbol]!
Item was changed:
----- Method: MethodFinder>>initialize2 (in category 'initialize') -----
(excessive size, no diff calculated)
Item was changed:
----- Method: ProcessBrowser>>nextContext (in category 'process list') -----
nextContext
| initialProcessIndex initialStackIndex |
searchString isEmpty ifTrue: [ ^false ].
initialProcessIndex := self processListIndex.
initialStackIndex := self stackListIndex.
initialProcessIndex
to: self processList size
do: [:pi | self processListIndex: pi.
self stackNameList
withIndexDo: [:name :si | (pi ~= initialProcessIndex
or: [si > initialStackIndex])
+ ifTrue: [(name includesSubstring: searchString)
- ifTrue: [(name includesSubString: searchString)
ifTrue: [self stackListIndex: si.
^true]]]].
self processListIndex: initialProcessIndex.
self stackListIndex: initialStackIndex.
^ false!
More information about the Packages
mailing list