Ruby 3.5.0dev (2025-01-10 revision 5fab31b15e32622c4b71d1d347a41937e9f9c212)
time.h
1#ifndef INTERNAL_TIME_H /*-*-C-*-vi:se ft=c:*/
2#define INTERNAL_TIME_H
11#include "ruby/internal/config.h" /* for SIGNEDNESS_OF_TIME_T */
12#include "internal/bits.h" /* for SIGNED_INTEGER_MAX */
13#include "ruby/ruby.h" /* for VALUE */
14
15#if SIGNEDNESS_OF_TIME_T < 0 /* signed */
16# define TIMET_MAX SIGNED_INTEGER_MAX(time_t)
17# define TIMET_MIN SIGNED_INTEGER_MIN(time_t)
18#elif SIGNEDNESS_OF_TIME_T > 0 /* unsigned */
19# define TIMET_MAX UNSIGNED_INTEGER_MAX(time_t)
20# define TIMET_MIN ((time_t)0)
21#endif
22
23struct timeval; /* <- in <sys/time.h> or <winsock2.h> */
24
25/* time.c */
27
28RUBY_SYMBOL_EXPORT_BEGIN
29/* time.c (export) */
30void ruby_reset_leap_second_info(void);
31void ruby_reset_timezone(void);
32RUBY_SYMBOL_EXPORT_END
33
34#endif /* INTERNAL_TIME_H */
struct timeval rb_time_timeval(VALUE time)
Converts an instance of rb_cTime to a struct timeval that represents the identical point of time.
Definition time.c:2898
uintptr_t VALUE
Type that represents a Ruby object.
Definition value.h:40