'From Squeak3.10.1-basic of 13 May 2008 [latest update: #7164] on 20 May 2008 at 7:25:01 am'! "Change Set: SortedCollection-reversed-M6956-nice Date: 26 February 2008 Author: nice Make SortedCollection>>reversed anser a collection"! !SortedCollection methodsFor: 'converting' stamp: 'nice 2/26/2008 22:48'! reverseInPlace "Change this colleciton into its reversed. Do not make a copy like reversed do, but change self in place." | newFirstIndex oldSortBlock | newFirstIndex := 1 + array size - lastIndex. lastIndex := 1 + array size - firstIndex. firstIndex := newFirstIndex. array := array reversed. oldSortBlock := (sortBlock ifNil: [[:a :b | a <= b]]) copy. sortBlock := [:a :b | oldSortBlock value: b value: a] fixTemps! ! !SortedCollection methodsFor: 'converting' stamp: 'nice 2/26/2008 22:28'! reversed "Answer a collection that Sort elements in reverse order" ^self shallowCopy reverseInPlace! ! !SortedCollection reorganize! ('accessing' at:put: median sortBlock sortBlock:) ('adding' add: addAll: addFirst: copyEmpty) ('comparing' =) ('converting' reverseInPlace reversed) ('copying' copy) ('enumerating' collect:) ('topological sort' sortTopologically) ('private' indexForInserting: insert:before: reSort should:precede: sort:to:) !