Zig
Zig
Date/Time Expires Within N Seconds/Minutes/Hours/Days
Demonstrates the how to tell if a date/time is within N seconds, minutes, hours, or days of the current system time.Chilkat Zig Downloads
const std = @import("std");
const chilkat = @import("chilkat");
pub fn main(init: std.process.Init) !void {
const alloc = init.arena.allocator();
const dt = try chilkat.DateTime.init();
defer dt.deinit();
// Set to the current system date/time.
dt.setFromCurrentSystemTime() catch {};
std.debug.print("Now: {s}\n", .{try dt.getAsTimestamp(alloc, true)});
// Add 10 minutes, making the date 10 minutes in the future.
dt.addSeconds(600) catch {};
std.debug.print("10 minutes from now: {s}\n", .{try dt.getAsTimestamp(alloc, true)});
// Is the date/time within 10 seconds of expiration (i.e. within 10 seconds of now)?
var b: bool = dt.expiresWithin(10, "seconds");
std.debug.print("Expires within 10 seconds: {}\n", .{b});
// Does the date/time expire within 5 minutes?
b = dt.expiresWithin(5, "minutes");
std.debug.print("Expires within 5 minutes: {}\n", .{b});
// Does the date/time expire within 15 minutes?
b = dt.expiresWithin(15, "minutes");
std.debug.print("Expires within 15 minutes: {}\n", .{b});
// Does the date/time expire within 1 hour?
b = dt.expiresWithin(1, "hour");
std.debug.print("Expires within 1 hour: {}\n", .{b});
// Does the date/time expire within 1 day?
b = dt.expiresWithin(1, "day");
std.debug.print("Expires within 1 day: {}\n", .{b});
// Output:
// Now: 2017-05-05T23:48:00-0500
// 10 minutes from now: 2017-05-05T23:58:00-0500
// Expires within 10 seconds: False
// Expires within 5 minutes: False
// Expires within 15 minutes: True
// Expires within 1 hour: True
// Expires within 1 day: True
}