[squeak-dev] The Trunk: Kernel-eem.1322.mcz

Thiede, Christoph Christoph.Thiede at student.hpi.uni-potsdam.de
Sat Apr 18 12:59:36 UTC 2020


Yahoo, another step towards a clean ProtoObject! :-)

<http://www.hpi.de/>
________________________________
Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von commits at source.squeak.org <commits at source.squeak.org>
Gesendet: Donnerstag, 16. April 2020 01:39:32
An: squeak-dev at lists.squeakfoundation.org; packages at lists.squeakfoundation.org
Betreff: [squeak-dev] The Trunk: Kernel-eem.1322.mcz

Eliot Miranda uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-eem.1322.mcz

==================== Summary ====================

Name: Kernel-eem.1322
Author: eem
Time: 15 April 2020, 4:39:29.367332 pm
UUID: 94e874d1-0572-4a1d-9934-edcf87b8ecb5
Ancestors: Kernel-eem.1321

Move the become: methods from ProtoObject to Object.  See http://forum.world.st/How-to-become-immediate-objects-td5114931.html

=============== Diff against Kernel-eem.1321 ===============

Item was added:
+ ----- Method: Object>>become: (in category 'system primitives') -----
+ become: otherObject
+        "Primitive. Swap the object pointers of the receiver and the argument.
+         All variables in the entire system that used to point to the receiver now
+         point to the argument, and vice-versa. Fails if either object is read-only
+         or is an immediate such as a SmallInteger."
+
+        {self} elementsExchangeIdentityWith: {otherObject}!

Item was added:
+ ----- Method: Object>>becomeForward: (in category 'system primitives') -----
+ becomeForward: otherObject
+        "Primitive. All variables in the entire system that used to point
+         to the receiver now point to the argument.
+         Fails if either argument is an immediate such as a SmallInteger,
+         or if the receiver is read-only."
+
+        {self} elementsForwardIdentityTo: {otherObject}!

Item was added:
+ ----- Method: Object>>becomeForward:copyHash: (in category 'system primitives') -----
+ becomeForward: otherObject copyHash: copyHash
+        "Primitive. All variables in the entire system that used to point to
+         the receiver now point to the argument. If copyHash is true, the
+         argument's identity hash bits will be set to those of the receiver.
+         Fails if
+                - either argument is an immediate such as a SmallInteger,
+                - if the receiver is read-only
+                - otherObject is read-only and copyHash is true."
+
+        {self}
+                elementsForwardIdentityTo: {otherObject}
+                copyHash: copyHash!

Item was removed:
- ----- Method: ProtoObject>>become: (in category 'system primitives') -----
- become: otherObject
-        "Primitive. Swap the object pointers of the receiver and the argument.
-         All variables in the entire system that used to point to the receiver
-         now point to the argument, and vice-versa.
-         Fails if either object is an immediate such as a SmallInteger."
-
-        {self} elementsExchangeIdentityWith: {otherObject}!

Item was removed:
- ----- Method: ProtoObject>>becomeForward: (in category 'system primitives') -----
- becomeForward: otherObject
-        "Primitive. All variables in the entire system that used to point
-         to the receiver now point to the argument.
-         Fails if either argument is an immediate such as a SmallInteger."
-
-        {self} elementsForwardIdentityTo: {otherObject}!

Item was removed:
- ----- Method: ProtoObject>>becomeForward:copyHash: (in category 'system primitives') -----
- becomeForward: otherObject copyHash: copyHash
-        "Primitive. All variables in the entire system that used to point to
-         the receiver now point to the argument. If copyHash is true, the
-         argument's identity hash bits will be set to those of the receiver.
-         Fails if either argument is an immediate such as a SmallInteger."
-
-        {self}
-                elementsForwardIdentityTo: {otherObject}
-                copyHash: copyHash!


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200418/171d0d41/attachment.html>


More information about the Squeak-dev mailing list