PostgreSQL Source Code
git master
|
#include "postgres.h"
#include <ctype.h>
#include <math.h>
#include <limits.h>
#include <sys/time.h>
#include "access/xact.h"
#include "catalog/pg_type.h"
#include "common/int.h"
#include "common/int128.h"
#include "funcapi.h"
#include "libpq/pqformat.h"
#include "miscadmin.h"
#include "nodes/makefuncs.h"
#include "nodes/nodeFuncs.h"
#include "nodes/supportnodes.h"
#include "parser/scansup.h"
#include "utils/array.h"
#include "utils/builtins.h"
#include "utils/date.h"
#include "utils/datetime.h"
#include "utils/float.h"
#include "utils/numeric.h"
#include "utils/sortsupport.h"
Go to the source code of this file.
Data Structures | |
struct | generate_series_timestamp_fctx |
struct | generate_series_timestamptz_fctx |
Macros | |
#define | SAMESIGN(a, b) (((a) < 0) == ((b) < 0)) |
#define | TIMESTAMP_GT(t1, t2) DatumGetBool(DirectFunctionCall2(timestamp_gt,t1,t2)) |
#define | TIMESTAMP_LT(t1, t2) DatumGetBool(DirectFunctionCall2(timestamp_lt,t1,t2)) |
Variables | |
TimestampTz | PgStartTime |
TimestampTz | PgReloadTime |
#define TIMESTAMP_GT | ( | t1, | |
t2 | |||
) | DatumGetBool(DirectFunctionCall2(timestamp_gt,t1,t2)) |
#define TIMESTAMP_LT | ( | t1, | |
t2 | |||
) | DatumGetBool(DirectFunctionCall2(timestamp_lt,t1,t2)) |
Definition at line 1324 of file timestamp.c.
References DAY, elog, ereport, errcode(), errmsg(), ERROR, HOUR, INTERVAL_FULL_PRECISION, INTERVAL_FULL_RANGE, INTERVAL_MASK, INTERVAL_PRECISION, INTERVAL_RANGE, MAX_INTERVAL_PRECISION, MINUTE, MONTH, interval::month, MONTHS_PER_YEAR, range(), SECOND, interval::time, USECS_PER_HOUR, USECS_PER_MINUTE, and YEAR.
Referenced by interval_in(), interval_recv(), and interval_scale().
Definition at line 395 of file timestamp.c.
References AdjustTimestampForTypmodError().
Referenced by GetSQLCurrentTimestamp(), GetSQLLocalTimestamp(), parse_datetime(), timestamp_in(), timestamp_recv(), timestamp_scale(), timestamptz_in(), timestamptz_recv(), timestamptz_scale(), and to_timestamp().
Definition at line 340 of file timestamp.c.
References ereport, errcode(), errmsg(), ERROR, error(), MAX_TIMESTAMP_PRECISION, and TIMESTAMP_NOT_FINITE.
Referenced by AdjustTimestampForTypmod().
Definition at line 105 of file timestamp.c.
References ereport, errcode(), errmsg(), ERROR, MAX_TIMESTAMP_PRECISION, and WARNING.
Referenced by anytimestamp_typmodin(), and transformSQLValueFunction().
Definition at line 84 of file timestamp.c.
References anytimestamp_typmod_check(), ArrayGetIntegerTypmods(), ereport, errcode(), errmsg(), and ERROR.
Referenced by timestamptypmodin(), and timestamptztypmodin().
Definition at line 127 of file timestamp.c.
References psprintf().
Referenced by timestamptypmodout(), and timestamptztypmodout().
Datum clock_timestamp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1550 of file timestamp.c.
References GetCurrentTimestamp(), and PG_RETURN_TIMESTAMPTZ.
int date2isoweek | ( | int | year, |
int | mon, | ||
int | mday | ||
) |
Definition at line 4475 of file timestamp.c.
References date2j(), and j2day().
Referenced by DCH_to_char(), extract_date(), timestamp_part_common(), timestamp_trunc(), timestamptz_part_common(), and timestamptz_trunc_internal().
int date2isoyear | ( | int | year, |
int | mon, | ||
int | mday | ||
) |
Definition at line 4530 of file timestamp.c.
References date2j(), and j2day().
Referenced by date2isoyearday(), DCH_to_char(), extract_date(), timestamp_part_common(), and timestamptz_part_common().
int date2isoyearday | ( | int | year, |
int | mon, | ||
int | mday | ||
) |
Definition at line 4587 of file timestamp.c.
References date2isoyear(), date2j(), and isoweek2j().
Referenced by DCH_to_char().
Definition at line 2037 of file timestamp.c.
References USECS_PER_SEC.
Referenced by make_timestamptz_at_timezone(), timestamp2timestamptz_opt_overflow(), timestamp_izone(), timestamp_zone(), timestamptz_izone(), timestamptz_zone(), and tm2timestamp().
Definition at line 1789 of file timestamp.c.
References USECS_PER_HOUR, USECS_PER_MINUTE, and USECS_PER_SEC.
Referenced by DecodeDateTime(), DecodeTimeOnly(), and timestamp2tm().
void EncodeSpecialTimestamp | ( | Timestamp | dt, |
char * | str | ||
) |
Definition at line 1527 of file timestamp.c.
References EARLY, elog, ERROR, LATE, generate_unaccent_rules::str, TIMESTAMP_IS_NOBEGIN, and TIMESTAMP_IS_NOEND.
Referenced by JsonEncodeDateTime(), PGTYPEStimestamp_to_asc(), timestamp_out(), timestamptz_out(), and timestamptz_to_str().
Datum extract_interval | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5378 of file timestamp.c.
References interval_part_common().
Datum extract_timestamp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4925 of file timestamp.c.
References timestamp_part_common().
Datum extract_timestamptz | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5197 of file timestamp.c.
References timestamptz_part_common().
Datum float8_timestamptz | ( | PG_FUNCTION_ARGS | ) |
Definition at line 718 of file timestamp.c.
References DATETIME_MIN_JULIAN, ereport, errcode(), errmsg(), ERROR, IS_VALID_TIMESTAMP, PG_GETARG_FLOAT8, PG_RETURN_TIMESTAMP, POSTGRES_EPOCH_JDATE, SECS_PER_DAY, TIMESTAMP_END_JULIAN, TIMESTAMP_NOBEGIN, TIMESTAMP_NOEND, UNIX_EPOCH_JDATE, and USECS_PER_SEC.
Datum generate_series_timestamp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5767 of file timestamp.c.
References generate_series_timestamp_fctx::current, DatumGetTimestamp, DirectFunctionCall2, ereport, errcode(), errmsg(), ERROR, generate_series_timestamp_fctx::finish, interval_cmp_internal(), MemoryContextSwitchTo(), MemSet, FuncCallContext::multi_call_memory_ctx, palloc(), PG_GETARG_INTERVAL_P, PG_GETARG_TIMESTAMP, PointerGetDatum, SRF_FIRSTCALL_INIT, SRF_IS_FIRSTCALL, SRF_PERCALL_SETUP, SRF_RETURN_DONE, SRF_RETURN_NEXT, generate_series_timestamp_fctx::step, generate_series_timestamp_fctx::step_sign, timestamp_cmp_internal(), timestamp_pl_interval(), TimestampGetDatum, and FuncCallContext::user_fctx.
Datum generate_series_timestamptz | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5847 of file timestamp.c.
References generate_series_timestamptz_fctx::current, DatumGetTimestampTz, DirectFunctionCall2, ereport, errcode(), errmsg(), ERROR, generate_series_timestamptz_fctx::finish, interval_cmp_internal(), MemoryContextSwitchTo(), MemSet, FuncCallContext::multi_call_memory_ctx, palloc(), PG_GETARG_INTERVAL_P, PG_GETARG_TIMESTAMPTZ, PointerGetDatum, SRF_FIRSTCALL_INIT, SRF_IS_FIRSTCALL, SRF_PERCALL_SETUP, SRF_RETURN_DONE, SRF_RETURN_NEXT, generate_series_timestamptz_fctx::step, generate_series_timestamptz_fctx::step_sign, timestamp_cmp_internal(), timestamptz_pl_interval(), TimestampTzGetDatum, and FuncCallContext::user_fctx.
TimestampTz GetCurrentTimestamp | ( | void | ) |
Definition at line 1574 of file timestamp.c.
References gettimeofday(), POSTGRES_EPOCH_JDATE, SECS_PER_DAY, UNIX_EPOCH_JDATE, and USECS_PER_SEC.
Referenced by ApplyLauncherMain(), ApplyWorkerMain(), asyncQueueFillWarning(), autoprewarm_main(), AutoVacLauncherMain(), BackgroundWriterMain(), bbsink_copystream_archive_contents(), bbsink_copystream_end_archive(), bbsink_copystream_new(), bbsink_throttle_begin_backup(), begin_startup_progress_phase(), check_log_duration(), CheckPointGuts(), CleanupBackgroundWorker(), clock_timestamp(), CreateCheckPoint(), CreateEndOfRecoveryRecord(), CreateOverwriteContrecordRecord(), CreateRestartPoint(), DetermineSleepTime(), disable_timeout(), disable_timeouts(), do_analyze_rel(), do_start_bgworker(), do_start_worker(), drandom(), enable_timeout_after(), enable_timeout_at(), enable_timeout_every(), enable_timeouts(), entry_reset(), get_role_password(), GetCurrentTransactionStopTimestamp(), GetReplicationApplyDelay(), GetSnapshotCurrentTimestamp(), handle_sig_alarm(), has_startup_progress_timeout_expired(), heap_vacuum_rel(), InitProcessGlobals(), launcher_determine_sleep(), LockBufferForCleanup(), log_disconnections(), LogCheckpointEnd(), logicalrep_worker_launch(), LogicalRepApplyLoop(), maybe_start_bgworkers(), PerformWalRecovery(), pgfdw_cancel_query(), pgfdw_exec_cleanup_query(), pgfdw_get_cleanup_result(), pgss_shmem_startup(), pgstat_build_snapshot(), pgstat_report_activity(), pgstat_report_analyze(), pgstat_report_archiver(), pgstat_report_autovac(), pgstat_report_checksum_failures_in_db(), pgstat_report_vacuum(), pgstat_reset(), pgstat_reset_after_failure(), pgstat_reset_counters(), pgstat_reset_of_kind(), pgstat_reset_slru(), PostgresSingleUserMain(), PostmasterMain(), PrepareTransaction(), process_syncing_tables_for_apply(), ProcessPendingWrites(), ProcessRepliesIfAny(), ProcessStandbyReplyMessage(), ProcessWalSndrMessage(), ProcSleep(), rebuild_database_list(), RecordTransactionAbort(), RecordTransactionAbortPrepared(), RecordTransactionCommitPrepared(), recoveryApplyDelay(), reschedule_timeouts(), ResolveRecoveryConflictWithBufferPin(), ResolveRecoveryConflictWithLock(), ResolveRecoveryConflictWithVirtualXIDs(), send_feedback(), SetCurrentStatementStartTimestamp(), SetCurrentTransactionStopTimestamp(), StartTransaction(), test_pattern(), throttle(), UpdateWorkerStats(), WaitExceedsMaxStandbyDelay(), WaitForWALToBecomeAvailable(), WalReceiverMain(), WalSndKeepalive(), WalSndLoop(), WalSndUpdateProgress(), WalSndWaitForWal(), WalSndWriteData(), XLogBackgroundFlush(), XLogFileRead(), XLogPrefetchResetStats(), XLogPrefetchShmemInit(), XLogRestorePoint(), XLogSendPhysical(), XLogWalRcvSendHSFeedback(), and XLogWalRcvSendReply().
void GetEpochTime | ( | struct pg_tm * | tm | ) |
Definition at line 2069 of file timestamp.c.
References elog, epoch, ERROR, pg_gmtime(), tm, pg_tm::tm_hour, pg_tm::tm_mday, pg_tm::tm_min, pg_tm::tm_mon, pg_tm::tm_sec, and pg_tm::tm_year.
Referenced by date_in(), PGTYPESdate_from_asc(), and SetEpochTimestamp().
TimestampTz GetSQLCurrentTimestamp | ( | int32 | typmod | ) |
Definition at line 1592 of file timestamp.c.
References AdjustTimestampForTypmod(), and GetCurrentTransactionStartTimestamp().
Referenced by ExecEvalSQLValueFunction().
Definition at line 1606 of file timestamp.c.
References AdjustTimestampForTypmod(), GetCurrentTransactionStartTimestamp(), and timestamptz2timestamp().
Referenced by ExecEvalSQLValueFunction().
Datum in_range_interval_interval | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3436 of file timestamp.c.
References DatumGetIntervalP, DirectFunctionCall2, ereport, errcode(), errmsg(), ERROR, int128_compare(), int64_to_int128(), interval_cmp_internal(), interval_cmp_value(), interval_mi(), interval_pl(), IntervalPGetDatum, PG_GETARG_BOOL, PG_GETARG_INTERVAL_P, PG_RETURN_BOOL, and val.
Datum in_range_timestamp_interval | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3405 of file timestamp.c.
References DatumGetTimestamp, DirectFunctionCall2, ereport, errcode(), errmsg(), ERROR, int128_compare(), int64_to_int128(), interval_cmp_value(), IntervalPGetDatum, PG_GETARG_BOOL, PG_GETARG_INTERVAL_P, PG_GETARG_TIMESTAMP, PG_RETURN_BOOL, timestamp_mi_interval(), timestamp_pl_interval(), TimestampGetDatum, and val.
Referenced by in_range_date_interval().
Datum in_range_timestamptz_interval | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3374 of file timestamp.c.
References DatumGetTimestampTz, DirectFunctionCall2, ereport, errcode(), errmsg(), ERROR, int128_compare(), int64_to_int128(), interval_cmp_value(), IntervalPGetDatum, PG_GETARG_BOOL, PG_GETARG_INTERVAL_P, PG_GETARG_TIMESTAMPTZ, PG_RETURN_BOOL, timestamptz_mi_interval(), timestamptz_pl_interval(), TimestampTzGetDatum, and val.
Definition at line 1962 of file timestamp.c.
References Interval::day, Interval::month, MONTHS_PER_YEAR, Interval::time, pg_itm::tm_hour, pg_itm::tm_mday, pg_itm::tm_min, pg_itm::tm_mon, pg_itm::tm_sec, pg_itm::tm_usec, pg_itm::tm_year, USECS_PER_HOUR, USECS_PER_MINUTE, and USECS_PER_SEC.
Referenced by interval_out(), interval_part_common(), interval_to_char(), and interval_trunc().
Datum interval_accum | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3478 of file timestamp.c.
References construct_array(), DatumGetIntervalP, deconstruct_array(), DirectFunctionCall2, elog, ERROR, interval_pl(), IntervalPGetDatum, newval, PG_GETARG_ARRAYTYPE_P, PG_GETARG_INTERVAL_P, PG_RETURN_ARRAYTYPE_P, and Interval::time.
Datum interval_accum_inv | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3562 of file timestamp.c.
References construct_array(), DatumGetIntervalP, deconstruct_array(), DirectFunctionCall2, elog, ERROR, interval_mi(), IntervalPGetDatum, newval, PG_GETARG_ARRAYTYPE_P, PG_GETARG_INTERVAL_P, PG_RETURN_ARRAYTYPE_P, and Interval::time.
Datum interval_avg | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3597 of file timestamp.c.
References DatumGetIntervalP, deconstruct_array(), DirectFunctionCall2, elog, ERROR, Float8GetDatum(), interval_div(), IntervalPGetDatum, PG_GETARG_ARRAYTYPE_P, PG_RETURN_NULL, and Interval::time.
Datum interval_cmp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2469 of file timestamp.c.
References interval_cmp_internal(), PG_GETARG_INTERVAL_P, and PG_RETURN_INT32.
Referenced by gbt_intvkey_cmp().
Definition at line 2406 of file timestamp.c.
References int128_compare(), and interval_cmp_value().
Referenced by generate_series_timestamp(), generate_series_timestamptz(), in_range_interval_interval(), interval_cmp(), interval_eq(), interval_ge(), interval_gt(), interval_larger(), interval_le(), interval_lt(), interval_ne(), and interval_smaller().
Definition at line 2384 of file timestamp.c.
References days, int128_add_int64_mul_int64(), int64_to_int128(), interval::month, interval::time, and USECS_PER_DAY.
Referenced by in_range_interval_interval(), in_range_timestamp_interval(), in_range_timestamptz_interval(), interval_cmp_internal(), interval_hash(), and interval_hash_extended().
Datum interval_combine | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3513 of file timestamp.c.
References construct_array(), DatumGetIntervalP, deconstruct_array(), DirectFunctionCall2, elog, ERROR, interval_pl(), IntervalPGetDatum, PG_GETARG_ARRAYTYPE_P, PG_RETURN_ARRAYTYPE_P, and Interval::time.
Datum interval_div | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3322 of file timestamp.c.
References Abs, Interval::day, DAYS_PER_MONTH, ereport, errcode(), errmsg(), ERROR, Interval::month, palloc(), PG_GETARG_FLOAT8, PG_GETARG_INTERVAL_P, PG_RETURN_INTERVAL_P, SECS_PER_DAY, Interval::time, TSROUND, and USECS_PER_SEC.
Referenced by interval_avg().
Datum interval_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2415 of file timestamp.c.
References interval_cmp_internal(), PG_GETARG_INTERVAL_P, and PG_RETURN_BOOL.
Referenced by gbt_intveq().
Datum interval_finite | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2058 of file timestamp.c.
References PG_RETURN_BOOL.
Datum interval_ge | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2460 of file timestamp.c.
References interval_cmp_internal(), PG_GETARG_INTERVAL_P, and PG_RETURN_BOOL.
Referenced by gbt_intvge().
Datum interval_gt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2442 of file timestamp.c.
References interval_cmp_internal(), PG_GETARG_INTERVAL_P, and PG_RETURN_BOOL.
Referenced by gbt_intvgt().
Datum interval_hash | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2485 of file timestamp.c.
References DirectFunctionCall1, hashint8(), int128_to_int64(), Int64GetDatumFast, interval_cmp_value(), and PG_GETARG_INTERVAL_P.
Datum interval_hash_extended | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2503 of file timestamp.c.
References DirectFunctionCall2, hashint8extended(), int128_to_int64(), Int64GetDatumFast, interval_cmp_value(), PG_GETARG_DATUM, and PG_GETARG_INTERVAL_P.
Datum interval_in | ( | PG_FUNCTION_ARGS | ) |
Definition at line 883 of file timestamp.c.
References AdjustIntervalForTypmod(), DateTimeParseError(), DecodeInterval(), DecodeISO8601Interval(), DTERR_BAD_FORMAT, DTERR_FIELD_OVERFLOW, DTERR_INTERVAL_OVERFLOW, DTK_DELTA, elog, ereport, errcode(), errmsg(), ERROR, INTERVAL_FULL_RANGE, INTERVAL_RANGE, itmin2interval(), MAXDATEFIELDS, palloc(), ParseDateTime(), PG_GETARG_CSTRING, PG_GETARG_INT32, PG_GETARG_OID, PG_RETURN_INTERVAL_P, range(), generate_unaccent_rules::str, pg_itm_in::tm_mday, pg_itm_in::tm_mon, pg_itm_in::tm_usec, and pg_itm_in::tm_year.
Referenced by check_timezone(), and flatten_set_variable_args().
Datum interval_justify_days | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2854 of file timestamp.c.
References Interval::day, DAYS_PER_MONTH, ereport, errcode(), errmsg(), ERROR, Interval::month, palloc(), pg_add_s32_overflow(), PG_GETARG_INTERVAL_P, PG_RETURN_INTERVAL_P, and Interval::time.
Datum interval_justify_hours | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2816 of file timestamp.c.
References Interval::day, ereport, errcode(), errmsg(), ERROR, Interval::month, palloc(), pg_add_s32_overflow(), PG_GETARG_INTERVAL_P, PG_RETURN_INTERVAL_P, Interval::time, TMODULO, and USECS_PER_DAY.
Referenced by timestamp_mi().
Datum interval_justify_interval | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2740 of file timestamp.c.
References Interval::day, DAYS_PER_MONTH, ereport, errcode(), errmsg(), ERROR, Interval::month, palloc(), pg_add_s32_overflow(), PG_GETARG_INTERVAL_P, PG_RETURN_INTERVAL_P, Interval::time, TMODULO, and USECS_PER_DAY.
Datum interval_larger | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3147 of file timestamp.c.
References interval_cmp_internal(), PG_GETARG_INTERVAL_P, and PG_RETURN_INTERVAL_P.
Datum interval_le | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2451 of file timestamp.c.
References interval_cmp_internal(), PG_GETARG_INTERVAL_P, and PG_RETURN_BOOL.
Referenced by gbt_intvle().
Datum interval_lt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2433 of file timestamp.c.
References interval_cmp_internal(), PG_GETARG_INTERVAL_P, and PG_RETURN_BOOL.
Referenced by abs_interval(), and gbt_intvlt().
Datum interval_mi | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3195 of file timestamp.c.
References Interval::day, ereport, errcode(), errmsg(), ERROR, Interval::month, palloc(), PG_GETARG_INTERVAL_P, PG_RETURN_INTERVAL_P, SAMESIGN, and Interval::time.
Referenced by in_range_interval_interval(), interval_accum_inv(), interval_dist(), and interval_lerp().
Datum interval_mul | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3235 of file timestamp.c.
References Abs, Interval::day, DAYS_PER_MONTH, ereport, errcode(), errmsg(), ERROR, FLOAT8_FITS_IN_INT64, Interval::month, palloc(), PG_GETARG_FLOAT8, PG_GETARG_INTERVAL_P, PG_RETURN_INTERVAL_P, SECS_PER_DAY, Interval::time, TSROUND, and USECS_PER_SEC.
Referenced by interval_lerp(), and mul_d_interval().
Datum interval_ne | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2424 of file timestamp.c.
References interval_cmp_internal(), PG_GETARG_INTERVAL_P, and PG_RETURN_BOOL.
Datum interval_out | ( | PG_FUNCTION_ARGS | ) |
Definition at line 955 of file timestamp.c.
References buf, EncodeInterval(), interval2itm(), IntervalStyle, MAXDATELEN, PG_GETARG_INTERVAL_P, PG_RETURN_CSTRING, and pstrdup().
Referenced by flatten_set_variable_args(), timestamp_izone(), timestamptz_izone(), and timetz_izone().
Datum interval_part | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5372 of file timestamp.c.
References interval_part_common().
|
static |
Definition at line 5207 of file timestamp.c.
References DAYS_PER_MONTH, DAYS_PER_YEAR, DecodeSpecial(), DecodeUnits(), downcase_truncate_identifier(), DTK_CENTURY, DTK_DAY, DTK_DECADE, DTK_EPOCH, DTK_HOUR, DTK_MICROSEC, DTK_MILLENNIUM, DTK_MILLISEC, DTK_MINUTE, DTK_MONTH, DTK_QUARTER, DTK_SECOND, DTK_YEAR, ereport, errcode(), errmsg(), ERROR, format_type_be(), int64_div_fast_to_numeric(), int64_to_numeric(), interval2itm(), interval::month, MONTHS_PER_YEAR, numeric_add_opt_error(), pg_add_s64_overflow(), PG_GETARG_INTERVAL_P, PG_GETARG_TEXT_PP, pg_mul_s64_overflow(), PG_RETURN_FLOAT8, PG_RETURN_NUMERIC, RESERV, SECS_PER_DAY, interval::time, tm, pg_tm::tm_hour, pg_tm::tm_mday, pg_tm::tm_min, pg_tm::tm_mon, pg_tm::tm_sec, pg_tm::tm_year, generate_unaccent_rules::type, UNITS, UNKNOWN_FIELD, val, VARDATA_ANY, and VARSIZE_ANY_EXHDR.
Referenced by extract_interval(), and interval_part().
Datum interval_pl | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3161 of file timestamp.c.
References Interval::day, ereport, errcode(), errmsg(), ERROR, Interval::month, palloc(), PG_GETARG_INTERVAL_P, PG_RETURN_INTERVAL_P, SAMESIGN, and Interval::time.
Referenced by in_range_interval_interval(), interval_accum(), interval_combine(), and interval_lerp().
Datum interval_recv | ( | PG_FUNCTION_ARGS | ) |
Definition at line 974 of file timestamp.c.
References AdjustIntervalForTypmod(), buf, interval::month, palloc(), PG_GETARG_INT32, PG_GETARG_OID, PG_GETARG_POINTER, PG_RETURN_INTERVAL_P, pq_getmsgint(), pq_getmsgint64(), and interval::time.
Datum interval_scale | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1305 of file timestamp.c.
References AdjustIntervalForTypmod(), palloc(), PG_GETARG_INT32, PG_GETARG_INTERVAL_P, and PG_RETURN_INTERVAL_P.
Datum interval_send | ( | PG_FUNCTION_ARGS | ) |
Definition at line 999 of file timestamp.c.
References buf, interval::month, PG_GETARG_INTERVAL_P, PG_RETURN_BYTEA_P, pq_begintypsend(), pq_endtypsend(), pq_sendint32(), pq_sendint64(), and interval::time.
Datum interval_smaller | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3132 of file timestamp.c.
References interval_cmp_internal(), PG_GETARG_INTERVAL_P, and PG_RETURN_INTERVAL_P.
Datum interval_support | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1242 of file timestamp.c.
References FuncExpr::args, Assert(), DatumGetInt32, exprTypmod(), SupportRequestSimplify::fcall, INTERVAL_FULL_PRECISION, INTERVAL_PRECISION, intervaltypmodleastfield(), IsA, linitial, list_length(), lsecond, MAX_INTERVAL_PRECISION, PG_GETARG_POINTER, PG_RETURN_POINTER, relabel_to_typmod(), and source.
Datum interval_trunc | ( | PG_FUNCTION_ARGS | ) |
Definition at line 4331 of file timestamp.c.
References DecodeUnits(), downcase_truncate_identifier(), DTK_CENTURY, DTK_DAY, DTK_DECADE, DTK_HOUR, DTK_MICROSEC, DTK_MILLENNIUM, DTK_MILLISEC, DTK_MINUTE, DTK_MONTH, DTK_QUARTER, DTK_SECOND, DTK_WEEK, DTK_YEAR, ereport, errcode(), errdetail(), errmsg(), ERROR, format_type_be(), interval2itm(), itm2interval(), palloc(), PG_GETARG_INTERVAL_P, PG_GETARG_TEXT_PP, PG_RETURN_INTERVAL_P, tm, pg_tm::tm_hour, pg_tm::tm_mday, pg_tm::tm_min, pg_tm::tm_mon, pg_tm::tm_sec, pg_tm::tm_year, generate_unaccent_rules::type, UNITS, val, VARDATA_ANY, and VARSIZE_ANY_EXHDR.
Datum interval_um | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3103 of file timestamp.c.
References Interval::day, ereport, errcode(), errmsg(), ERROR, Interval::month, interval::month, palloc(), PG_GETARG_INTERVAL_P, PG_RETURN_INTERVAL_P, SAMESIGN, Interval::time, and interval::time.
Referenced by abs_interval().
Datum intervaltypmodin | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1024 of file timestamp.c.
References ArrayGetIntegerTypmods(), DAY, ereport, errcode(), errmsg(), ERROR, HOUR, INTERVAL_FULL_PRECISION, INTERVAL_FULL_RANGE, INTERVAL_MASK, INTERVAL_TYPMOD, MAX_INTERVAL_PRECISION, MINUTE, MONTH, PG_GETARG_ARRAYTYPE_P, PG_RETURN_INT32, SECOND, WARNING, and YEAR.
|
static |
Definition at line 1189 of file timestamp.c.
References DAY, elog, ERROR, HOUR, INTERVAL_FULL_RANGE, INTERVAL_MASK, INTERVAL_RANGE, MINUTE, MONTH, SECOND, and YEAR.
Referenced by interval_support().
Datum intervaltypmodout | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1103 of file timestamp.c.
References DAY, elog, ERROR, HOUR, INTERVAL_FULL_PRECISION, INTERVAL_FULL_RANGE, INTERVAL_MASK, INTERVAL_PRECISION, INTERVAL_RANGE, MINUTE, MONTH, palloc(), PG_GETARG_INT32, PG_RETURN_CSTRING, res, SECOND, snprintf, and YEAR.
void isoweek2date | ( | int | woy, |
int * | year, | ||
int * | mon, | ||
int * | mday | ||
) |
Definition at line 4444 of file timestamp.c.
References isoweek2j(), and j2date().
Referenced by do_to_timestamp(), timestamp_trunc(), and timestamptz_trunc_internal().
int isoweek2j | ( | int | year, |
int | week | ||
) |
Definition at line 4424 of file timestamp.c.
References date2j(), and j2day().
Referenced by date2isoyearday(), do_to_timestamp(), isoweek2date(), and isoweekdate2date().
void isoweekdate2date | ( | int | isoweek, |
int | wday, | ||
int * | year, | ||
int * | mon, | ||
int * | mday | ||
) |
Definition at line 4457 of file timestamp.c.
References isoweek2j(), and j2date().
Referenced by do_to_timestamp().
Definition at line 1989 of file timestamp.c.
References Interval::day, if(), Interval::month, MONTHS_PER_YEAR, pg_add_s64_overflow(), pg_mul_s64_overflow(), Interval::time, pg_itm::tm_hour, pg_itm::tm_mday, pg_itm::tm_min, pg_itm::tm_mon, pg_itm::tm_sec, pg_itm::tm_usec, pg_itm::tm_year, USECS_PER_HOUR, USECS_PER_MINUTE, and USECS_PER_SEC.
Referenced by interval_trunc(), timestamp_age(), and timestamptz_age().
Definition at line 2018 of file timestamp.c.
References Interval::day, if(), Interval::month, MONTHS_PER_YEAR, Interval::time, pg_itm_in::tm_mday, pg_itm_in::tm_mon, pg_itm_in::tm_usec, and pg_itm_in::tm_year.
Referenced by interval_in(), pg_timezone_abbrevs(), and pg_timezone_names().
Datum make_interval | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1491 of file timestamp.c.
References Interval::day, days, ereport, errcode(), errmsg(), ERROR, Interval::month, months, MONTHS_PER_YEAR, palloc(), PG_GETARG_FLOAT8, PG_GETARG_INT32, PG_RETURN_INTERVAL_P, SECS_PER_HOUR, SECS_PER_MINUTE, Interval::time, and USECS_PER_SEC.
Datum make_timestamp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 637 of file timestamp.c.
References make_timestamp_internal(), PG_GETARG_FLOAT8, PG_GETARG_INT32, and PG_RETURN_TIMESTAMP.
|
static |
Definition at line 555 of file timestamp.c.
References date2j(), DTK_DATE_M, ereport, errcode(), errmsg(), ERROR, float_time_overflows(), IS_VALID_JULIAN, IS_VALID_TIMESTAMP, MINS_PER_HOUR, POSTGRES_EPOCH_JDATE, SECS_PER_MINUTE, tm, pg_tm::tm_mday, pg_tm::tm_mon, pg_tm::tm_year, USECS_PER_DAY, USECS_PER_SEC, and ValidateDate().
Referenced by make_timestamp(), make_timestamptz(), and make_timestamptz_at_timezone().
Datum make_timestamptz | ( | PG_FUNCTION_ARGS | ) |
Definition at line 657 of file timestamp.c.
References make_timestamp_internal(), PG_GETARG_FLOAT8, PG_GETARG_INT32, PG_RETURN_TIMESTAMPTZ, and timestamp2timestamptz().
Datum make_timestamptz_at_timezone | ( | PG_FUNCTION_ARGS | ) |
Definition at line 678 of file timestamp.c.
References dt2local(), ereport, errcode(), errmsg(), ERROR, IS_VALID_TIMESTAMP, make_timestamp_internal(), parse_sane_timezone(), PG_GETARG_FLOAT8, PG_GETARG_INT32, PG_GETARG_TEXT_PP, PG_RETURN_TIMESTAMPTZ, and timestamp2tm().
Datum mul_d_interval | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3312 of file timestamp.c.
References DirectFunctionCall2, interval_mul(), and PG_GETARG_DATUM.
|
static |
Definition at line 4604 of file timestamp.c.
References DTK_CENTURY, DTK_DAY, DTK_DECADE, DTK_DOW, DTK_DOY, DTK_EPOCH, DTK_HOUR, DTK_ISODOW, DTK_ISOYEAR, DTK_JULIAN, DTK_MICROSEC, DTK_MILLENNIUM, DTK_MILLISEC, DTK_MINUTE, DTK_MONTH, DTK_QUARTER, DTK_SECOND, DTK_TZ, DTK_TZ_HOUR, DTK_TZ_MINUTE, DTK_WEEK, DTK_YEAR, ereport, errcode(), errmsg(), ERROR, format_type_be(), get_float8_infinity(), RESERV, generate_unaccent_rules::type, and UNITS.
Referenced by timestamp_part_common(), and timestamptz_part_common().
Datum now | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1538 of file timestamp.c.
References GetCurrentTransactionStartTimestamp(), and PG_RETURN_TIMESTAMPTZ.
Referenced by advanceConnectionState(), ApplyLauncherMain(), BackgroundWriterMain(), bbsink_copystream_archive_contents(), CalculateCopyStreamSleeptime(), CheckArchiveTimeout(), CheckpointerMain(), doLog(), doRetry(), drandom(), dumpTimestamp(), enable_timeout(), enable_timeout_after(), enable_timeout_at(), enable_timeout_every(), enable_timeouts(), executeMetaCommand(), flushAndSendFeedback(), GetSnapshotCurrentTimestamp(), handle_sig_alarm(), HandleCopyStream(), has_startup_progress_timeout_expired(), IsCheckpointOnSchedule(), LagTrackerRead(), launch_worker(), LockBufferForCleanup(), logicalrep_worker_launch(), LogicalRepApplyLoop(), LogRecoveryConflict(), maybe_start_bgworkers(), mxid_age(), OutputFsync(), PerformRadiusTransaction(), pg_time_now(), pg_time_now_lazy(), pg_timezone_abbrevs(), pgfdw_get_cleanup_result(), pgstat_report_archiver(), pgstat_report_stat(), pqSocketPoll(), pqTraceFormatTimestamp(), printProgressReport(), printVerboseErrorMessages(), process_syncing_tables_for_apply(), ProcessKeepaliveMsg(), ProcessStandbyReplyMessage(), processXactStats(), ProcSleep(), progress_report(), RequestXLogStreaming(), ResolveRecoveryConflictWithLock(), ResolveRecoveryConflictWithVirtualXIDs(), schedule_alarm(), send_feedback(), sendFeedback(), ServerLoop(), set_next_rotation_time(), StreamLogicalLog(), SysLoggerMain(), threadRun(), timetz_zone(), WaitForWALToBecomeAvailable(), WalRcvRunning(), WalRcvStreaming(), WalReceiverMain(), WalSndComputeSleeptime(), WalSndUpdateProgress(), WalSndWriteData(), xid_age(), XLogBackgroundFlush(), XLogWalRcvSendHSFeedback(), and XLogWalRcvSendReply().
Datum overlaps_timestamp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2523 of file timestamp.c.
References PG_ARGISNULL, PG_GETARG_DATUM, PG_RETURN_BOOL, PG_RETURN_NULL, TIMESTAMP_GT, and TIMESTAMP_LT.
Definition at line 471 of file timestamp.c.
References DecodeTimezone(), DecodeTimezoneAbbrev(), DetermineTimeZoneAbbrevOffset(), DetermineTimeZoneOffset(), downcase_truncate_identifier(), DTERR_BAD_FORMAT, DTERR_TZDISP_OVERFLOW, DTZ, DYNTZ, ereport, errcode(), errhint(), errmsg(), ERROR, pg_tzset(), text_to_cstring_buffer(), tm, generate_unaccent_rules::type, TZ, TZ_STRLEN_MAX, and val.
Referenced by make_timestamptz_at_timezone().
Datum pg_conf_load_time | ( | PG_FUNCTION_ARGS | ) |
Datum pg_postmaster_start_time | ( | PG_FUNCTION_ARGS | ) |
Timestamp SetEpochTimestamp | ( | void | ) |
Definition at line 2091 of file timestamp.c.
References GetEpochTime(), tm, and tm2timestamp().
Referenced by dttofmtasc_replace(), PGTYPEStimestamp_from_asc(), timestamp_in(), timestamp_part_common(), timestamptz_in(), and timestamptz_part_common().
Datum statement_timestamp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1544 of file timestamp.c.
References GetCurrentStatementStartTimestamp(), and PG_RETURN_TIMESTAMPTZ.
|
static |
Definition at line 2031 of file timestamp.c.
References MINS_PER_HOUR, SECS_PER_MINUTE, and USECS_PER_SEC.
Referenced by tm2timestamp().
TimestampTz time_t_to_timestamptz | ( | pg_time_t | tm | ) |
Definition at line 1726 of file timestamp.c.
References POSTGRES_EPOCH_JDATE, SECS_PER_DAY, tm, UNIX_EPOCH_JDATE, and USECS_PER_SEC.
Referenced by pg_control_checkpoint(), pg_control_system(), pg_ls_dir_files(), and pg_stat_file().
Datum timeofday | ( | PG_FUNCTION_ARGS | ) |
Definition at line 1620 of file timestamp.c.
References buf, cstring_to_text(), gettimeofday(), pg_localtime(), PG_RETURN_TEXT_P, pg_strftime(), session_timezone, and snprintf.
|
static |
Definition at line 5601 of file timestamp.c.
References timestamp2timestamptz_opt_overflow().
Referenced by make_timestamptz(), and timestamp_timestamptz().
TimestampTz timestamp2timestamptz_opt_overflow | ( | Timestamp | timestamp, |
int * | overflow | ||
) |
Definition at line 5549 of file timestamp.c.
References DetermineTimeZoneOffset(), dt2local(), ereport, errcode(), errmsg(), ERROR, IS_VALID_TIMESTAMP, MIN_TIMESTAMP, session_timezone, timestamp2tm(), TIMESTAMP_NOBEGIN, TIMESTAMP_NOEND, TIMESTAMP_NOT_FINITE, and tm.
Referenced by timestamp2timestamptz(), and timestamp_cmp_timestamptz_internal().
int timestamp2tm | ( | Timestamp | dt, |
int * | tzp, | ||
struct pg_tm * | tm, | ||
fsec_t * | fsec, | ||
const char ** | tzn, | ||
pg_tz * | attimezone | ||
) |
Definition at line 1816 of file timestamp.c.
References dt2time(), j2date(), pg_localtime(), POSTGRES_EPOCH_JDATE, SECS_PER_DAY, session_timezone, tm, pg_tm::tm_gmtoff, pg_tm::tm_hour, pg_tm::tm_isdst, pg_tm::tm_mday, pg_tm::tm_min, pg_tm::tm_mon, pg_tm::tm_sec, pg_tm::tm_year, pg_tm::tm_zone, TMODULO, UNIX_EPOCH_JDATE, USECS_PER_DAY, and USECS_PER_SEC.
Referenced by DetermineTimeZoneAbbrevOffsetTS(), GetCurrentTimeUsec(), JsonEncodeDateTime(), make_timestamptz_at_timezone(), map_sql_value_to_xml_value(), pg_timezone_names(), PGTYPEStimestamp_add_interval(), PGTYPEStimestamp_fmt_asc(), PGTYPEStimestamp_to_asc(), timestamp2timestamptz_opt_overflow(), timestamp_age(), timestamp_date(), timestamp_out(), timestamp_part_common(), timestamp_pl_interval(), timestamp_recv(), timestamp_time(), timestamp_to_char(), timestamp_trunc(), timestamp_zone(), timestamptz2timestamp(), timestamptz_age(), timestamptz_date(), timestamptz_out(), timestamptz_part_common(), timestamptz_pl_interval(), timestamptz_recv(), timestamptz_time(), timestamptz_timetz(), timestamptz_to_char(), timestamptz_to_str(), timestamptz_trunc_internal(), timestamptz_zone(), and timetz_zone().
Datum timestamp_age | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3631 of file timestamp.c.
References day_tab, ereport, errcode(), errmsg(), ERROR, HOURS_PER_DAY, isleap, itm2interval(), MINS_PER_HOUR, MONTHS_PER_YEAR, palloc(), PG_GETARG_TIMESTAMP, PG_RETURN_INTERVAL_P, SECS_PER_MINUTE, timestamp2tm(), tm, pg_tm::tm_hour, pg_tm::tm_mday, pg_tm::tm_min, pg_tm::tm_mon, pg_tm::tm_sec, pg_tm::tm_year, and USECS_PER_SEC.
Datum timestamp_bin | ( | PG_FUNCTION_ARGS | ) |
Definition at line 3875 of file timestamp.c.
References Interval::day, ereport, errcode(), errmsg(), ERROR, Interval::month, PG_GETARG_INTERVAL_P, PG_GETARG_TIMESTAMP, PG_RETURN_TIMESTAMP, Interval::time, TIMESTAMP_NOT_FINITE, and USECS_PER_DAY.
Datum timestamp_cmp | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2171 of file timestamp.c.
References PG_GETARG_TIMESTAMP, PG_RETURN_INT32, and timestamp_cmp_internal().
Referenced by compareDatetime(), and gbt_tskey_cmp().
Definition at line 2111 of file timestamp.c.
Referenced by date_cmp_timestamp_internal(), generate_series_timestamp(), generate_series_timestamptz(), timestamp_cmp(), timestamp_eq(), timestamp_fastcmp(), timestamp_ge(), timestamp_gt(), timestamp_larger(), timestamp_le(), timestamp_lt(), timestamp_ne(), and timestamp_smaller().
Datum timestamp_cmp_timestamptz | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2301 of file timestamp.c.
References PG_GETARG_TIMESTAMP, PG_GETARG_TIMESTAMPTZ, PG_RETURN_INT32, and timestamp_cmp_timestamptz_internal().
int32 timestamp_cmp_timestamptz_internal | ( | Timestamp | timestampVal, |
TimestampTz | dt2 | ||
) |
Definition at line 2226 of file timestamp.c.
References timestamp2timestamptz_opt_overflow(), TIMESTAMP_IS_NOBEGIN, TIMESTAMP_IS_NOEND, and timestamptz_cmp_internal.
Referenced by cmpTimestampToTimestampTz(), timestamp_cmp_timestamptz(), timestamp_eq_timestamptz(), timestamp_ge_timestamptz(), timestamp_gt_timestamptz(), timestamp_le_timestamptz(), timestamp_lt_timestamptz(), timestamp_ne_timestamptz(), timestamptz_cmp_timestamp(), timestamptz_eq_timestamp(), timestamptz_ge_timestamp(), timestamptz_gt_timestamp(), timestamptz_le_timestamp(), timestamptz_lt_timestamp(), and timestamptz_ne_timestamp().
Datum timestamp_eq | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2117 of file timestamp.c.
References PG_GETARG_TIMESTAMP, PG_RETURN_BOOL, and timestamp_cmp_internal().
Referenced by gbt_tseq().
Datum timestamp_eq_timestamptz | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2247 of file timestamp.c.
References PG_GETARG_TIMESTAMP, PG_GETARG_TIMESTAMPTZ, PG_RETURN_BOOL, and timestamp_cmp_timestamptz_internal().
|
static |
Definition at line 2182 of file timestamp.c.
References a, b, DatumGetTimestamp, timestamp_cmp_internal(), x, and y.
Referenced by timestamp_sortsupport().
Datum timestamp_finite | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2050 of file timestamp.c.
References PG_GETARG_TIMESTAMP, PG_RETURN_BOOL, and TIMESTAMP_NOT_FINITE.
Datum timestamp_ge | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2162 of file timestamp.c.
References PG_GETARG_TIMESTAMP, PG_RETURN_BOOL, and timestamp_cmp_internal().
Referenced by gbt_tsge().
Datum timestamp_ge_timestamptz | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2292 of file timestamp.c.
References PG_GETARG_TIMESTAMP, PG_GETARG_TIMESTAMPTZ, PG_RETURN_BOOL, and timestamp_cmp_timestamptz_internal().
Datum timestamp_gt | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2144 of file timestamp.c.
References PG_GETARG_TIMESTAMP, PG_RETURN_BOOL, and timestamp_cmp_internal().
Referenced by gbt_tsgt().
Datum timestamp_gt_timestamptz | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2274 of file timestamp.c.
References PG_GETARG_TIMESTAMP, PG_GETARG_TIMESTAMPTZ, PG_RETURN_BOOL, and timestamp_cmp_timestamptz_internal().
Datum timestamp_hash | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2210 of file timestamp.c.
References hashint8().
Datum timestamp_hash_extended | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2216 of file timestamp.c.
References hashint8extended().
Datum timestamp_in | ( | PG_FUNCTION_ARGS | ) |
Definition at line 146 of file timestamp.c.
References AdjustTimestampForTypmod(), DateTimeParseError(), DecodeDateTime(), DTK_DATE, DTK_EARLY, DTK_EPOCH, DTK_LATE, elog, ereport, errcode(), errmsg(), ERROR, MAXDATEFIELDS, MAXDATELEN, ParseDateTime(), PG_GETARG_CSTRING, PG_GETARG_INT32, PG_GETARG_OID, PG_RETURN_TIMESTAMP, SetEpochTimestamp(), generate_unaccent_rules::str, TIMESTAMP_NOBEGIN, TIMESTAMP_NOEND, tm, and tm2timestamp().
Referenced by moddatetime().
Datum timestamp_izone | ( | PG_FUNCTION_ARGS | ) |
Definition at line 5481 of file timestamp.c.
References DatumGetCString, DirectFunctionCall1, dt2local(), ereport, errcode(), errmsg(), ERROR, interval_out(), IS_VALID_TIMESTAMP, PG_GETARG_INTERVAL_P, PG_GETARG_TIMESTAMP, PG_RETURN_TIMESTAMPTZ, PointerGetDatum, TIMESTAMP_NOT_FINITE, and USECS_PER_SEC.
Datum timestamp_larger | ( | PG_FUNCTION_ARGS | ) |
Definition at line 2663 of file timestamp.c.