Add property setting to chain
Ali Çehreli via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sat Jul 15 16:20:01 PDT 2017
On 07/15/2017 12:53 PM, closescreen wrote:
> Let i have code:
>
> Clock.currTime.to!DateTime.Interval!DateTime( 24.hours ).fwdRange(
> h=>h+1.hours ).writeln;
>
> Now if i want to set the minute=0 and second=0 without breaking chain,
> what i should do?
>
>
> I think about somewhat like:
>
> with( Clock.currTime.to!DateTime){
> minute=0;
> second=0
> }.Interval!DateTime( 24.hours ).fwdRange( h=>h+1.hours ).writeln;
>
> But it is wrong, because 'with' not return me anything.
I would probably write a function:
import std.datetime;
import std.stdio;
import std.range;
import std.conv;
DateTime hourPrecision(DateTime dt) {
dt.minute = 0;
dt.second = 0;
return dt;
}
void main() {
Clock.currTime.to!DateTime.hourPrecision.Interval!DateTime(
24.hours ).fwdRange( h=>h+1.hours ).writeln;
}
Ali
More information about the Digitalmars-d-learn
mailing list