1/**
2 * D header file for C99.
3 *
4 * $(C_HEADER_DESCRIPTION pubs.opengroup.org/onlinepubs/009695399/basedefs/_time.h.html, _time.h)
5 *
6 * Copyright: Copyright Sean Kelly 2005 - 2009.
7 * License: Distributed under the
8 *      $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0).
9 *    (See accompanying file LICENSE)
10 * Authors:   Sean Kelly,
11 *            Alex R��nne Petersen
12 * Source:    $(DRUNTIMESRC core/stdc/_time.d)
13 * Standards: ISO/IEC 9899:1999 (E)
14 */
15
16module core.stdc.time;
17
18version (Posix)
19    public import core.sys.posix.stdc.time;
20else version (Windows)
21    public import core.sys.windows.stdc.time;
22else
23    static assert(0, "unsupported system");
24
25import core.stdc.config;
26
27extern (C):
28@trusted: // There are only a few functions here that use unsafe C strings.
29nothrow:
30@nogc:
31
32///
33pure double  difftime(time_t time1, time_t time0); // MT-Safe
34///
35@system time_t  mktime(scope tm* timeptr); // @system: MT-Safe env locale
36///
37time_t  time(scope time_t* timer);
38
39///
40@system char*   asctime(const scope tm* timeptr); // @system: MT-Unsafe race:asctime locale
41///
42@system char*   ctime(const scope time_t* timer); // @system: MT-Unsafe race:tmbuf race:asctime env locale
43///
44@system tm*     gmtime(const scope time_t* timer); // @system: MT-Unsafe race:tmbuf env locale
45///
46@system tm*     localtime(const scope time_t* timer); // @system: MT-Unsafe race:tmbuf env locale
47///
48@system size_t  strftime(scope char* s, size_t maxsize, const scope char* format, const scope tm* timeptr); // @system: MT-Safe env locale
49