Mercurial > projects > ldc
view druntime/import/core/stdc/time.d @ 1458:e0b2d67cfe7c
Added druntime (this should be removed once it works).
author | Robert Clipsham <robert@octarineparrot.com> |
---|---|
date | Tue, 02 Jun 2009 17:43:06 +0100 |
parents | |
children |
line wrap: on
line source
/** * D header file for C99. * * Copyright: Copyright Sean Kelly 2005 - 2009. * License: <a href="http://www.boost.org/LICENSE_1_0.txt>Boost License 1.0</a>. * Authors: Sean Kelly * Standards: ISO/IEC 9899:1999 (E) * * Copyright Sean Kelly 2005 - 2009. * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at * http://www.boost.org/LICENSE_1_0.txt) */ module core.stdc.time; private import core.stdc.config; private import core.stdc.stddef; // for size_t extern (C): version( Windows ) { struct tm { int tm_sec; // seconds after the minute - [0, 60] int tm_min; // minutes after the hour - [0, 59] int tm_hour; // hours since midnight - [0, 23] int tm_mday; // day of the month - [1, 31] int tm_mon; // months since January - [0, 11] int tm_year; // years since 1900 int tm_wday; // days since Sunday - [0, 6] int tm_yday; // days since January 1 - [0, 365] int tm_isdst; // Daylight Saving Time flag } } else { struct tm { int tm_sec; // seconds after the minute [0-60] int tm_min; // minutes after the hour [0-59] int tm_hour; // hours since midnight [0-23] int tm_mday; // day of the month [1-31] int tm_mon; // months since January [0-11] int tm_year; // years since 1900 int tm_wday; // days since Sunday [0-6] int tm_yday; // days since January 1 [0-365] int tm_isdst; // Daylight Savings Time flag c_long tm_gmtoff; // offset from CUT in seconds char* tm_zone; // timezone abbreviation } } alias c_long time_t; alias c_long clock_t; version( Windows ) { clock_t CLOCKS_PER_SEC = 1000; } else version( OSX ) { clock_t CLOCKS_PER_SEC = 100; } else version( freebsd ) { clock_t CLOCKS_PER_SEC = 128; } else { clock_t CLOCKS_PER_SEC = 1000000; } clock_t clock(); double difftime(time_t time1, time_t time0); time_t mktime(tm* timeptr); time_t time(time_t* timer); char* asctime(in tm* timeptr); char* ctime(in time_t* timer); tm* gmtime(in time_t* timer); tm* localtime(in time_t* timer); size_t strftime(char* s, size_t maxsize, in char* format, in tm* timeptr); version( Windows ) { void tzset(); // non-standard void _tzset(); // non-standard char* _strdate(char* s); // non-standard char* _strtime(char* s); // non-standard } else version( linux ) { void tzset(); // non-standard } else version( freebsd ) { void tzset(); // non-standard }