Я возиться с core.time.Duration
с - в частности, я пытаюсь правильно получить количество полных минут в "2 днях и 1 часе" Duration
.Как выяснилось, get!"minutes"
возвращает количество минут без часов, дней и недель (например, 0 в данном случае), поэтому для меня это неуместно, поскольку я ожидаю ответа 2940.
Я изучил источники и нашел core.time.getUnitsFromHNSecs
функцию, которая делает именно то, что мне нужно, но она закрыта для core.time
и использует приватное поле _hnsecs
из Duration
объектов.
Конечно,можно сделать
long minutes_in_duration(Duration d) {
return (d.get!"minutes"() + d.get!"hours"() * 60 +
d.get!"days"() * 24 * 60 + d.get!("weeks") * 7 * 24 * 60);
}
но это чертовски неуклюже.Есть ли лучший способ сделать то же самое, не рассеивая кишки Duration
?