From 8d66caf398bb32d9a6089c0d94ecdef9e3941f65 Mon Sep 17 00:00:00 2001 From: Julian Hurst Date: Sat, 7 Sep 2024 02:43:59 +0200 Subject: Initial commit --- distamp.ha | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 distamp.ha diff --git a/distamp.ha b/distamp.ha new file mode 100644 index 0000000..6a60668 --- /dev/null +++ b/distamp.ha @@ -0,0 +1,32 @@ +use fmt; +use time; +use time::date; +use time::chrono; +use os; +use strconv; +use strings; + +export fn main() void = { + if (len(os::args) != 2) { + os::exit(os::status::FAILURE); + }; + + let timestr = os::args[1]; + let i = time::now(time::clock::REALTIME); + let spl = strings::split(timestr, ":"); + + let li = if (len(spl) > 2) { + fmt::fatal("Duration format: m or m:s"); + } else if (len(spl) == 2) { + let m = strconv::stoi64(spl[0])!; + let s = strconv::stoi64(spl[1])!; + let d = (m * time::MINUTE) + (s * time::SECOND); + yield time::add(i, d); + } else { + let m = strconv::stoi64(spl[0])!; + let d = m * time::MINUTE; + yield time::add(i, d); + }; + + fmt::printfln("", time::unix(li))!; +}; -- cgit v1.2.3