[squeak-dev] The Inbox: Chronology-Core-cmm.14.mcz
commits at source.squeak.org
commits at source.squeak.org
Thu Oct 18 03:07:42 UTC 2018
Chris Muller uploaded a new version of Chronology-Core to project The Inbox:
http://source.squeak.org/inbox/Chronology-Core-cmm.14.mcz
==================== Summary ====================
Name: Chronology-Core-cmm.14
Author: cmm
Time: 17 October 2018, 10:07:14.485014 pm
UUID: 5d93900c-4a4e-4a4e-80f3-800dbdb07d0b
Ancestors: Chronology-Core-tcj.12
- A fix and optimization of Timespan>>#=. Both elements being compared must have the same timezone (or same state of #noTimezone) in order to take advantage of the optimized #hasEqualTicks: comparison. Otherwise (if different timezones), a full comparison of their starts (via #=) is needed.
- There was a mention of this optimization put into the class comment. This level of detail may be a bit tedious for users to read at that level, so Brents original comment was restored.
=============== Diff against Chronology-Core-tcj.12 ===============
Item was changed:
Magnitude subclass: #Timespan
instanceVariableNames: 'start duration'
classVariableNames: ''
poolDictionaries: ''
category: 'Chronology-Core'!
+ !Timespan commentStamp: 'cmm 10/17/2018 22:00' prior: 0!
+ I represent a duration starting on a specific DateAndTime.!
- !Timespan commentStamp: 'bf 2/18/2016 14:43' prior: 0!
- I represent a duration starting on a specific DateAndTime.
-
- If my start has an offset identical to my #defaultOffset then comparisons ignore timezone offset.!
Item was changed:
----- Method: Timespan>>= (in category 'ansi protocol') -----
= comparand
+ ^ self class = comparand class
+ and: [(((self noTimezone and: [comparand noTimezone]) or: [self start offset = comparand start offset])
+ ifTrue: [ self start hasEqualTicks: comparand start ]
+ ifFalse: [ self start = comparand start ])
+ and: [ self duration = comparand duration ] ]
- ^ self class = comparand class
- and: [((self noTimezone or: [ comparand noTimezone ])
- ifTrue: [ self start hasEqualTicks: comparand start ]
- ifFalse: [ self start = comparand start ])
- and: [ self duration = comparand duration ] ]
.!
More information about the Squeak-dev
mailing list
|