I think the code is ready for prime time, modulo the issues below. What do you all think?

Overall this is a good example of modern, idiomatic D code. Everything is clear, simple, and in the right place. Congratulations, Shoo!

*******

Line 21: please add a comment that you're adding this "import inside struct" curiosity with an experimental purpose only.

Line 80: You could an assert or even an enforce here for TICKSPERSPEC.

Line 99: I'm a bit worried that we allow toSeconds for all integer widths. Probably if (isIntegral!T && T.sizeof >= 4) would be better.

Line 170: same concern about toMilliseconds - even bigger because there are lots more milliseconds out there :o).

Line 197: the parameter name should be msec

Line 218: same discussion about the allowed integral types

Line 245: parameter name

Line 431: "Unused"

Line 469: typedef is deprecated (sorry). That's partly why I'm suggesting to go with the enum.

Line 737: I'm afraid you can't put @trusted here because you don't know the safety level of BaseFunc and TargetFunc. You'll need to use @system.

Line 739: Since the two aliases are actually functions, you may want to start their names with lowercase.

Line 762: Beautiful idiom!


Andrei

On 08/20/2010 02:00 PM, SHOO wrote:
(2010/08/20 19:35), SHOO wrote:
I rewrote:
http://ideone.com/5IgYU
How about it?

P.S. I used an immutable struct for the first time...

Oops, I forgot AUTOSTART.
http://ideone.com/GiVmf
AutoStart.yes seems to be slightly redundant.
How about making a special type AutoStart with typedef and a AUTOSTART
with constant value(enum)?
See also: Line415, Line469, Line474-487
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos

Reply via email to