1
# This file makes most of the thread related macros look like
2
# functions, which they really were, if possible easy.
4
# default thread implementation
7
<NAME>G_THREADS_IMPL_POSIX</NAME>
8
#define G_THREADS_IMPL_POSIX
12
<NAME>G_THREADS_IMPL_NONE</NAME>
13
#define G_THREADS_IMPL_NONE
19
<NAME>g_thread_supported</NAME>
20
<RETURNS>gboolean</RETURNS>
26
<NAME>g_mutex_new</NAME>
27
<RETURNS>GMutex *</RETURNS>
31
<NAME>g_mutex_lock</NAME>
32
<RETURNS>void</RETURNS>
37
<NAME>g_mutex_trylock</NAME>
38
<RETURNS>gboolean</RETURNS>
43
<NAME>g_mutex_unlock</NAME>
44
<RETURNS>void</RETURNS>
49
<NAME>g_mutex_free</NAME>
50
<RETURNS>void</RETURNS>
57
<NAME>GStaticMutex</NAME>
61
<NAME>G_STATIC_MUTEX_INIT</NAME>
62
#define G_STATIC_MUTEX_INIT
66
<NAME>g_static_mutex_lock</NAME>
67
<RETURNS>void</RETURNS>
72
<NAME>g_static_mutex_trylock</NAME>
73
<RETURNS>gboolean</RETURNS>
78
<NAME>g_static_mutex_unlock</NAME>
79
<RETURNS>void</RETURNS>
84
<NAME>g_static_mutex_get_mutex</NAME>
85
<RETURNS>GMutex *</RETURNS>
92
<NAME>g_thread_yield</NAME>
93
<RETURNS>void</RETURNS>
97
<NAME>g_thread_create</NAME>
98
<RETURNS>GThread *</RETURNS>
108
<NAME>G_LOCK_DEFINE</NAME>
109
#define G_LOCK_DEFINE(name)
113
<NAME>G_LOCK_DEFINE_STATIC</NAME>
114
#define G_LOCK_DEFINE_STATIC(name)
118
<NAME>G_LOCK_EXTERN</NAME>
119
#define G_LOCK_EXTERN(name)
128
<NAME>G_UNLOCK</NAME>
129
#define G_UNLOCK(name)
133
<NAME>G_TRYLOCK</NAME>
134
#define G_TRYLOCK(name)
140
<NAME>g_cond_new</NAME>
141
<RETURNS>GCond*</RETURNS>
145
<NAME>g_cond_signal</NAME>
146
<RETURNS>void</RETURNS>
151
<NAME>g_cond_broadcast</NAME>
152
<RETURNS>void</RETURNS>
157
<NAME>g_cond_wait</NAME>
158
<RETURNS>void</RETURNS>
159
GCond *cond, GMutex *mutex
163
<NAME>g_cond_timed_wait</NAME>
164
<RETURNS>gboolean</RETURNS>
165
GCond *cond, GMutex *mutex, GTimeVal *abs_time
169
<NAME>g_cond_free</NAME>
170
<RETURNS>void</RETURNS>
177
<NAME>g_private_new</NAME>
178
<RETURNS>GPrivate*</RETURNS>
179
GDestroyNotify destructor
183
<NAME>g_private_get</NAME>
184
<RETURNS>gpointer</RETURNS>
185
GPrivate *private_key
189
<NAME>g_private_set</NAME>
190
<RETURNS>void</RETURNS>
191
GPrivate *private_key, gpointer data
197
<NAME>G_STATIC_PRIVATE_INIT</NAME>
198
#define G_STATIC_PRIVATE_INIT
201
# Definitions for different operating systems
204
<NAME>G_OS_UNIX</NAME>
209
<NAME>G_OS_WIN32</NAME>
214
<NAME>G_OS_BEOS</NAME>
221
<NAME>g_ascii_isalnum</NAME>
222
<RETURNS>gboolean</RETURNS>
227
<NAME>g_ascii_isalpha</NAME>
228
<RETURNS>gboolean</RETURNS>
233
<NAME>g_ascii_iscntrl</NAME>
234
<RETURNS>gboolean</RETURNS>
239
<NAME>g_ascii_isdigit</NAME>
240
<RETURNS>gboolean</RETURNS>
245
<NAME>g_ascii_isgraph</NAME>
246
<RETURNS>gboolean</RETURNS>
251
<NAME>g_ascii_islower</NAME>
252
<RETURNS>gboolean</RETURNS>
257
<NAME>g_ascii_isprint</NAME>
258
<RETURNS>gboolean</RETURNS>
263
<NAME>g_ascii_ispunct</NAME>
264
<RETURNS>gboolean</RETURNS>
269
<NAME>g_ascii_isspace</NAME>
270
<RETURNS>gboolean</RETURNS>
275
<NAME>g_ascii_isupper</NAME>
276
<RETURNS>gboolean</RETURNS>
281
<NAME>g_ascii_isxdigit</NAME>
282
<RETURNS>gboolean</RETURNS>
289
<NAME>g_atomic_int_inc</NAME>
290
<RETURNS>void</RETURNS>
295
<NAME>g_atomic_int_dec_and_test</NAME>
296
<RETURNS>gboolean</RETURNS>
305
<NAME>G_VA_COPY</NAME>
306
#define G_VA_COPY(ap1,ap2)