comments
authorClaus Gittinger <cg@exept.de>
Wed, 16 Sep 2009 12:48:16 +0200
changeset 11932 55c23ef9eec7
parent 11931 59251a906e85
child 11933 ce0e593cb8f1
comments
SequenceableCollection.st
--- a/SequenceableCollection.st	Tue Sep 15 20:19:59 2009 +0200
+++ b/SequenceableCollection.st	Wed Sep 16 12:48:16 2009 +0200
@@ -610,7 +610,6 @@
     ^ self replaceFrom:start to:stop with:anArray startingAt:repStart
 ! !
 
-
 !SequenceableCollection methodsFor:'accessing'!
 
 after:anObject
@@ -1320,9 +1319,12 @@
     "Repeatly evaluate aBlock with a single copy of the receiver. 
      Reorder the copy so that aBlock is presented all (self size factorial) possible 
      permutations in lexicographical order (i.e. sorted by size).
+
      Notice, that the swapping occurs within a buffered copy, so the block will receive
-     the identical same collection (bit with different contents) every time.
-     This non-functional kludge was done for performance."
+     the identical same collection (but with different contents) every time.
+     This non-functional kludge was done for performance, as we had to generate huge amounts
+     of permuted copies. The user of this function must be careful in the block, 
+     to copy the argument, if it has to be stored somewhere."
 
     self shallowCopy lexicographicPermutationsStartingAt:1 do:aBlock
 
@@ -1356,9 +1358,12 @@
 permutationsDo:aBlock
     "Repeatly evaluate aBlock with a single copy of the receiver. 
      Reorder the copy so that aBlock is presented all (self size factorial) possible permutations.
+
      Notice, that the swapping occurs within a buffered copy, so the block will receive
-     the identical same collection (bit with different contents) every time.
-     This non-functional kludge was done for performance."
+     the identical same collection (but with different contents) every time.
+     This non-functional kludge was done for performance, as we had to generate huge amounts
+     of permuted copies. The user of this function must be careful in the block, 
+     to copy the argument, if it has to be stored somewhere."
 
     self shallowCopy permutationsStartingAt:1 do:aBlock
 
@@ -1422,9 +1427,12 @@
 permutationsWith:anotherCollection do:aBlock
     "Repeatly evaluate aBlock with a single copy of the receiver. 
      Reorder the copy so that aBlock is presented all (self size factorial) possible permutations.
+
      Notice, that the swapping occurs within a buffered copy, so the block will receive
-     the identical same collection (bit with different contents) every time.
-     This non-functional kludge was done for performance."
+     the identical same collection (but with different contents) every time.
+     This non-functional kludge was done for performance, as we had to generate huge amounts
+     of permuted copies. The user of this function must be careful in the block, 
+     to copy the argument, if it has to be stored somewhere."
 
     self shallowCopy permutationsStartingAt:1 with:anotherCollection shallowCopy do:aBlock
 
@@ -5759,7 +5767,6 @@
     "Created: 14.2.1997 / 16:13:03 / cg"
 ! !
 
-
 !SequenceableCollection methodsFor:'searching'!
 
 detect:aBlock startingAt:startIndex
@@ -7641,7 +7648,7 @@
 !SequenceableCollection class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/SequenceableCollection.st,v 1.279 2009-09-11 15:56:04 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/SequenceableCollection.st,v 1.280 2009-09-16 10:48:16 cg Exp $'
 ! !
 
 SequenceableCollection initialize!