package posix-time2

  1. Overview
  2. Docs
Bindings for posix time functions

Install

Dune Dependency

Authors

Maintainers

Sources

v2.0.2.tar.gz
md5=03d384b20e46da8598a69942ef92b53e
sha512=6f5fa0fd5f3f0b845c2c9cd46a53e518dc5187f1ea7450fc04bbdc4c7b6fbcc427253e60847cc14f5bff895622e18aea404fbd8e14d4b50f52a7c0e682621ac8

doc/src/posix-time2.types/posix_time2_types.ml.html

Source file posix_time2_types.ml

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
open Ctypes
module Constants = Posix_time2_constants.Def (Posix_time2_generated_constants)
include Constants

type fd_set = unit Ctypes.abstract

let fd_set =
  Ctypes.abstract ~name:"fd_set" ~size:fd_set_size ~alignment:fd_set_alignment

module Def (S : Cstubs.Types.TYPE) = struct
  module Tm = struct
    type t = unit

    let t = S.structure "tm"
    let tm_sec = S.field t "tm_sec" S.int
    let tm_min = S.field t "tm_min" S.int
    let tm_hour = S.field t "tm_hour" S.int
    let tm_mday = S.field t "tm_mday" S.int
    let tm_mon = S.field t "tm_mon" S.int
    let tm_year = S.field t "tm_year" S.int
    let tm_wday = S.field t "tm_wday" S.int
    let tm_yday = S.field t "tm_yday" S.int
    let tm_isdst = S.field t "tm_isdst" S.int
    let () = S.seal t
  end

  module Timespec = struct
    type t = unit

    let t = S.structure "timespec"
    let tv_sec = S.field t "tv_sec" (S.lift_typ Posix_types.time_t)
    let tv_nsec = S.field t "tv_nsec" (S.lift_typ long)
    let () = S.seal t
  end

  module Timeval = struct
    type t = unit

    let t = S.structure "timeval"
    let tv_sec = S.field t "tv_sec" (S.lift_typ Posix_types.time_t)
    let tv_usec = S.field t "tv_usec" (S.lift_typ Posix_types.suseconds_t)
    let () = S.seal t
  end

  module Itimerval = struct
    type t = unit

    let t = S.structure "itimerval"
    let it_interval = S.field t "it_interval" Timeval.t
    let it_value = S.field t "it_value" Timeval.t
    let () = S.seal t
  end
end
OCaml

Innovation. Community. Security.