On 01/21/2014 12:59 AM, Serhiy Storchaka wrote:
21.01.14 04:44, Nikolaus Rath написав(ла):
Serhiy Storchaka <storch...@gmail.com> writes:
20.01.14 06:19, Nikolaus Rath написав(ла):
This works if the user calls time.gmtime(None), but it fails for
time.gmtime(). It seems that in that case my C converter function is
never called.
What's the trick that I'm missing?
/*[clinic input]
time.gmtime
[
seconds: time_t
]
/
Ahh, interesting. So this works, but now the C default is evaluated even
if the user passed an argument (so that answers my question about
decreased performance in the other subthread). The generated code is:
Don't use time(NULL) as C default. Instead check group_right_1 and
call time(NULL) explicitly.
While this "trick" works, it abuses optional groups. Optional groups
are intended as a last resort, for semantics that can't be expressed any
other way. The semantics of time.gmtime() are very easily expressed
using normal Python syntax. Please don't use optional groups here.
//arry/
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com