aboutsummaryrefslogtreecommitdiff
path: root/v_windows/v/vlib/time/parse.js.v
blob: 1303561a9b5c5f858f7b597a6e4d04ac83371841 (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
module time

// parse returns time from a date string.
//
// TODO(playX): JS Date expects iso8061 format of strings and other formats
// are implementation dependant, we probably want to implement parsing in JS.
pub fn parse(s string) Time {
	mut res := Time{}
	#let date = new Date(s.str)
	#res.year.val = date.getFullYear()
	#res.month.val = date.getMonth()
	#res.day.val = date.getDay()
	#res.hour.val = date.getHours()
	#res.minute.val = date.getMinutes()
	#res.second.val = date.getSeconds()
	#res.microsecond.val = date.getMilliseconds() * 1000
	#res.unix.val = (date.getTime() / 1000).toFixed(0)

	return res
}

pub fn parse_iso8601(s string) ?Time {
	return parse(s)
}