summaryrefslogtreecommitdiff
path: root/sys/src/cmd/upas/fs/strtotm.c
blob: d41c84b34f37269ca39e574c2f092fa4876f7890 (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
#include <u.h>
#include <libc.h>

int
strtotm(char *s, Tm *t)
{
	char **f, *fmt[] = {
		"WW MMM DD hh:mm:ss ?Z YYYY",
		"WW MMM DD hh:mm:ss YYYY",
		"?WW ?DD ?MMM ?YYYY hh:mm:ss ?Z",
		"?WW ?DD ?MMM ?YYYY hh:mm:ss",
		"?WW, DD-?MM-YY",
		"?DD ?MMM ?YYYY hh:mm:ss ?Z",
		"?DD ?MMM ?YYYY hh:mm:ss",
		"?DD-?MM-YY hh:mm:ss ?Z",
		"?DD-?MM-YY hh:mm:ss",
		"?DD-?MM-YY",
		"?MMM/?DD/?YYYY hh:mm:ss ?Z",
		"?MMM/?DD/?YYYY hh:mm:ss",
		"?MMM/?DD/?YYYY",
		nil,
	};

	for(f = fmt; *f; f++)
		if(tmparse(t, *f, s, nil, nil) != nil)
			return 0;
	return -1;
}