[Development] QDateTime is missing shared null optimization
Thiago Macieira
thiago.macieira at intel.com
Sun Aug 2 19:43:45 CEST 2015
On Sunday 02 August 2015 10:04:36 Thiago Macieira wrote:
> How often do people construct a QDateTime containing only a QDate as a
> stepping stone to a full QDateTime? Note that the QDateTime constructor
> containing a QDate sets a valid time; you can only get valid date and null
> time if you use the constructor with QTime and pass an invalid time, so I'd
> advocate that you should suffer and allocate memory if you do that.
> > Also OffsetFromUTC supports weird offsets that are not 15 minute
> > intervals.
>
> True, but there aren't any official timezones outside a quarter-hour
> boundary. So a 7-bit combined offset & timespec should be enough for most
> use-cases. If you need more, you'll get it, but will cause memory
> allocation.
Actually, we can also combine the invalid date and invalid time in the same 7-
bit field.
For the quarter hour offsets ranging from (-12 * 4) =-48 to (+13.75 * 4) = 55,
that leaves 25 individual values for the timespec. One of them can be "date
only", which refers to a given date in any timezone, not a particular one.
The same applies to time-only, but I'm scratching my head on the combinations
of time-only QDateTime and changing timezones...
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
More information about the Development
mailing list