Przeglądaj źródła

fixes issue 477

Nicolas Petton 11 lat temu
rodzic
commit
3e48466bb5

+ 11 - 0
js/Kernel-Collections.deploy.js

@@ -3477,6 +3477,17 @@ return self}, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject},sma
 messageSends: ["remove:"]}),
 smalltalk.Set);
 
+smalltalk.addMethod(
+smalltalk.method({
+selector: "remove:ifAbsent:",
+fn: function (anObject,aBlock){
+var self=this;
+return smalltalk.withContext(function($ctx1) { 
+_st(self["@elements"])._remove_ifAbsent_(anObject,aBlock);
+return self}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{anObject:anObject,aBlock:aBlock},smalltalk.Set)})},
+messageSends: ["remove:ifAbsent:"]}),
+smalltalk.Set);
+
 smalltalk.addMethod(
 smalltalk.method({
 selector: "select:",

+ 16 - 0
js/Kernel-Collections.js

@@ -4677,6 +4677,22 @@ referencedClasses: []
 }),
 smalltalk.Set);
 
+smalltalk.addMethod(
+smalltalk.method({
+selector: "remove:ifAbsent:",
+category: 'adding/removing',
+fn: function (anObject,aBlock){
+var self=this;
+return smalltalk.withContext(function($ctx1) { 
+_st(self["@elements"])._remove_ifAbsent_(anObject,aBlock);
+return self}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{anObject:anObject,aBlock:aBlock},smalltalk.Set)})},
+args: ["anObject", "aBlock"],
+source: "remove: anObject ifAbsent: aBlock\x0a\x09elements remove: anObject ifAbsent: aBlock",
+messageSends: ["remove:ifAbsent:"],
+referencedClasses: []
+}),
+smalltalk.Set);
+
 smalltalk.addMethod(
 smalltalk.method({
 selector: "select:",

+ 4 - 0
st/Kernel-Collections.st

@@ -1501,6 +1501,10 @@ add: anObject
 
 remove: anObject
 	elements remove: anObject
+!
+
+remove: anObject ifAbsent: aBlock
+	elements remove: anObject ifAbsent: aBlock
 ! !
 
 !Set methodsFor: 'comparing'!