Revert export of times.CTime; add std/time_t instead. (#10319)

* Revert export of times.CTime
* Add std/time_t
This commit is contained in:
Oscar Nihlgård
2019-01-16 21:08:32 +01:00
committed by Andreas Rumpf
parent fc30cf02bc
commit 5df411bd6e
3 changed files with 28 additions and 7 deletions

View File

@@ -217,7 +217,7 @@ when defined(JS):
elif defined(posix):
import posix
type CTime* = posix.Time
type CTime = posix.Time
var
realTimeClockId {.importc: "CLOCK_REALTIME", header: "<time.h>".}: Clockid
@@ -233,13 +233,10 @@ elif defined(posix):
tzset()
elif defined(windows):
import winlean
import winlean, std/time_t
type CTime = time_t.Time
when defined(i386) and defined(gcc):
type CTime* {.importc: "time_t", header: "<time.h>".} = distinct int32
else:
# newest version of Visual C++ defines time_t to be of 64 bits
type CTime* {.importc: "time_t", header: "<time.h>".} = distinct int64
# visual c's c runtime exposes these under a different name
var timezone {.importc: "_timezone", header: "<time.h>".}: int

23
lib/std/time_t.nim Normal file
View File

@@ -0,0 +1,23 @@
#
#
# Nim's Runtime Library
# (c) Copyright 2019 Nim contributors
#
# See the file "copying.txt", included in this
# distribution, for details about the copyright.
#
when defined(nimdoc):
type
impl = distinct int64
Time* = impl ## \
## Wrapper for ``time_t``. On posix, this is an alias to ``posix.Time``.
elif defined(windows):
when defined(i386) and defined(gcc):
type Time* {.importc: "time_t", header: "<time.h>".} = distinct int32
else:
# newest version of Visual C++ defines time_t to be of 64 bits
type Time* {.importc: "time_t", header: "<time.h>".} = distinct int64
elif defined(posix):
import posix
export posix.Time

View File

@@ -219,6 +219,7 @@ lib/pure/collections/heapqueue.nim
lib/pure/fenv.nim
lib/std/sha1.nim
lib/std/varints.nim
lib/std/time_t.nim
lib/impure/rdstdin.nim
lib/wrappers/linenoise/linenoise.nim
lib/pure/strformat.nim