about summary refs log tree commit diff
path: root/src/libstd/time.rs
blob: 2865666fdc8390c73ef19c074617a84c4d0885c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/*
Module: time
*/

// FIXME: Document what these functions do

#[abi = "cdecl"]
native mod rustrt {
    fn get_time(&sec: u32, &usec: u32);
    fn nano_time(&ns: u64);
}

/* Type: timeval */
type timeval = {sec: u32, usec: u32};

/* Function: get_time */
fn get_time() -> timeval {
    let sec = 0u32;
    let usec = 0u32;
    rustrt::get_time(sec, usec);
    ret {sec: sec, usec: usec};
}

/* Function: precise_time_ns */
fn precise_time_ns() -> u64 { let ns = 0u64; rustrt::nano_time(ns); ret ns; }

/* Function: precise_time_s */
fn precise_time_s() -> float {
    ret (precise_time_ns() as float) / 1000000000.;
}