Discussion:
The Trunk: Kernel-eem.1197.mcz
(too old to reply)
c***@source.squeak.org
0000-11-21 21:43:50 UTC
Permalink
Eliot Miranda uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-eem.1197.mcz

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

Name: Kernel-eem.1197
Author: eem
Time: 20 November 2018, 1:43:36.839917 pm
UUID: bf505221-c2ce-4adb-8f51-144901828649
Ancestors: Kernel-eem.1196

Define #= and #hash for Message such that distinct Messages with the identical selector and lookupClass, and literalEqual: arguments are equal.

=============== Diff against Kernel-eem.1196 ===============

Item was added:
+ ----- Method: Message>>= (in category 'comparing') -----
+ = anObject
+ ^self class == anObject class
+ and: [selector == anObject selector "selector lookup is by identity"
+ and: [lookupClass == anObject lookupClass
+ and: [args literalEqual: anObject arguments]]]!

Item was added:
+ ----- Method: Message>>hash (in category 'comparing') -----
+ hash
+ "#hash is implemented, because #= is implemented."
+ ^(selector hash bitXor: args hash) bitXor: lookupClass hash!

Loading...