diff --git a/morphisms/timepoint.morphism-base b/morphisms/timepoint.morphism-base new file mode 100644 index 0000000..39f5822 --- /dev/null +++ b/morphisms/timepoint.morphism-base @@ -0,0 +1,15 @@ +``` +#include <time.h> +``` + +morph_unixtime_to_iso () + TimePoint ~ <TimeSince UnixEpoch> ~ Duration ~ Seconds ~ ℝ ~ <QuantizedLinear 0 1 1> ~ ℕ ~ x86.UInt64 +--> TimePoint ~ ISO8601 ~ <Seq~<ValueTerminated 0> Char~Ascii~x86.UInt8> +``` + time_t rawtime = (time_t)(*src); + struct tm *timeinfo = gmtime(&rawtime); + if (!timeinfo) return -1; + + strftime((char*)dst, 20, "%Y-%m-%dT%H:%M:%SZ", timeinfo); + return 0; +```