Basics
Guides
API Reference
Basics
Guides
API Reference
[33:7] extends: object
Represents a precise time, with seconds and microseconds. Similar to the
struct timeval returned by the gettimeofday() UNIX system call. GLib is
attempting to unify around the use of 64-bit integers to represent
microsecond-precision time. As such, this type will be removed from a future
version of GLib. A consequence of using glong for tv_sec is that on
32-bit systems GTimeVal is subject to the year 2038 problem.
GTimeVal (Handle = null)
Creates a new
TimeValby wrapping a native handle or another wrapper.
Handle is the native handle or another wrapper whose handle to adopt.toNativeHandle (Source)
Normalizes a constructor argument into a raw pointer carrier. Accepts a raw NativeHandle, a raw NativeBuffer returned from
fn.call(...), another generated wrapper exposinghandle(), or null. Returns null when the argument carries no pointer.
Source is the raw handle, raw buffer, wrapper, or null.A raw pointer carrier or null when no pointer is present.getLib ()
Returns the opened native library for this generated wrapper.
The opened native library.handle ()
Returns the wrapped NativeHandle.
The wrapped NativeHandle.isNull ()
Returns true when the wrapped handle is null.
A bool.describe ()
Returns a small string for debugging generated wrappers.
A string.add (int microseconds)
Adds the given number of microseconds to @time_. @microseconds can also be negative to decrease the value of @time_.
microseconds is number of microseconds to add to @time.None.to_iso8601 ()
Converts @time_ into an RFC 3339 encoded string, relative to the Coordinated Universal Time (UTC). This is one of the many formats allowed by ISO 8601. ISO 8601 allows a large number of date/time formats, with or without punctuation and optional elements. The format returned by this function is a complete date and time, with optional punctuation included, the UTC time zone represented as "Z", and the @tv_usec part included if and only if it is nonzero, i.e. either "YYYY-MM-DDTHH:MM:SSZ" or "YYYY-MM-DDTHH:MM:SS.fffffZ". This corresponds to the Internet date/time format defined by RFC 3339, and to either of the two most-precise formats defined by the W3C Note Date and Time Formats. Both of these documents are profiles of ISO 8601. Use g_date_time_format() or g_strdup_printf() if a different variation of ISO 8601 format is required. If @time_ represents a date which is too large to fit into a
struct tm, %NULL will be returned. This is platform dependent. Note also that sinceGTimeValstores the number of seconds as aglong, on 32-bit systems it is subject to the year 2038 problem. Accordingly, since GLib 2.62, this function has been deprecated. Equivalent functionality is available using: |[ GDateTime *dt = g_date_time_new_from_unix_utc (time_val); iso8601_string = g_date_time_format_iso8601 (dt); g_date_time_unref (dt); ]| The return value of g_time_val_to_iso8601() has been nullable since GLib 2.54; before then, GLib would crash under the same conditions.
a newly allocated string containing an ISO 8601 date, or %NULL ifwas too large.[12:14] static extends: object
Generated struct layout helper for GIR record TimeVal.
layout ()
Returns the Panama struct layout for
TimeVal.

Aussom
Write once. Embed everywhere.
Copyright 2026 Austin Lehman. All rights reserved.