The Trunk: Kernel-eem.1322.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Kernel-eem.1322.mcz

commits-2
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!


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Kernel-eem.1322.mcz

Christoph Thiede

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


Von: Squeak-dev <[hidden email]> im Auftrag von [hidden email] <[hidden email]>
Gesendet: Donnerstag, 16. April 2020 01:39:32
An: [hidden email]; [hidden email]
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!




Carpe Squeak!