Import Upstream version 20180207
[hcoop/debian/mlton.git] / lib / mlton / basic / date.sig
CommitLineData
7f918cf1
CE
1(* Copyright (C) 2009 Matthew Fluet.
2 * Copyright (C) 1999-2006 Henry Cejtin, Matthew Fluet, Suresh
3 * Jagannathan, and Stephen Weeks.
4 *
5 * MLton is released under a BSD-style license.
6 * See the file MLton-LICENSE for details.
7 *)
8
9signature DATE_STRUCTS =
10 sig
11 end
12
13signature DATE =
14 sig
15 type t
16
17 structure Weekday:
18 sig
19 datatype t = Mon | Tue | Wed | Thu | Fri | Sat | Sun
20 end
21
22 structure Month:
23 sig
24 datatype t =
25 Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec
26
27 val toInt: t -> int
28 end
29
30 exception Date
31 val compare: t * t -> order
32 val date: {year: int,
33 month: Month.t,
34 day: int,
35 hour: int,
36 minute: int,
37 second: int,
38 offset: Time.t option} -> t
39 val day: t -> int
40 val fmt: t * string -> string
41 val fromString: string -> t option
42 val fromTimeLocal: Time.t -> t
43 val fromTimeUniv: Time.t -> t
44 val hour: t -> int
45 val isDst: t -> bool option
46 val layout: t -> Layout.t
47 val localOffset: unit -> Time.t
48 val minute: t -> int
49 val month: t -> Month.t
50 val now: unit -> t
51 val offset: t -> Time.t option
52 val scan: 'a * (char, 'a) StringCvt.reader -> (t * 'a) option
53 val second: t -> int
54 val toString: t -> string
55 val toTime: t -> Time.t
56 val weekDay: t -> Weekday.t
57 val year: t -> int
58 val yearDay: t -> int
59 end